MVP开发模式

本文详细介绍了MVP(Model-View-Presenter)设计模式的概念及其在Android开发中的应用优势,包括减少Activity代码冗余、彻底分离UI与业务逻辑等。同时对比了MVP与MVC模式的不同之处。
1.MVP介绍
     MVP(Model-View-Presenter)模式
     在MVP模式里通常包含4个要素:
     (1)View:负责绘制UI元素、与用户进行交互(在Android中体现为Activity);
     (2)View interface:需要View实现的接口,View通过View interface与Presenter进行交互,降低耦合,方便进行单元测试;
     (3)Model:负责存储、检索、操纵数据(有时也实现一个Model interface用来降低耦合);
     (4)Presenter:作为View与Model交互的中间纽带,处理与用户交互的负责逻辑。
2.为什么使用MVP
       1.解决activity的代码冗余
        2.完全分离UI界面与代码逻辑
        3.通过自定义类实现这个interface来模拟Activity的行为对Presenter进行单元测试,省去了大量的部署及测试的时间。
3.MVP与MVC
       他们的优点:
     (1)降低耦合度
     (2)模块职责划分明显
     (3)利于测试驱动开发
     (4)代码复用
     (5)隐藏数据
     (6)代码灵活性
     最关键的差异:
  • View不直接与Model交互,而是通过与Presenter交互来与Model间接交互
  • Presenter与View的交互是通过接口来进行的,更有利于添加单元测试
  • 通常View与Presenter是一对一的,但复杂的View可能绑定多个Presenter来处理逻辑     
     MVC模式:
  • View可以与Model直接交互
  • Controller是基于行为的,并且可以被多个View共享
  • 可以负责决定显示哪个View
4.小示例
       可以从EditText读取用户信息并存取,也可以根据ID来从后台读出用户信息并显示。
                        
    根据MVP原则来进行编码的目录结构:
                       
     源码:http://download.youkuaiyun.com/detail/fwy19930618/7270921
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值