MVVM是Model-View-ViewModel的简写。 MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对客户日益复杂的需求变化。
MVC架构:
View:对应于布局文件
Model:业务逻辑和实体模型
Controllor:对应于Activity
MVVM的优点
低耦合 。 视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的"View"上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。
可重用性 。 你可以把一些视图逻辑放在一个ViewModel里面,让很多view重用这段视图逻辑。
独立开发 。 开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计。
可测试 。 界面素来是比较难于测试的,而现在测试可以针对ViewModel来写。
在MVC中 View可以与Model直接交互。 Controller是基于行为的,并且可以被多个View共享。 可以负责决定显示哪个View。