Let assume that we have a system in which the users can chat with each other and we are working on the backend.
We can name the service which fetches the chats in one of the following ways:
If we use the second version, is it a bad practice or it is ok in your opinion ? The idea is that such an approach is repeated anywhere, also in variable names.
The variable holding that service will be named userChatsService and so on. Another variable may be called userPhotosService etc, instead of just photosService.
Also the folder structure follows such conventions, such as
This way of over specifying the variable names is done with the intent to allow the system to be extended later, even if there is no information about this extension now. (Ex: a chat system between merchants might be coming later).
Is this way of thinking a premature optimization, or too much optimistic thinking, or is it a good practice ?