观察者模式的正确实现
响应式扩展 (ReactiveX) 结合了以下最佳思想:
观察者 模式,迭代器 模式和 函数式编程
防抖
创建
轻松创建事件流或数据流。
组合
使用类似查询的操作符来组合和转换流。
监听
订阅任何可观察的流以执行副作用。
无处不在
响应式扩展 (ReactiveX) 无处不在,适用于所有场景。
前端
操作 UI 事件和 API 响应,在 Web 上使用 RxJS,或者在移动端使用 Rx.NET 和 RxJava
跨平台
适用于 Java、Scala、C#、C++、Clojure、JavaScript、Python、Groovy、JRuby 等语言的惯用实现
后端
拥抱响应式扩展 (ReactiveX) 的异步性,实现并发和实现独立性
更优的代码库
函数式
避免复杂的带状态程序,使用可观察的流上的干净输入/输出函数。
少即是多
响应式扩展 (ReactiveX) 的操作符通常将原本复杂的挑战简化为几行代码。
异步错误处理
传统的 try/catch 对异步计算中的错误无能为力,但响应式扩展 (ReactiveX) 配备了处理错误的适当机制。
并发变得容易
响应式扩展 (ReactiveX) 中的可观察对象和调度器允许程序员抽象掉底层线程、同步和并发问题。