RX的简介
- RX = Observables + LINQ +Schedulers
- LINQ 语言集成查询 Language Integrated Query
- Schedulers 定时任务
- RX是一种编程模型,目的是提供统一的编程接口,方便开发者处理仪表数据流。
- 目前为止RX已经支持几乎所有的主流编程语言。 比较流行的有
- RxJava
- RxJS
- Rx.NET
RX的优点
- 函数式的编程风格:对可观察数据流使用无副作用的输入输出函数,避免程序里错综复杂的状态
简化代码: 可以通过操作符来简化代码 ,常用的操作符:
- 过滤 filter
- 选择 select
- 变换 transform
- 结合 combine
- 组合 compose
异步错误处理机制:传统的try/catch没办法一部处理计算,RX提供了合适的错误处理机制
- 轻松使用并发:RX的Observables和Schedlers让开发者彻底摆脱底层的线程同步和各种并发问题
- 可以把Observable当作Iterable的推送方式的等价物, 使用Iterable,消费者从生产者那里拉取数据,县城阻塞直至数据准备好。使用Observable,在数据准备好时,生产者将数据推送给消费者,数据可以同步或者异步到达。
RXJava的核心
- 观察者
- 被