MatsumaruTsuyoshi / PokemonxTCA

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TCA入門記事

対象読者

  1. TCAに興味があって少し調べてみたけど実際のところどんな実装になるのか知りたい方
  2. Swiftについてあまり詳しくない方

サンプルプロジェクトを作ってみたので、その内容をまとめていきたいと思います。

解説方法

  • ソースコードには詳細なコメントを付け加えて、SwiftとTCAの解説をしてきたい

アプリの機能

開発するアプリは以下の機能を含みます:

  • 非同期処理
  • 追加のローディング処理
  • 引数を伴う画面遷移
  • お気に入り機能
  • プレビュー対応
  • ユニットテスト

TCAの基礎

Store,Reducer,State,Action,Effectについて簡単に説明する。

コンポーネント 説明
Store アプリの状態を保持し、アクションに応じて状態を更新します。
Reducer アクションを受け取り、状態を変更するロジックを含んでいます。
State アプリの状態を表すデータ構造で、アプリの現在の状態を保持します。
Action アプリ内で発生するイベントやアクションを表し、ユーザーの入力やシステムイベントに応じて発行されます。
Effect 非同期処理や外部との通信を扱うための機能で、アクションをトリガーとして外部の操作を行い、その結果をアクションとして再度Reducerに送ります。

アプリの実装

ポケモンリスト画面

ポケモン詳細画面

ユニットテスト

About


Languages

Language:Swift 100.0%