俺的RxSwiftまとめ①


RxSwiftとは

RxSwiftはReactive Extensions Swiftの略のこと。Reactive Extensionsは非同期処理をいい感じに時系列に沿って処理してくれるC#の最強ライブラリ。

つまり、RxSwiftはSwiftに従来備わっている非同期処理の書き方

の仲間で、非同期処理をいい感じに行うための方法の一種です。

RxSwiftの非同期処理方法

では、RxSwiftはどうやって非同期処理を行っているのか?
RxSwiftでは、様々なイベント/処理を、時間とともに流れてくる一連のデータ(データストリーミング)に対して実行します。(リアクティブプログラミングと呼ばれるもの)

上記の利点として、

  • プログラム内で発生する全てのイベントを時間軸で捉えることができる
  • コールバック地獄に陥らない
  • MVVMを導入することで、FatViewControllerからの脱却/テストしやすいコードを書ける(具体例1,具体例2)
  • 関数型プログラミングで書ける

というものがあります。