APP开发实战49-MVP架构
来源:互联网 发布:michael angelo 知乎 编辑:程序博客网 时间:2024/06/06 18:56
14.2MVP架构
MVP(Model-View-Presenter,模型-视图-表示器),在MVP中View并不直接使用Model,它们之间的通信是通过Presenter (MVC中的Controller)来进行的,所有的交互都发生在Presenter内部。
如果要实现的UI比较复杂,而且相关的显示逻辑还跟Model有关系,就可以在View和Presenter之间放置一个Adapter。由这个 Adapter来访问Model和View,避免两者之间的关联。而同时,因为Adapter实现了View的接口,从而可以保证与Presenter之间接口的不变。这样就可以保证View和Presenter之间接口的简洁,又不失去UI的灵活性。
在MVP模式里,View只应该有简单的Set/Get的方法,用户输入和设置界面显示的内容,除此就不应该有更多的内容,绝不容许直接访问Model —— 这就是与MVC很大的不同之处。
(1)表示器
Presenter主要作为沟通View和Model的桥梁,它从Model层检索数据后,返回给View层,使得View和Model间没有耦合,也将业务逻辑从View层抽离出来。
(2)视图
View通常是指Activity、Fragmetn或某个View控件,它含有一个Presenter成员变量。通常View需要实现一个逻辑接口,将View上的操作转给Presenter实现,最后,Presenter调用View逻辑接口将结果返回给View元素。
(3)模型
Model主要提供数据的存取功能,Presenter通过Model层存储和获取数据。
0 0
- APP开发实战49-MVP架构
- Android开发App架构MVP模式
- APP开发实战51-APP架构设计
- APP开发实战48-MVC架构
- APP开发实战50-MVVM架构
- 王学岗app架构设计-MVP
- Android开源实战:使用MVP+Retrofit开发一款文字阅读APP
- Google官方架构MVP解析与实战
- 仿京东app,采用组件化开发 ARouter + mvp + dagger2 + rxjava + retrofit + fresco 架构
- Android 开源项目Kotlin+MVP+Retofit2+RxJava2架构开发一款短视频App
- Android开发中的MVP架构
- Android开发中的MVP架构
- RxJava+MVP架构笑话App实践
- mvp+okgo+butterknife搭建android app架构
- Hybrid App开发实战
- hybrid app开发实战
- Hybrid App开发实战
- Hybrid App开发实战
- bzoj4523【CQOI2016】路由表
- APP开发实战48-MVC架构
- java 日历
- 动态规划2-UNIMODAL PALINDROMIC DECOMPOSITIONS(算法基础 第5周)
- 【Leetcode】4Sum
- APP开发实战49-MVP架构
- 单表查询指定字段
- APP开发实战50-MVVM架构
- 【Leetcode】3Sum Closest
- java 之BigInteger类实现计算大整数的阶乘
- (java)Base64 图片编码&&解码
- 【Leetcode】Longest Consecutive Sequence
- 如何筛选连续跌几天的股票?
- 【Leetcode】Pascal's Triangle II