对于RxJava的初学习和MVP的demo理解

简介:        生活在当下的时代,尤其是我们学习技术专业的,可以说是时刻不敢松懈,本人是一名大三狗,自学习Android开发也有一年多的时间了,没有人指引和教导确实有些慢。

       生活在当下的时代,尤其是我们学习技术专业的,可以说是时刻不敢松懈,本人是一名大三狗,自学习Android开发也有一年多的时间了,没有人指引和教导确实有些慢。和其他人交流才知道retrofit+RxJava+MVP,学习也有一段时间了,这是补发的部分。应该还会有后续,因为最近才真的认识到RxJava的牛逼。

       当时学习RxJava和MVP的时候从网上找了很多例子的使用方法,忍不住吐槽都是一堆什么东西,能不能有些实际的东西让我们能够更好的深入理解具体什么是MVP,什么是RxJava。所以我当时就想,如果我对于这些知识了解之后一定要写一个完整的Demo提供给大家,让大家少走弯路。想学习rxjava的同学可以看看这个链接 给 Android 开发者的 RxJava 详解,如果感觉不够的话也没关系,网上资源很多,大家可以多搜一搜,多看一看。

首先给大家看一下运行结果

img_043b2a8572a1ab131ecb94892d18c756.png

如果想使用rxjava和retrofit的话需要在as中引入支持       

img_e4a42f139bb61ffbf0dd7735f33481c0.png
上面是我自己使用的支持,大家可以根据最新版本使用

这是第一步完成了,其次我们还要大致了解什么是MVP,有关MVP和MVC的介绍网上有很多,大家可以自己多搜一搜,多看一看,这里我只是说一下我自己的理解。不论是什么模式,什么框架,我们都只有一个目的,那就是为了更好的开发项目,让代码看起来整齐简洁,便于扩展。所以对我们练手的项目来说其实MVC就够用了,因为我们还没有建立架构的能力,使用MVP其实有些早。如果不懂MVC也没关系,你只要这样想,我能在两个类里写的代码就不再一个类里面写完;能在两个方法里写的代码就不再一个方法里写完;各个地方用到很多的公共方法或者类,例如对于Toast的封装,对IO的封装,那就把他们单独写在一个类里面就够了。然后多从git上下下源码看看别人是如何封装Base的。这个真的很重要。

好了跑题了,下面来看下我这个真正MVP小Demo的例子的结构。

img_3ac0b73ffbfab34e554a6cbf6e3afe60.png
目录结构

其中第一个是适配器,这个没什么好说的,使用的框架,BaseQuickAdapter,使用特别简单,想了解的同学可以自行百度。

ApiServiceManager是retrofit的封装类,下面是主要代码部分。获取的信息是使用wanandroid的接口。

img_fea74836a4c47498b99c1f5021093ba9.png
主要代码 

上面的代码我也增加了一些注释,中间部分是Retrofit的关键代码初始化部分,相信大家都会有些了解。网络框架有很多,说实话我最近喜欢上了okGo,虽然解析JSON的时候可能需要自己使用原生解析,但是任然不可否认使用起来贼舒服。

接下来我们来看RxJava的使用部分

img_56a2936f02ca797205adbd4ced995cfe.png
rxjava

这里可以实现获取数据前加载框,失败后出现错误提示什么的,大家可以自己增加,话说当时这一个问题魂绕了我好久,后来解决后觉得大彻大悟。

MainActivity就没什么好说的了。不过是获取数据而已,大家可以区我的git上看看。

下面是我的demo地址。谢谢大家支持

GitHub - jiwenjie/MVPDemo: 一个使用rxJava和retrofit以及MVP框架实现的真正简单的小栗子

目录
相关文章
|
10月前
|
JSON 缓存 前端开发
鸿蒙开发之网络框架搭建,MVP+Retrofit2+okhttp3+Rxjava2+RxHarmony2
鸿蒙开发之网络框架搭建,MVP+Retrofit2+okhttp3+Rxjava2+RxHarmony
268 1
|
10月前
|
缓存 JSON 网络协议
打造终极MVP+Retrofit2+okhttp3+Rxjava2网络请求,开发实用,简约1
打造终极MVP+Retrofit2+okhttp3+Rxjava2网络请求,开发实用,简约
206 0
|
10月前
|
JSON 缓存 前端开发
打造终极MVP+Retrofit2+okhttp3+Rxjava2网络请求,开发实用,简约2
打造终极MVP+Retrofit2+okhttp3+Rxjava2网络请求,开发实用,简约
183 0
|
前端开发 数据库 Android开发
一文带你玩转安卓Kotlin+Retrofit+RxJava+MVP架构(附Demo)
一文带你玩转安卓Kotlin+Retrofit+RxJava+MVP架构
242 0
一文带你玩转安卓Kotlin+Retrofit+RxJava+MVP架构(附Demo)
|
缓存 Java Android开发
EventBus原理解析笔记以及案例实战(结合demo)
EventBus原理解析笔记以及案例实战(结合demo)
|
安全 Java Android开发
MVP+Retrofit+RxJava简单事例
MVP+Retrofit+RxJava简单事例
131 0
MVP+Retrofit+RxJava简单事例
|
Java 数据库 UED
RxJava的简介
RxJava的简介
242 0
RxJava的简介
|
缓存 网络协议 Java
OkHttp源码详解之二完结篇
OkHttp源码详解之二完结篇
OkHttp源码详解之二完结篇
|
Java API Android开发
带实际例子的Android架构MVP简述一「 JAVA,MVP,Retrofit,RxJava」
带实际例子的Android架构MVP简述一「 JAVA,MVP,Retrofit,RxJava」 谷歌推荐的MVP架构,是有Model层的。但是也有一种方式,是省略了Model层,把网络请求的方式在Presenter层完成了。
1439 0