前言
如果你跟我一样,是从来没有在实际项目中运用rxjava开发的初学者,再经过2周左右的学习,我重新编辑了这个学习文章,我自己列了一个学习步骤,大家可以参考一下。
学习步骤
1.在看官方wiki之前,我建议完全初学者可以阅读下这篇博主的文章,到目前谢了9篇,通俗易懂的很形象的讲解了rxjava的部分操作符,主要是理解rxjava。
http://www.jianshu.com/p/464fa025229e
2.官方wiki的阅读,主要是熟悉各个操作符。
官方wiki:
http://reactivex.io/documentation/operators.html#conditional
中文翻译文档:
https://mcxiaoke.gitbooks.io/rxdocs/content/operators/Start.html
RxJava 1.0 和 2.0区别:
https://gold.xitu.io/post/582b2c818ac24700618ff8f5
3.RxJava2操作符练习。
demo:
https://github.com/cxMax/RxJava2-android-sample
注意事项
- 在学习操作符的时候,尽量每个操作符都跟着写一遍demo,编译运行一下,看下结果,基本上就有一个比较清晰的认识。
- 关于rxjava1和rxjava2,请大家不要过度纠结先看哪个,我建议直接看rxjava2,因为是最新的嘛。基本rxjava2领悟了,倒过去看rxjava1的代码就没多大问题了。并且官方还给了https://github.com/akarnokd/RxJava2Interop这个lib用于转换。
- 关于操作符:建议一定要了解一下subject的用法,在去看背压也就是flowable。http://www.jianshu.com/p/1257c8ba7c0c(因为后续rxbus会用到subject去实现)
最后给大家强烈推荐下
如果你经历了上述学习,已经对rxjava有了一个基本的认识,以及能够简单的运用其操作符在实际开发中了。建议大家看看Jake Wharton关于rxjava2的演讲视频,比较新,16年下半年发布的。有英文字幕,不用担心看不懂。不是很长。40多分钟,建议赖着性子看一下,你就知道为什么会设计出这么一个东西,并且近两年会这么火。并且很多国内的博文也是去翻译的英文的
英文:https://realm.io/cn/news/gotocph-jake-wharton-exploring-rxjava2-android/
中文翻译:https://gold.xitu.io/entry/5864a060ac502e00674c3acb有兴趣的童鞋在看了Jake Wharton的演讲后,也可以看下这篇原版的博文http://blog.danlew.net/2014/10/08/grokking-rxjava-part-4/,作者14年底就在为响应式开发布道了,不得不佩服老外的前瞻性。