- RxJava 教程
- RxJava - 首頁
- RxJava - 概述
- RxJava - 環境搭建
- 可觀察物件 (Observables)
- RxJava - 可觀察物件的工作原理
- RxJava - 建立可觀察物件
- RxJava - Single 可觀察物件
- RxJava - Maybe 可觀察物件
- RxJava - Completable 可觀察物件
- RxJava - 使用 CompositeDisposable
- 運算子 (Operators)
- RxJava - 建立運算子
- RxJava - 變換運算子
- RxJava - 過濾運算子
- RxJava - 組合運算子
- RxJava - 實用運算子
- RxJava - 條件運算子
- RxJava - 數學運算子
- RxJava - 可連線運算子
- 主題 (Subjects)
- RxJava - 主題
- RxJava - PublishSubject
- RxJava - BehaviorSubject
- RxJava - ReplaySubject
- RxJava - AsyncSubject
- 排程器 (Schedulers)
- RxJava - 排程器
- RxJava - Trampoline 排程器
- RxJava - NewThread 排程器
- RxJava - Computation 排程器
- RxJava - IO 排程器
- RxJava - From 排程器
- 其他
- RxJava - 緩衝
- RxJava - 視窗化
- RxJava 有用資源
- RxJava - 快速指南
- RxJava - 有用資源
- RxJava - 討論
RxJava - 概述
RxJava 是一個基於 Java 的 ReactiveX 擴充套件。它提供了 ReactiveX 專案在 Java 中的實現。以下是 RxJava 的主要特點:
擴充套件了觀察者模式。
支援資料/事件序列。
提供運算子以宣告方式組合序列。
內部處理執行緒、同步、執行緒安全和併發資料結構。
什麼是 ReactiveX?
ReactiveX 是一個旨在將響應式程式設計概念引入各種程式語言的專案。響應式程式設計是指程式根據資料出現情況做出反應的場景。它是一種基於事件的程式設計概念,事件可以傳播到註冊的觀察者。
根據 **響應式** 的說法,他們結合了觀察者模式、迭代器模式和函式式模式的優點。
正確實現的觀察者模式。ReactiveX 結合了觀察者模式、迭代器模式和函數語言程式設計的最佳理念。
函數語言程式設計
函數語言程式設計圍繞著使用純函式構建軟體展開。純函式不依賴於先前狀態,並且對於相同的引數總是返回相同的結果。純函式有助於避免與共享物件、可變資料和副作用相關的問題,這些問題在多執行緒環境中經常出現。
響應式程式設計
響應式程式設計指的是事件驅動的程式設計,其中資料流以非同步方式傳入,並在到達時進行處理。
函式式響應式程式設計
RxJava 同時實現了這兩個概念,其中資料流隨時間變化,而消費者函式相應地做出反應。
響應式宣言
響應式宣言 是一份線上文件,闡述了應用程式軟體系統的較高標準。根據該宣言,響應式軟體的主要屬性如下:
**響應式 (Responsive)** − 應該始終及時響應。
**訊息驅動 (Message Driven)** − 元件之間應該使用非同步訊息傳遞,以便保持鬆散耦合。
**彈性 (Elastic)** − 即使在高負載下也應該保持響應。
**彈性 (Resilient)** − 即使任何元件發生故障也應該保持響應。
RxJava 的關鍵元件
RxJava 有兩個關鍵元件:可觀察物件和觀察者。
**可觀察物件 (Observable)** − 它表示類似於流的物件,可以發出零個或多個數據,可以傳送錯誤訊息,其速度可以在發出資料集時進行控制,可以傳送有限和無限資料。
**觀察者 (Observer)** − 它訂閱可觀察物件的資料序列並對可觀察物件的每個專案做出反應。每當可觀察物件發出資料時,觀察者都會收到通知。觀察者逐個處理資料。
如果專案不存在或未為前一個專案返回回撥,則不會通知觀察者。