【 Flutter 】Flutter を 基礎 から 学習 ( アーキテクチャ ) part253 Reduxパターンとは
「 基礎 から 学ぶ Flutter 」という書籍で 学習 したことを ブログでアウトプットしていこうと思います。今回は アーキテクチャ ( part253 )です。
前回
【 Flutter 】Flutter を 基礎 から 学習 ( アーキテクチャ ) part252 Reduxパターンとは
引き続き、アーキテクチャについて学びます。
Reduxパターンとは
Reduxの3原則
BLoC
パターンのように、Redux
パターンにもルールがあるようです。
- 状態(State)はアプリケーション内で1つだけ。ツリー状態で保持する。
Reduxでは、ツリー状態の一番最初のState名はAppState
と慣習的に決まっているようです。
Flutterもこれに合わせてAppState
クラスを作成してさまざまなStateをぶら下げて持ちます。
- 状態(State)はImmutableにする。
Immutableとは「不変」という意味です。
私もよくJavaを教えるときに「Stringはイミュータブルだから気を付けて!」といったものです😌
Flutterでは@imutable
というアノテーションを付与してconst
コンストラクタを用意し実現していきます。
- 状態(State)は副作用がない純粋関数(Reducer)を通して新たな状態(State)を返す。
Flutterではreducer
関数を用意しState
を管理しています。勝手にState
を変更してはいけないようです。
※ここでの状態(State)はReduxにおける状態(State)です。Flutterとは関係ないものです。
最後に
Flutterの状態管理よりとても魅力的に感じるのですが罠がありそうでちょっと怖いです(笑
今日はここまで!
ディスカッション
コメント一覧
まだ、コメントがありません