android的mvc学习

参考:https://blog.csdn.net/feiduclear_up/article/details/46363207 , 有源码,可以直接看。

android的mvc设计模式,与spring的mvc设计模式有点区别。

相对spring来说,mvc的设计很清晰明了,controller解析url地址,根据url地址的不一样解析为对应的mode,然后返回对应的view,这样MVC的框架就很清晰了。

对应Android的mvc,就有点琢磨不透了,Activity和Layout的关系,使其很难划分controller,mode和view,目前比较好的划分是将Layout划分为view,Activity划分为controller,另外新建一个class为mode(主要处理数据库存取操作,网络操作,复杂的算法,耗时的任务等)。这样的划分也很好理解,用户点击手机屏幕不同的按钮,Activity监听到不同的点击事件,处理事件对应的mode,在mode处理完后,再将数据返回到Activity中,而activity在将mode返回的数据显示到Layout中。这就是Android的MVC的流程,但是,Activity和Layout的耦合性还是很大,这个因为Layout要依赖Activity。 (不知道我这样的理解对不对,暂时就这么写吧,后面不对再修改。)

MVC的问题:controller的职责明显变的很多,容易照成controller的臃肿。

与MVP的区别

在MVP中,mode和view是不能直接交互的,但是,在MVC中是可以的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值