MVP架构简单解析

作者: 半路自由 | 来源:发表于2018-03-06 15:06 被阅读0次

    一、引言

    MVP的优点:火是有原因的,我就不多BB了。

    二、概述

    MVC应该是大家最初学习的框架:

    View:对应于布局文件

    Model:业务逻辑和实体模型

    Controllor:对应于Activity

    MVP架构由MVC发展而来,在MVP中,M代表Model,V代表View,P代表Presenter。

    Model :负责获取数据,数据的来源可以是网络或本地数据库等;

    View: 负责界面数据的展示,与用户进行交互;

    Presenter: 是Model与View之间的通信的桥梁,将Model与View分离开来。

    MVP理解

    Activity 和Fragment 视为View层,负责处理 UI。

    Presenter 为业务处理层,既能调用UI逻辑,又能请求数据,该层为纯Java类,不涉及任何Android API。

    Model 层中包含着具体的数据请求,数据源。

    调用顺序为view->presenter->model,为了调用安全着想不可反向调用!不可跨级调用!

    上图中说明了低层的不会直接给上一层做反馈,而是通过 View 、 Callback 为上级做出了反馈,这样就解决了请求数据与更新界面的异步操作。上图中 View 和 Callback 都是以接口的形式存在的,其中 View 是经典 MVP 架构中定义的,Callback 是我自己加的。View 中定义了 Activity 的具体操作,主要是些将请求到的数据在界面中更新之类的。Callback 中定义了请求数据时反馈的各种状态:成功、失败、异常等

    demo的地址:https://github.com/zxiao208/Mytest

    相关文章

      网友评论

        本文标题:MVP架构简单解析

        本文链接:https://www.haomeiwen.com/subject/mpnlfftx.html