zoukankan      html  css  js  c++  java
  • MVP模式

    在传统的Android开发中,我们一般是使用MVC模式进行开发的。
    传统MVC模式介绍:
    1. View: 视图层,对应xml文件
    2. Controller: 控制层,对应Activity和Fragment层,进行数据处理
    3. Model:实体层,负责获取实体数据
    在Android开发中采用MVC模式的一个最大的弊端就是xml作为View层视图能力实在太弱,所以一般情况下我们都是通过Controller层来辅助处理一些视图的。这样的结果就导致Controller既作为控制层的同时又承担了View层的大部分功能,采用MVC模式往往会导致Activity和Fragment中的代码非常复杂。我们将Android中采用的MVC模式称为MV模式更加恰当。
    MVP模式介绍:
    1. View: 视图层,对应xml文件与Activity/Fragment
    2. Presenter: 逻辑控制层,同时持有View和Model对象
    3. Model: 实体层,负责获取实体数据
     
    采用MVP模式的优势是:
    1. 把业务逻辑抽离到Presenter层中,View层专注于UI的处理。
    2. 分离视图逻辑与业务逻辑,达到解耦的目的。
    3. 提高代码的阅读性。
    4. Presenter被抽象成接口,可以根据Presenter的实现方式进行单元测试。
    5. 可拓展性强。
    采用MVP模式的缺点:
    1. 项目结构会对后期的开发和维护有一定的影响。具体视APP的体量而定。
    2. 代码量会增多,如何避免编写过多功能相似的重复代码是使用MVP开发的一个重点要处理的问题。
    3. 有一定的学习成本。
    综上所述,在Android上采用MVP模式的优势是:大大优化代码的维护性与拓展性的同时对代码进行深度解耦,使各个层级的分工更加明晰。
     
  • 相关阅读:
    遗传学详解及Matlab算法实现
    (转)非常好的理解遗传算法的例子
    Halcon学习笔记之支持向量机(二)
    Hough 变换
    主元分析PCA理论分析及应用
    Retinex图像增强算法
    Halcon学习笔记之支持向量机(一)
    阿里云OSS安装使用问题
    JS中双击和单击事件冲突解决
    JavaScript正则表达式应用---replace()
  • 原文地址:https://www.cnblogs.com/YangBinChina/p/8970722.html
Copyright © 2011-2022 走看看