NOTE 072 / 2021年
状態の持ち方を、画面の外に置く
状態管理の道具を、何のために使うのかから考え直します。
Riverpod は、状態を画面の外に置き、必要な場所から読むための仕組みです。Provider の種類が多いので、最初は「誰が値を生成し、誰がそれを見るのか」という関係だけを追うと理解しやすくなります。
非同期の取得は、読み込み中と失敗を含む状態として扱います。画面ごとに try と catch を散らすより、状態として表現したほうが、表示の分岐が読みやすくなります。
押さえたい点
- 01値を作る側と見る側を分ける
- 02非同期は状態として扱う
- 03表示の分岐を一箇所にまとめる
参考資料
外部サイトが開きます。内容は各サイトの管理下にあります。
- Flutter ドキュメント 外部サイトdocs.flutter.dev
- Flutter 状態管理 外部サイトdocs.flutter.dev
- Dart 言語 外部サイトdart.dev
- pub.dev 外部サイトpub.dev
- Dart の非同期 外部サイトdart.dev
- Riverpod 入門 外部サイトriverpod.dev
- MDN Web Docs 外部サイトdeveloper.mozilla.org
- web.dev 外部サイトweb.dev
- W3C WAI 外部サイトw3.org
- GitHub Docs 外部サイトdocs.github.com
- Chrome for Developers 外部サイトdeveloper.chrome.com
- TypeScript ドキュメント 外部サイトtypescriptlang.org
- MDN HTTP 外部サイトdeveloper.mozilla.org