【RxJava】RxJava 简介 ( RxJava 概念 | RxJava 组成 - 被观察者 / 观察者 / 订阅 / 操作符 | RxJava 适用场景 )
一、RxJava 简介
1、RxJava 概念
RxJava 框架 是一个 异步编程函数库 , 包含了如下要素 :
- 观察者模式
- 迭代器模式
- 函数式编程
RxJava 框架应用场景 :
- 异步操作
- 事件流
2、RxJava 组成 - 被观察者 / 观察者 / 订阅 / 操作符
RxJava 组成要素 :
-
Observable(被观察者): Observable 是一个 可以发送消息的数据源 , 可以同时发送若干消息 , 消息的格式可以通过泛型进行定义 ; 消息发送完毕后 会 通知观察者。Observable 通过 订阅观察者 来实现 消息的传递。
-
Observer(观察者): Observer 表示一个接收 Observable 发送消息 的观察者。 它可以处理从 Observable 发射的消息, 还可以处理错误和完成的事件。
-
Subscription(订阅): 订阅是 Observer 对 Observable 的绑定, 它表示观察者正在接收 Observable 的数据项。 订阅可以被取消, 取消订阅后 Observer 观察者将不再接收 Observable 被观察者 的消息。
-
Operator(操作符): 操作符 用于 处理和转换 Observable 被观察者 发送的消息。可以进行消息的 过滤、变换、合并、组合等操作 ;
3、RxJava 适用场景
RxJava 通过 组合调用 / 链式调用 被观察者 / 观察者 / 订阅 / 操作符 要素 ;
RxJava 可以简化 异步编程 和 事件处理 的过程,提供 优雅 / 可组合 / 可扩展 的解决方案。
RxJava 还支持 线程切换 / 并发处理 / 错误处理 ,利于处理各种 并发 和 异步 操作。
RxJava 异步编程库,蕴含了 响应式编程 思想 ,提供了 简洁、灵活和可组合 的方式 来 处理 异步任务 和 事件流。
RxJava 在下面应用场景中 可以发挥巨大的作用 :
- Android 开发
- Java 后端服务
- 响应式UI
- Java 应用开发