浅谈android应用之MVC & MVP

1. 前言

更多内容请查看android生态之应用篇

这边首先需要说明的学习MVC与MVP的必要性,以下皆为个人理解,仁者见仁智者见智:
因为MVC与MVP是开发框架会比较常见的两种开发架构,通常选择其中之一作为开发架构,并且它还通常结合多种设计模式。开发架构与设计模式两者协同组合成高可靠,高性能,高安全,并且可持续维护的框架。

这里不往下展开了讲,可以根据自己的理解去设计属于自己的框架。这篇文章主要讲的依旧是MVC以及MVP的理论相关的知识,尽量讲的比较简单易懂。

2. MVC

MVC架构是Model,View,Controller的首字母的集合体。我们可能最开始写android应用的时候接触最多的就是这种开发架构,当时大家可能已经在用了,只是不知道这种开发模式其实就是用了MVC。

MVC很简单,就是activity既作为view也作为了controller,这也就说明了activity它既负责view的显示,也负责控制model数据的操作,也负责对接收到的各种事件的处理,这种开发架构对于新手来说会比较好理解,使用比较方便。

但这种开发架构有一个最大的问题就是如果项目稍微复杂一些,就会导致activity的代码会非常冗杂,可能开发者自己都不愿意接下去去开发了,更别谈后期迭代维护了。

这种开发架构适合的是写demo快速验证的场景,正常线上开发并不会使用。

因为这个确定,后面就引入了另外一种比较规范的开发架构:MVP,这也是我下面将要说的。

3. MVP

这个图就比较形象了:
在这里插入图片描述
MVP是Model,View,Presenter的首字母缩写。与MVC架构最大不同之处是以Presenter层代替了Controller层。有了Presenter,Model,View完全解耦合,activity的话就只负责显示view,model的话将会通过presenter告诉activity。

通过这个种方式的话,大大提高了代码的可读性,以及后期代码的可维护性。

4. 代码demo

MVC这边不作示例,也不需要更多的研究,MVP的话可以参考网上的示例,入手比较简单,难点在于结合多种设计模式设计框架这一步。

5. 后记

写的比较简单了,如有疑问,可在评论区留言。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值