mvc、mvp、mvvm模式分析

mvc、mvp、mvvm这几种设计模式是目前比较流行的架构模式。mvvm模式是在mvp模式改造而来,mvp模式又是mvc模式的基础上改造来的。

1、mvc(model、view、controller)

首先看下我画的草图,如下:

mvc、mvp、mvvm模式分析

流程:

(1)view:视图层,发出请求给controller,要求获取展示数据。

(2)controller:控制层,接受请求,做一些业务逻辑处理。

(3)model:模型层,将数据发送个view,view展示数据。


2、mvp(model、view、presenter)

mvc、mvp、mvvm模式分析

之前的mvc改了c为p,成为mvp模式。这种新模式改变了mvc以前的通信方向,view(视图)和model(模型)不发生直接的关系,而是通过presenter这个中间人来把model绑定到view上。当model发生改变是,view上的数据也会自动改变。


3、mvvm(Model、View、ViewModel)

mvc、mvp、mvvm模式分析

之前的mvp改了p为vm,成了mvvm模式。和mvp类似,不同之处就是它通过ViewModel实现了view和model的双向绑定。当model发生变化,view会变,当view发生改变时,model也会改变。