予備知識
・【Swift】クロージャの使い方。名前の無い関数を作る。
・特有の関数? mapとは?$0とは?
・Swiftのmap, filter, reduce(などなど)はこんな時に使う!
・バインド (bind)とは
・forとforeachの違い
・【Swift】for と forEach の書き方メモ
・Promiseと仲良くなって気持ち良く非同期処理を書こう
基本
ハンズオン
・RxSwift入門(ハンズオン)
・【RxSwift+MVVM入門】チャット風アプリのハンズオン Swift4 - Qiita
・比較して学ぶRxSwift4入門」で基本が理解できた
・オブザーバーパターンから始めるRxSwift入門(vol.1)
・RxSwift 入門 その1 - タコさんブログ
・非同期処理してみる(vol.2)
・RxSwiftの動作を深く理解する(vol.3)
・RxSwiftにおけるマルチスレッドの理解を深める — Schedulerについて
・RxSwiftのObservable とは何か
・RxSwiftのbindToについて
・RxSwiftでBindTo可能な独自プロパティを生やす方法
・RxSwiftのDisposeBagとWeakの関係について
イベント発生系
・【RxSwift】BehaviorRelayとPublishRelayについてまとめてみた
イベント整理系
・【RxSwift】concatとmergeの違いをサンプルを元に整理してみる
→merge
はイベントがcompleteしてようとなかろうと流れてきた順番に1つずつ通す, concat
は先に流れてきたイベントがcompleteするまでもう片方は通さないかつ流れてきた順番に1つずつ通す
・【Swift】RxSwiftのPlaygroundを読む⑤ - Qiita
→各関数(filter
, distinctUntilChanged
)が流すイベントの例も合わせて乗っている。
シリーズ通して読みたい
RxOptional
・RxSwiftでnilをフィルタリングする – ukitaka – iOS開発とかのメモ
他言語(ReactiveXに関する記事)
・連載:Reactive Extensions(Rx)入門 - 第2回 イベント・プログラミングとRx
辞書
・RxSwift コードリーディングの勘所@社内RxSwift勉強会
→RxSwift
の各関数を定義から遡って読み解こうという資料
実践
・fumiyasac/RxSwiftPracticeNote: [ING]RxSwiftの練習記録ノート
・RxSwiftでの実装練習の記録ノート(前編:Observerパターンの例とUITableViewの例) - Qiita
→iOSアプリ開発 UI実装であると嬉しいレシピブックの著者fumiyasac
さんの教材。githubのリポジトリをQiitaの記事の解説を見ながら取り組むと理解が深まる
・RxSwiftを使ってアプリを作ってみて、よく使った書き方 - Qiita
・RxSwiftとUIライブラリの表現を組み合わせたサンプル紹介 - Qiita
・fumiyasac/RxSwiftUIExample: [ING] - RxSwiftとUI実装の組み合わせサンプル
→こちらもgithubリポジトリとセットで見て欲しいfujiyasac
さんの教材。MVVMなど他の設計パターンとの兼ね合いも学べる
・RxSwiftでの実装練習の記録ノートとはじめの一歩
→fujiyasac
さんの教材のスライド
・RxSwift ObserverとPublishObject, BehaviorSubject - なんとかするから、なんとかなる
UIごと
・【RxSwift入門】普段使ってるこんなんもRxSwiftで書けるんよ - Qiita
・[RxSwiftのUITableViewとのバインディングまとめ - Qiita]
(https://qiita.com/hironytic/items/71bc729abe73ab9f0879)
・RXSwiftを使ったUIScrollViewのページング - Qiita
・RxWebKitがいい感じだったよ - タマネギプログラマーの雑記
・RxSwiftのすぐに取り込める使用例をまとめてみた🏄🏻 - Qiita
(🔽以下英語2記事)
・ClintJang/sample-rxswift-reactorkit-app: RxSwift ReactorKit RxFlow Sample App
・ClintJang/sample-rxswift-beginning: RxSwift 시작하기 위해 시작시점의 알아야될 것을 정리 및 셈플링 해보는 저장소입니다.
設計込み
・iOSアプリの基本設計を考える:疎結合の概念から構造化,MVVM,RxSwiftまで
・MVVMとFluxを勉強してみた。
・RxSwiftでのデータストリームの処理について理解しよう(連載第3回)
・RxSwiftで双方向データバインディング
・Rxを使った設計をビジュアル化する(vol.4)
・AVFoundationとRxを組み合わせる