【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 应用开发