Android MVC ,MVP,MVVM 常见架构浅谈

 简述:其实任何架构的目的都是:提高开发效率,降低维护成本;

MVC:
Model: 负责处理数据逻辑,一般包括操作数据库,耗时网络操作等组成;
View:负责处理视图; 一般是xml布局;
Control: 负责处理业务逻辑, 一般为 Activity,Fragment 承担这个事情;

MVP
Model: 负责处理数据逻辑,一般包括操作数据库,耗时网络操作等组成;

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

Presenter: 负责处理业务逻辑,由从原来的 MVC 的 C层抽取出来的Presenter 充当控制层;

MVVM

Model:负责处理数据逻辑,一般包括操作数据库,耗时网络操作等组成;

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

ViewModel: 通过数据绑定连接View 和Model 实现视图层和模型层解耦,事件触发后通过ViewModel处理业务逻辑,并且通过数据驱动的方式修改视图内容,而达到间接修改视图的功能;
tip:ViewModel 一定不能持有视图层的引用,同样不能持有Context的引用!不然还是MVP!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值