- RxJava 教程
- RxJava - 主页
- RxJava - 概述
- RxJava - 环境设置
- 观测值
- RxJava - Observable 的工作原理
- RxJava - 创建 Observables
- RxJava - 单个可观察的
- RxJava - 也许可观察
- RxJava - 完整的可观察的
- RxJava - 使用 CompositeDisposable
- 运营商
- RxJava - 创建运算符
- RxJava - 转换运算符
- RxJava - 过滤运算符
- RxJava - 组合运算符
- RxJava - 实用操作符
- RxJava - 条件运算符
- RxJava - 数学运算符
- RxJava - 可连接运算符
- 科目
- RxJava - 主题
- RxJava - 发布主题
- RxJava - Behave主题
- RxJava-ReplaySubject
- RxJava-AsyncSubject
- 调度程序
- RxJava - 调度程序
- RxJava - 蹦床调度程序
- RxJava - 新线程调度程序
- RxJava - 计算调度程序
- RxJava - IO 调度程序
- RxJava - 来自调度程序
- 各种各样的
- RxJava - 缓冲
- RxJava - 窗口化
- RxJava 有用资源
- RxJava - 快速指南
- RxJava - 有用的资源
- RxJava - 讨论
RxJava - 概述
RxJava 是 ReactiveX 的基于 Java 的扩展。它提供了 Java 中的实现或 ReactiveX 项目。以下是 RxJava 的主要特征。
扩展观察者模式。
支持数据/事件序列。
提供运算符以声明方式将序列组合在一起。
在内部处理线程、同步、线程安全和并发数据结构。
什么是ReactiveX?
ReactiveX 是一个旨在为各种编程语言提供响应式编程概念的项目。响应式编程是指当数据出现时程序做出反应的场景。它是基于事件的编程概念,事件可以传播到寄存器观察者。
根据Reactive,他们结合了观察者模式、迭代器模式和函数式模式的优点。
观察者模式做得很好。ReactiveX 结合了观察者模式、迭代器模式和函数式编程的最佳思想。
函数式编程
函数式编程围绕使用纯函数构建软件进行。纯函数不依赖于先前的状态,并且对于传递的相同参数始终返回相同的结果。纯函数有助于避免与多线程环境中常见的共享对象、可变数据和副作用相关的问题。
反应式编程
响应式编程是指事件驱动的编程,其中数据流以异步方式进入并在到达时进行处理。
函数式反应式编程
RxJava 同时实现了这两个概念,其中流的数据随着时间的推移而变化,消费者函数也会做出相应的反应。
反应式宣言
反应式宣言是一份在线文档,阐述了应用软件系统的高标准。根据宣言,以下是反应式软件的关键属性 -
响应式- 应始终及时响应。
消息驱动- 应在组件之间使用异步消息传递,以便它们保持松散耦合。
弹性- 即使在高负载下也应保持响应。
弹性- 即使任何组件发生故障,也应保持响应。
RxJava的关键组件
RxJava 有两个关键组件:Observables 和 Observer。
Observable - 它表示类似于 Stream 的对象,可以发出零个或多个数据,可以发送错误消息,在发出一组数据时可以控制其速度,可以发送有限和无限数据。
观察者- 它订阅可观察的序列数据并对可观察的每个项目做出反应。每当 Observable 发出数据时,观察者都会收到通知。观察者一一处理数据。
如果项目不存在或者前一个项目没有返回回调,则观察者永远不会收到通知。