MVC MVP MVVM 图示
MVC(Model、View、Controller)
- 视图(View):用户界面
- 控制器(Controller):业务逻辑
- 模型(Model):数据保存
通信方式
- View 传送指令到 Controller
- Controller 完成业务逻辑后,要求 Model 改变状态
- Model 将新的数据发送到 View,用户得到反馈
通信都是单向的
互动模式
互动模式(models of interaction),指使用电脑时人机互动的界面。好的界面应该是能够有效地让互动顺利进行。互动系统是要让使用者可以在已存在的应用范围中完成他们的目的。系统使用的语言是核语言(core language),使用者使用的语言是任务语言(task language)。
摘自维基百科
接受用户指令时,MVC可分为两种模式。一种是通过View接受指令,传递给Controller。
另一种是直接通过controller接受指令。
MVP(Model、View、Presenter)
MVP 模式将 Controller 改名为 Presenter,同时改变了通信方向。
各部分之间的通信,是双向的。
View 与 Model 不发生联系,都通过 Presenter 传递。
View 非常薄,不部署任何业务逻辑,称为”被动视图”(Passive View),即没有任何主动性,而 Presenter非常厚,所有逻辑都部署在那里。
MVVM(Model、View、ViewModel)
MVVM 模式将 Presenter 改名为 ViewModel。
唯一的区别是,它采用双向绑定(data-binding):View的变动,自动反映在 ViewModel,反之亦然。
引用: