Good morning, this cannot be answered in a single response. I would recommend going through some Learning Path (and/or courses) and in the documentation you can also find useful guidelines.
First would be the Rapid Developer Online Learning Path or look for an instructor lead training.
After you've covered the basics (and got your Rapid Certificate), I can advise you to look at the intermediate level domain modeling learning path.
Enjoy your journey
Hi Gain,
You can refer the below documentation to know about the best practices to be followed for Domain Model
https://docs.mendix.com/refguide/dev-best-practices/#32-domain-model