什么是MVC(Model-View-Controller)
它是最常见的软件架构之一,它的意思是,软件可以分为三个部分
-1、视图(View) 即用户界面
-2、控制器(Controller) 即业务逻辑
-3、模型(Model) 即数据保存
它们之间的通讯方式:
1、View将指令传到Controller
2、Controller完成业务逻辑后,要求Model改变状态
3、Model将新的数据发送到View,最终用户得到反馈
特点:
所用的通信都是单向的
当用户接受指令时,MVC可以分为两种方式:
1、一种通过View接受指令,传递给Controller
2、另一种直接通过Controller接受指令
什么是MVP(Model-View-Presenter)
MVP模式下将Controller改名为Presenter,同时改变了通信的方向
1、各部分之间的通信都为双向
2、View与Model不发生联系,全部通过Presenter传递
3、View不部署任何任务逻辑,称为“被动视图”,不存在任何主动性,而所有逻辑都部署在Presenter中
什么是MVVM
MVVM将Presenter改名为ViewModel,大体上与MVP模式完全一致
区别:
采用双向绑定将View的变动自动反映在ViewModel,反之则一样,Angular采用这种模式