MVC MVP MVVP

·  阅读 261

MVC: 模型层(Model),负责处理数据逻辑,一般包含数据库、本地数据、网络获取的Bean等组成。

视图层(View),负责处理视图显示,一般由XML布局承担此责任,基本组件和自定义View等充当视图层的补充元素。

控制层(Control),负责处理业务逻辑,一般由Activity、Fragment承担此责任。

MVP: 模型层(Model),负责处理数据逻辑,一般包含数据库、本地数据、网络获取的Bean等组成。

视图层(View),负责处理视图显示,一般由XML布局承担此责任,基本组件和自定义View等充当视图层的补充元素,Activity、Fragment充当视图层和控制层的粘合剂。

??(Presenter),负责处理业务逻辑,由从原来MVC控制层中抽取出来的Presenter充当控制层(Presenter)。

MVVM: 模型层(Model),负责处理数据逻辑,一般包含数据库、本地数据、网络获取的Bean等组成。

视图层(View),负责处理视图显示,一般由XML布局承担此责任,基本组件和自定义View等充当视图层的补充元素,Activity、Fragment主要负责视图层绑定事件触发,熟练的话也可以直接在XML中绑定触发事件。

??(ViewModel),通过数据绑定连接View和Model(这里由ViewData充当视图模型被绑定到视图上)实现视图层和模型层的解藕,事件触发后通过ViewModel处理业务逻辑,并且通过数据驱动的方式修改视图数据,而达到间接修改视图的功能。注意:ViewModel一定不能持有视图层的引用,同样不能持有Context的引用!不然还是MVP!

摘选自 链接:www.jianshu.com/p/ebbc224ea…

分类:
Android
标签:
分类:
Android
标签:
收藏成功!
已添加到「」, 点击更改