Well in my opinion in Mendix, starting with a properly defined Domain model can save a lot of hassle. Because changing database relations at a later stage can be quite tricky. Requiring you to build microflows to re-connect entities over newly made associations for example. Which ofcourse can be done quite fast but still can be annoying.
My advice regarding going into theory first and then build. Is just start building. Mendix is fast and you should fail a few times to learn the way the platform works. Making these mistakes will give you knowledge you won't get in a book. Learn how your database is manipulated by your domain model changes. You can easily see what is happening to the data when you use the Console view > Advanced > Start built-in database viewer
As for books you could pick up:
Domain driven design by Eric Evans is not really Mendix specific but can be a good starting point for learning how to translate real life scenarios and software requirements to a domain model. Keep in mind that the book is boring to read.
Regarding Mendix specific reads, honestly there are no real books written yet, if any at all ;] So I guess it is just best to start reading the developer blog posts, and taking a look at the AppStore Modules to see how things have been implemented.
Other than that learning principles like database normalization can be practical I guess.