Difference between v3 and v4

Hello, I have a few questions to confirm or improve my understanding and perhaps that of others.

1: On version v3 on the findOne of the service, for example, you could directly do a where in it, but on v4 only id is taken into account, so you have to go through strapi.db.query now if you want to do that , that’s right, isn’t it?

2: For a create if we create directly with the relations, we did it directly with the service but in the v4 version you have to add populate, and the same for the finds which before had the relations directly, we have to add populate.

3: I would like to know how to sanitizeEntity from v3 on v4. After I noticed that the private fields were not returned but hey I ask anyway.

Thanks in advance friends.