mvc mvp mvvm区别

Posted 郭康勋kawhi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mvc mvp mvvm区别相关的知识,希望对你有一定的参考价值。

1 mvc是有视图(view),控制器(controller),模型(model)组成

                                      view(用户界面)

             controller (业务逻辑)            model(数据存储)

接受指令的方式:

第一种: view接收指令 传送给controller,完成业务逻辑后,要求model状态改变,model将新的数据传给view,用户得到反馈

第二种: controller直接接受指令,后面通信和第一种一样

 

相同点:通信是单向的

 

2mvp, controller变成presenter,通信方向相反,model不与view直接交流

 

                 view(视图)

    presenter()          model(模型)

 

View 非常薄,不部署任何业务逻辑,称为"被动视图"(Passive View),即没有任何主动性,而 Presenter非常厚,所有逻辑都部署在那里。

 

基本思想有相通的地方:Controller/Presenter负责逻辑的处理,Model提供数据,View负责显示。

 

3 mvvm模式, presenter变成viewModel。 区别是数据双向绑定,view变化,实时反映在viewmodel

以上是关于mvc mvp mvvm区别的主要内容,如果未能解决你的问题,请参考以下文章

MVP MVC 和 MVVM 的区别

MVC和MVP的区别

mvc mvp mvvm区别

Android中MVC、MVP、MVVM的区别与使用

几张图解释mvc,mvp和mvvm的区别

MVC / MVP / MVVM 到底是啥?