Well I am considering working on an ORM system for my script, but there are some tough decision decisions to make. In Matt Zandstra's book PHP Object, Patterns and Practices, he introduces several possible database design patterns. Among them the most recommended ones are data mapper and identity object, I still have a few confusions though.
- What does a Domain Model fit in the world of MVC? Is it pretty much a Model? Or is it just some kind of strongly typed Raw Data with no functionalities?
- Are Domain Models supposed to keep a reference of Mapper object? Or are they only supposed to hold data?
- What is the difference between a Domain Model Object and an Identity Object? Is Identity Object the same as Doctrine/Propel's Entity Object?
Sorry for asking this many questions at the same time, I just really hope to get a complete understanding of how these are supposed to work. It seems that Symfony has an ORM system inside its MVC architecture design, so apparently ORM and MVC aint incompatible with each other. Right?