主页 > 经验 > mvc mvp mvvm的区别

mvc mvp mvvm的区别

mvp中View并不直接使用Model,而在mvc中,View是可以直接访问Model的,mvvm则采用的是双向绑定,View的变动,自动反映在View Model,反之亦然。
1.MVC:包括视图、控制器以及模型。视图传输指令到控制器,控制器完成业务逻辑后要求模型改变状态,模型将新的数据发送给视图,然后用户得到反馈,这样就形成了一个循环过程。
2.MVP:它将控制器修改为Presenter,视图与Presenter、Presenter与模型之间是双向传输的,但是模型与视图之间没有传输,它们两者通过Presenter进行传输。
3.MVVM:它将Presenter修改为ViewModel,并且ViewModel与视图之间变成了一种类似的模块,视图的变动将会自动映射在ViewModel上,然后与模型之间进行双向传输。
资料拓展:MVC是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面以及用户交互的同时,不需要重新编写业务逻辑。
MVP是从经典的MVC模式中演变而来的,Presenter负责逻辑的处理,Model提供数据,View负责显示。
MVVM就是将其中的View的状态和行为抽象化,让我们把试图UI和业务逻辑分开。

赞助商链接