MVC(Model-View-Controller)
一种架构模式,设计程序的架构,属于编程的方法论。
图示
用户(view)——通知——>中间层(controller)——调用——>数据层(Model)
详细说明
视图层(view),用户所看到的东西,程序的外壳
中间层(controller),起连接视图层和数据功能层的作用,处理消息,根据视图层的指令拿到数据层的数据进行相应的操作并更新视图层。
数据功能层(model),存放数据,底层,访问数据
优点
- 使程序的某些部分可以复用,减少代码冗余
- 使程序低耦合,view层和model层之间是独立,自身修改不会影响对象内部逻辑
- 将ui试图层和业务逻辑分开来,约定好对外接口后可独立开发,提高开发效率
MVVM(Model-View-ViewModel)
模型-视图-视图模型,是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开
前端MVVM
Model:数据请求,数据管理,数据逻辑,数据存储,技术是AJAX, Local storage等;
View:用户界面,HTML渲染;
ViewModel:View可以通过事件绑定Model,Model可以通过数据绑定View,通过ViewMode可以实现数据和视图的完全分离。