
Flutter x Riverpod でアプリ開発!実践入門
Flutter 3.x, Dart 3.x, Riverpod 2.x に対応🚀 ✨直近の主な更新 - 2024年9月1日:ref.listenManualについての説明と用語集チャプターを追加 - 2023年10月6日:「Riverpod v3.0 の変更点(v2.xと比較)」チャプターを追加 - 2023年2月23日:最新情報をもとに全体的に改修・Tipsのチャプターを追加(内容少) - 2023年2月19日:Testのチャプターを追加(内容少) - 2023年2月12日:riverpod_generatorとNotifierProviderのチャプターを追加 --- 本書は、「Riverpod」に主眼を置いた、実践的入門書です📚 状態管理のライブラリが豊富なFlutterですが、その選択肢の多さに迷われる方も少なくないのではないでしょうか? その数ある状態遷移ライブラリの中でも広く使われていた「Provider」が、「Riverpod」と名前も変えて進化しました! まだ新しいパッケージではありますが、そろそろ本格的に「Riverpod」を使い始めてみませんか? 📕対象読者: - Riverpodを初めて使う方 - Riverpodを使い始めたけど、悩んでいる方 - Riverpodを使えるようになったけど、もっと実践的な使い方を知りたい方 📗解説範囲 - 「Riverpodとは」から「選び方」、「インストール」方法 - 「Riverpod」のProviderどれを使えば良いのか?使い分けるための各特性 - シンプルな使い方だけでは分からない、より実践的な使い方を使用例を交えて解説 🚸 本書では、Flutterの基本的な始め方や基本的な文法の解説を含みません。 StatelessWidgetやStatefulWidgetを使って簡単なアプリを作ってみた方が 状態管理ライブラリを選定し始めた、以降の読者を想定しています。 🔁 今後の更新と価格設定について - FlutterやRiverpodのバージョンアップデートにより構文の変更があった場合は、可能な限り迅速に追従したいと思っています。 - 新しい実践的なRiverpodの実践的使用例を追加予定です。 - メジャーアップデートや破壊的変更への追従、新章追加を行った場合は販売価格を変更する可能性があります。 - 購入済みの方は、そのまま追加料金なしで最新版をお読みいただけます👍 👍 お願い ❤️ や、X(旧 Twitter)等のSNSで共有していただけると嬉しいです☺️ 🤝 Altive株式会社の採用情報 著者が代表のAltive株式会社では、一緒に働いてくれる仲間を募集しています! 詳しくは、弊社ホームページの採用情報(https://altive.co.jp/recruit)ページをご覧ください。
はじめに
更新履歴
環境について(各種バージョン周り)
Riverpodとは
Riverpodの選び方とインストール
Riverpodの基本的な使い方
コード生成をつかったProvider生成の選び方
各Providerの役割と使い分け
riverpod_generatorを使ってプロバイダを簡潔な記法で生成する
NotifierProviderで「状態」を購読・複雑に操作する
AsyncNotifierProviderで非同期の「状態」を初期化、操作する
Consumerで再構築の範囲を制限する
ref.readでwatchせずにProviderを利用する
ref.listen/listenManualでProviderを購読する
ref.refresh/invalidateでプロバイダを更新し、最新の値を得る
Selectを使ってState更新の再構築を最適化する
StateProviderでシンプルに状態を購読・変更する
StateNotifierProviderで状態を購読・複雑に操作する
FutureProviderで非同期処理を購読する
StreamProviderでStreamを購読する
ChangeNotifierProviderで状態を購読・操作する
AutoDispose修飾子で、Providerを自動破棄させる
ProviderScopeを使って特定の範囲内で状態を上書きする
Flutter Hooksとは
SharedPreferencesのインスタンスをProviderでキャッシュする
StateNotifierProviderでTheme(ライト・ダーク)を切り替える
Providerとoverridesを使ってflavorをアプリ内で使用する
StateNotifierProviderで画面に対するViewModelを作成する
Userを状態として持つFirebase Auth のControllerを作成する
RemoteConfigを使用した強制アップデート機能 前編「Remote ConfigのProvider」
RemoteConfigを使用したアップデート催促機能 後編
アプリのライフサイクルを監視するProvider
Freezedとは
Riverpod v3.0 の変更点(v2.xと比較)
Riverpod v2.0.0 の変更点(v1.x.xとの比較)
riverpod_cliを使ってマイグレーションする
RiverpodのTest tips
RiverpodのTips
おわりに
用語集

Altive株式会社 代表取締役の村松です。FlutterでiOSとAndroidのアプリを作るお仕事をしています📱 お仕事依頼はメールにていただければ嬉しいです📩 [email protected]