MVX模式是什么
最早是Java领域的MVC,然后是MVP,及现在成熟的MVVW。
MVC
MVC是最广泛的软件架构之一,一般MVC分为:
Model(模型)、Controller(控制器)、view(视图)。
它的主要是分层,将彼此的职责分开。
关系
view一般是通过controller来和model进行联系;controller是view和model的协调者;view与model不直接联系;用户通过controller来操作model以达到view的变化。
MVP
MVP是从MVC演变而来的,controller/presenter 负责逻辑处理,model提供数据,view负责显示。
MVP模式的代表框架:Riot,js。
presenter完全把view和model进行分离,而presenter与具体的view没有直接的关系而是通过定义好的接口进行交互,从而使得在变更view的时候可以保持presenter不变。
MVVM
相比浅两种模式,MVVM只是把MVC的controller和MVP的presenter改成了view-model。view的更新会自动更新到view-model,view-model的更新也会自动更新到view上显示。
MVVM的代表框架有:Knokout、Ember.js、Augular.js及vue.js。