【Flutter/Dart】riverpodを使ってみた

4776 ワード

導入

いつもはBlocを使って開発をしているが、今回は長期休みの期間を使ってriverpodを使って開発してみました。

riverpod、その他ライブラリについて

riverpod

状態管理のライブラリで、Viewとビジネスロジック+状態管理を分離できます。
なので、分けて開発ができるのはもちろん、パーツごとでの操作がやりやすいという利点があります。

Flutterでriverpodを使うパターンとして、色々な方法があることがわかった。

pkg名 内容 URL
riverpod Flutterに関連するすべてのクラスが削除された、Dartのみのバージョンです。通常、Flutterでのアプリ開発では選択しないと思いますので以降、言及しません。 https://pub.dev/packages/riverpod
flutter_riverpod Flutterで Riverpod を使う上での基本的な利用方法です。 https://pub.dev/packages/flutter_riverpod
hooks_riverpod 後述の flutter_hooks を併せて使う方法です。以下のいずれかに当てはまる場合は使用を検討すると良いかもしれません。 https://pub.dev/packages/hooks_riverpod

今回は一番下のhooks_riverpod + freezed + flutter_hooksで作った。(みんながやってるから)