Good article Fabien.
Renato Oliveira

You’re right. If you have an object already in Production, deploying it with DCP will just flag the object and fields as being part of the package, but no data will be lost.

Also, if you delete a field between 2 versions of a package, data won’t be lost either because the field will just be marked as deletable:

I haven’t been through this use case in a real life scenario for now, but at least it’s the way it’s described in the documentation :)