两幅图带你理解android MVP
来源:互联网 发布:知柏地黄丸能治耳鸣吗 编辑:程序博客网 时间:2024/06/05 03:02
很早就知道android 除了个MVP这种设计模式了,但是一直没用过,因为之前觉得把网络层封装一下,在activity里面直接用接口回调就可以了。但是最近发现,这样完全不行啊,随着业务逻辑的增多,一个activity很容易就有上千行代码,自己写的还好,别人看绝对是云里雾里的,这里对数据操作,那里对界面操作,这里一坨代码,那里一坨代码。所以网上搜了下关于android MVP的文章,收获颇丰,果然用了MVP就是不一样,虽然多了很多类,但是项目的分层特别清晰,看着很爽。
接下来总结下我对MVP的理解吧:
简单来说,MVP就是对接口的操作。M、V、P每一层都会有一个接口,一个实现类。在V中,有P的接口对象;在P中,有M、V的接口对象。
V:
V层一般都是activity,fragment。接口里面定义所有的操作界面的方法,比如弹出Toast啊,弹出Dialog啊,改变某些控件的布局啊。
P:
接口里定义一些中间层的方法,比如说登录,注册等。当V层调用P层的登录后,P层就会调用M层的登录。
M:
这一层就是具体的对数据的操作。
看图说话
登录业务的MVP模拟图:
1、点击button后,在V层中也就是activity中执行login方法;
2、然后在login方法中调用P层中的login方法;
3、P层在调用M层中的login方法,并且带入一个Callback回调接口进去;
4、M层对数据进行操作后或者进行网络请求后,对返回的结果进行解析,成功的话就调用Callback的onSuccess方法,否则调用Callback的onFail方法;
5、在P层接收到了回调,如果是onSuccess的话就调用activity的onLoginSuccess方法,如果是onFail就调用activity的onLoginfail方法。
具体可以看我写的一个小Demo:
MVPDemo
- 两幅图带你理解android MVP
- android小白进阶MVP模式开发(三步曲),让你全面理解MVP(一)
- android小白进阶MVP模式开发(三步曲),让你全面理解MVP进阶(二)
- Android MVP 的理解
- Android----MVP模式的理解
- Android MVP模式的理解
- MVP in Android 理解应用
- Android MVP的一点理解
- 应该这样理解Android MVP
- 理解Android中的MVP架构
- android中MVP的理解和实例
- Android MVP模式简单理解与实践
- Android MVP设计的简单理解
- Android MVP设计模式的理解
- 关于Android 的MVP的理解
- Android MVP 模式 理解与浅析
- Android:聊聊我所理解的MVP
- Android中的MVP模式的理解
- Java中八进制、十六进制表示
- 程序员们,AI来了,机会来了,危机也来了
- TRIP数据库的JDBC
- Activity生命周期(转载)
- POJ 2942 Knights of the Round Table
- 两幅图带你理解android MVP
- SV function
- 安装linux系统
- 2017工作态度反省
- 安装OpenCV:OpenCV 2.4.8或OpenCV 2.4.9 +VS 开发环境配置
- SpringBoot启动报错Cannot determine embedded database driver class for database type NONE
- 设计模式-享元模式
- TOJ 3474.The Big Dance
- aiohttp 源码解析之 request 的处理过程