🤔
AndroidのObservableとLiveDataの違い
viewModelのstateの監視には何が適切なのか?
- ObservableとLiveDataがある
- Observableはよく使われてそう
- LiveDataはGoogleの公式っぽい
Observable
-
ReactiveX(RxJavaなど)の一部
-
Observerパターンを実装するためのインターフェースと実装を提供していた
-
データストリームの処理用に設計されている
- フィルタリング・変換・結合などのデータストリームの処理に便利なAPIが多数提供されている
-
多言語でも提供されている
- 2009年に.NETでRx.NETが登場
- その後様々な言語に移植された
- 2013年にRxJavaがNetflixからリリース. ReactiveXをリード
- iOSならRxSwift
-
参考
LiveData
- Android Architecture Componentsの1種
- UIの更新に関連するシンプルなデータ監視目的に特化している
まとめ
- ViewModelのstateを監視するならLiveDataで良い
Discussion