好处
- 异步逻辑: 通过Schedulers的方式切换线程,这就减少了复杂的线程间通信的逻辑,使得代码更佳清洗。
- 函数式编程 : 函数式编程可以让你清晰地看到数据流,让你更难出现bug
- 没有嵌套: 通过操作符操作数据,每个操作符是平行的,不需要嵌套
应用场景
- 组件之间的通讯,如RxBus
操作符
- 操作符与其他编程模式的区别是什么?
- 没有副作用,仅仅会影响Observerable,但是不会有其它的影响其它的值。
RxJava中的几个角色
- Observeable
- 被观察者,定义了数据以及如何响应观察者的订阅事件
- 定义了包含的数据,以及响应的事件(onSubscribe, onObserve)
- Subscriber/Observer
+ 观察者,定义了接收到事件的处理方式。
TODO
- 实现原理