android中的MVC,MVP和MVVM模式简单总结

本文简单总结了Android开发中的三种常见设计模式:MVC、MVP和MVVM。在MVC中,View由xml布局文件表示,Model为实体模型,Controller处理业务逻辑和UI。MVP模式中,View包括Activity和xml,Model不变,Presenter作为View和Model的桥梁,但可能导致代码臃肿。MVVM模式下,View和Model保持不变,ViewModel负责交互和业务逻辑,利用数据绑定等技术提高开发效率,但也存在调试困难和内存消耗等问题。
摘要由CSDN通过智能技术生成

1.MVC

View:对应于xml布局文件
Model:实体模型
Controllor:对应于Activity业务逻辑,数据处理和UI处理

xml的view功能太过于弱化,导致actvity里面即处理业务逻辑,又处理view。这样activity的类的代码比较长。



2.MVP

View:对应于Activity和xml,负责View的绘制以及与用户交互
Model:依然是实体模型
Presenter: 负责完成View于Model间的交互和业务逻辑

用得比较多,把视图操作和业务逻辑分开来。复杂的业务同时会导致presenter层太大,代码臃肿的问题。通过UI事件的触发对数据进行处理。activity需要编写大量的事件。通过事件调用presenter的业务处理方法。UI改变后牵扯的逻辑耦合度太高。View和Presenter只是互相持有引用并互相做回调,代码不美观。


3.MVVM

View:对应于Activity和xml,负责View的绘制以及与用户交互
Model:实体模型
ViewModel:负责完成View于Model间的交互,负责业务逻辑

数据绑定(Data Binding)、依赖属性(Dependency Property)、命令(Command)、路由事件(Routed Event)


缺点:

1.数据绑定使得bug很难被调试

2.如果项目过大,数据绑定需要更大的内存


参考网址

http://www.jianshu.com/p/2fc41a310f79



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值