MVC, MVP и MVVM что общего и в чем различия

MVC http://ru.wikipedia.org/wiki/Model-View-Controller

MVP (Model-View-Presenter) http://ru.wikipedia.org/wiki/Model-View-Presenter

MVVM (Model-View-ViewModel) http://ru.wikipedia.org/wiki/Model-View-ViewModel

http://habrahabr.ru/post/124731/


MVC - пассивная и активная модель


  1. Пассивная модель — модель не имеет никаких способов воздействовать на представление или контроллер, и используется ими в качестве источника данных для отображения. Все изменения модели отслеживаются контроллером и он же отвечает за перерисовку представления, если это необходимо. Такая модель чаще используется в структурном программировании, так как в этом случае модель представляет просто структуру данных, без методов их обрабатывающих.
  2. Активная модель — модель оповещает представление о том, что в ней произошли изменения, а представления, которые заинтересованы в оповещении, подписываются на эти сообщения. Это позволяет сохранить независимость модели как от контроллера, так и от представления.


Mvc, mvp and mvvm: A comparison of architectural patterns
http://www.slideshare.net/ivandyachenko/mvc-mvp-and-mvvm-a-comparison-of-architectural-patterns