Rx -1-
Reactivie Programming
Reactive Programmingは、データストリームと伝達に関するプログラミングモードです.
我々は主にアルゴリズム問題のような手順に従って順次実行する命令式プログラミングである.Reactive Programminは、まずデータストリームを定義し、データが変更されたときに関連操作を実行します.すなわち,システムに問題が発生した場合,プログラマ自身がある機能を実行することを決定する.
従来のプログラミング方式をプッシュ方式、アクティブプログラミング方式をプッシュ方式と呼ぶ.データが使用されている場所(Consumer)から直接取得されて使用される場合、Pushはデータが変化した場所で新しいデータをConsumerに渡します.
したがって,Reactiveプログラミングは周囲環境と絶えず対話する.ただし,プログラム主導ではなく環境が変化すると,イベントを受信して操作することでインタラクションを行う.
RxJava
RxJavaはReactiveXのJava言語ライブラリです
そこで,RxJavaは関数式プログラミング方式を導入した.関数式プログラミングはSide Effectのない純粋な関数に向いているのでThread-Safeである.
ReactiveXを構成するこの方式の要因はObservableとOperatorである
Marble Diagram
タグDiagramはReactiveXを理解するための重要なツールです.
次に,Marble Diagramが観測可能と観測可能の遷移をどのように表しているかを示す.(後述で紹介する観測マークDiagram)
예제를 해석하면, ★, ▼, .., ◆ 데이터가 차례로 들어와 ◆ 이후 데이터 발행이 완료되었다.
각 데이터는 flip 연산자를 거쳐 새롭게 변환되었으며(▼ -> ▲),
초록색 오각형 이후 어떠한 오류로 인해 데이터 발행이 비정상적으로 종료되었다.
예제를 해석하면 ● 데이터 카운터 2개를 모아서 List 객체에 전달하고 3번째는 스킵합니다.
REFERENCE
Reference
この問題について(Rx -1-), 我々は、より多くの情報をここで見つけました https://velog.io/@cloud0/Rx-1-テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol