1.MVVM与MVC模式
- MVC: MVC是应用最广泛的软件架构之一,一般
MVC
分为:Model(模型)
,View(视图)
,Controller(控制器)
。 这主要是基于分层的目的,让彼此的职责分开.View
一般用过Controller
来和Model
进行联系。Controller
是Model
和View
的协调者,View
和Model
不直接联系。基本都是单向联系。
1.View传送指令到Controller。
2.Controller完成业务逻辑后改变Model状态。
3.Model将新的数据发送至View,用户得到反馈。
-
MVVM:
MVVM
是把MVC
中的Controller
改变成了ViewModel
。View
的变化会自动更新到ViewModel
,ViewModel
的变化也会自动同步到View上
显示,通过数据来显示视图层。
2.MVVM模式的优点以及与MVC模式的区别
-
MVVM模式的优点:
- 低耦合:View可以独立于Model变化和修改,一个ViewModel可以绑定到不同的View上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。
- 可重用性: 可以把一些视图逻辑放在一个ViewModel里面,让很多View重用这段视图逻辑。
- 独立开发: 开发人员可以专注于业务逻辑和数据的开发,设计人员可以专注于页面的设计。
-
MVVM和MVC的区别:
- MVC中Controller演变成MVVM中的ViewModel
- MVVM通过数据来显示视图层而不是节点操作
- MVVM主要解决了MVC中大量的dom操作使页面渲染性能降低,加载速度变慢,影响用户体验