Rx
RxSwift

RxSwiftを学ぶ前にRxについて調べてみた

More than 1 year has passed since last update.

RxSwiftに関わる機会が出てきたので調べてみました。

今回はRxSwiftというよりはRxの基本となる部分の勉強になります。

Everything is a stream

基本的に意識するとよいこと
時間軸の流れのようなものです。

Rxとは

  • 非同期通信プログラミング
  • Observerパターン、関数型プログラミングを用いる
  • RxJava,RxJS,RxKolinなどたくさんある

Observerパターン

Observer == 観測者
Observable == 観測対象

  • 状態の変化を観察することを目的としたデザインパターン
  • 観測者は観測対象に購読することを伝え、観測対象は登録された観測者に情報を通知する

簡単に言えば、イベントの通知です。例えば、ある変数を観測し、値が変更された場合などに通知してあげるイメージです。

契約書
dipose = 購読解除

通知の形は3種類
- 通常イベント(next)
- 終了イベント(completed)
- エラーイベント(error)

Marble Diagram

   next     next     completed

-----●-------●---------|----

   next     next       error

-----●-------●---------X----