MVP架构浅析
来源:互联网 发布:java反射作用 编辑:程序博客网 时间:2024/06/11 19:14
MVP是从经典的模式MVC演变而来,他们的思路有相似的地方,如:Controller/Presenter负责逻辑的处理,Model负责提供数据,View负责显示。作为一种新的衍生模式,MVP和MVC有着一个重大的区别:在MVP中View并不直接与Model交互,他们之间的通信是通过Presenter来进行的,所有的交互都发生在Presenter的内部,而在MVC中View会直接从Model中读取数据,而不是通过Controller。
如图:
MVP模式的有点
在android开发中,Activity和Fragment并不是一个MVC模式中标准的Controller,它们的首要职责是初始化用户界面,并负责与用户操作交互,随着界面和业务逻辑复杂度的提升,Activity的职责不断增加,以致变得臃肿不堪。当将其中负责的业务逻辑处理移至另外的类(Presenter)中时,Activity or Fragment专心处理数据的显示和用户的交互,也就是MVP模式中View层的职责,其建立UI元素与Presenter的关联,同时也会处理一些简单的界面逻辑。
优点:
*降低耦合度
*利于测试
*代码复用
*数据隐藏
*代码灵活性
采用MVP模式进行Android开发的实例
链接:https://github.com/Tiny-Times/android-mvp
0 0
- Android MVP架构浅析
- MVP架构浅析
- Android MVP架构浅析
- 浅析android的mvp架构
- Android MVP架构浅析(续)
- MVX Android设计架构浅析-MVP
- MVP浅析
- MVP浅析
- MVP 浅析
- 浅析MVP(Model-View-Presenter)架构及开发模式
- 架构探险——Android MVP模式浅析
- MVP架构
- MVP架构
- MVP架构
- MVP架构
- MVP架构
- 架构mvp
- MVP-架构
- iOS AppStore审核被拒To provide a link to a demo video
- MQ消息中间件介绍
- Java编码问题汇总
- KMP算法详细
- js代码实例
- MVP架构浅析
- 【C++】构造函数
- 实战 Lucene,第 1 部分: 初识 Lucene
- ODI使用技巧_01利用变量实现增量抽取
- 矩阵求导
- 用户认证(四)【确认账户】
- 微信浏览器缓存问题
- Qt如何解决Retina屏幕密度引起的问题
- 第五周项目1(9)斐波那契数列