💡

TCA Inside

2023/08/25に公開

はじめに

このシリーズはTCAのコードを理解するための資料として作成しています。

TCAを利用するとSwiftUIと組み合わせるとアプリを作る上でかなり大きなメリットがあります(そこらへんについては他の記事に譲ります)。

非常によくできているので、普段、その内部で行われている処理について考えることはありません。
ただ、ふとした不具合の時に潜っていかなければならなかったり、コードが複雑になるにつれて、内部実装を知っておいた方が良い場面は多くあります。

このシリーズでは、複数人での読み合わせを前提に、チュートリアルとしての実装ではなくソースコードを読んで理解することを目的としてます。

シリーズの流れ

TCAでactionをsendして実行されるまで

actionをsendしてから、stateの変更、viewの更新、副作用の処理までを網羅します。途中ScopedReducerなどのStateのチェーンにも触れます。

パート1: TCAでactionをsendして実行されるまで
パート2: TCAでactionをsendして実行されるまで
パート3: TCAでactionをsendして実行されるまで
パート4: TCAでactionをsendして実行されるまで
パート5: TCAでactionをsendして実行されるまで

TCAでalertが表示されるまで

パート6: PresentationStateとCoW

テスト

TCAにおけるテストまとめ

新機能

状態に応じてReducerを返せるReducerReaderを見る

Tips

TCAのReducerのStateをinoutに設計した理由

Discussion