个人收藏学习 RxJava
博客使用技巧:
// 引用图片语法
{% asset_path slug %}
{% asset_img slug [title] %}
{% asset_link slug [title] %}
// 实例
{% asset_path 01.png %} 显示相对路径
{% asset_img 01.png 图片 %}
{% asset_link 01.png 图片 %} 文字显示为一个超链接
代码块行号: 使用 3 个 ` 包裹引用代码
删除线:~~ 包裹待删除文字,中间没有空格。 待删除文字
|
|
A Complete Guide To Learn RxJava
第一部分

什么是 RxJava ?
RxJava 是响应式程序设计的一种实现。在响应式程序设计中,当数据到达的时候,消费者做出响应。响应式编程可以将事件传递给注册了的 observer。
RxJava是对于Android项目来说是一个重要的library
那么什么是命令行式编程呢?
Grokking RxJava 系列
通过例子学习RxJava(Learn RxJava By Examples)

通过例子学习是最佳的学习方式。
它包含许多例子,如:
如何使用操作符?
如何做网络调用?
如何实现RxBus(EventBus)?
如何使用RxJava实现pagination?
另一个学习RxJava的例子是Kaushik的RxJava-Android-Samples

Jake Wharton 视频
使用RxJava管理状态(Managing State with RxJava by Jake Wharton)
另一个通过例子学习 RxJava 的视频
理解 RxJava Subject — Publish, Replay, Behavior 以及 Async Subject

在网络中使用 RxJava(Using RxJava In Networking)

Better Explanation of RxJava and Using It In Android

响应式编程全面介绍
RxJava 介绍
Crunching RxAndroid

为什么要在 Android 中使用 RxJava?

第二部分
第三部分
理解和整理
RxJava 中有 backpressure 概念,在 RxJava 1 后期版本中默认都扩展了,但并不是所有的资源都有这个需要。
backpressure 继承时必须处理,是处在事件的最前面,必须要处理。
在 RxJava 2 中将这种情况分开来处理了,分为两种类型 Observable 和 Flowable ,前者没有背压,后者有背压
触摸事件采用的是无背压的 observable,发射事件是可以不受阻塞/或者不减速的得到响应的。
可控制的用背压形式的 flowable ,是交互式的,根据需求去拉取。
通过一定的策略可以将两种类型相互装换,但开发者并不打算这样去设计(Jake Wharton )。
Reactive Streams
is an initiative(主动的) to provide a standard for asynchrous stream processing with non-blocking back prossure.Source
Single
Comlete
Maybe
Total
SourcesBefore
SourcesAfter