I am in process of planning web application by following the best practices and approaches of software development. I am building this application using zend framework 2 and going through its documentation and best practices of building applications through zend framework 2 and MVC patterns.
Right now I am confused about where to keep my model layers. So far all the applications I have developed using Zend I used to keep my model layers in application module because I think models are not related to single module and a single module may communicate with multiple models. Also in Zf2 modules gets loaded only when it is requested except the Application module which loads with every request despite which module is requested. If I place my models in the specific modules and load them in the service config of there relative modules. I will not be able to use them in other modules.
So what should I do?