Flutter freezedパッケージがいけている件

公開:2020/10/07
更新:2020/10/08
1 min読了の目安(約600字TECH技術記事

freezedパッケージにたどり着いた経緯

https://pub.dev/packages/freezed
flutter(dart)でKotlinで言うところのdataクラスやcopyWithないのでどうにかできないか探していたところfreezedパッケージにたどり着きました。(RiverpodProviderの作者でもあります。flutter界のGodですね)
本当はDart言語レベルでサポートして欲しいですが

freezedのここがいけている

色々機能が多く全て使いこなせていませんが、実際に使ってみて下記がいけていると感じました。
逆に言うと部分部分使うだけでもメリットは享受できると思います。

  1. Imutableなクラスが作れる(=state_notifierと相性が良い)
  2. copyWithを自前で作成しなくていい
  3. Kotlinで言うところのSealed Class的な物が使える
  4. ==/toString も使える
  5. FromJson/ToJsonも設定すれば使える(API連携する時に役に立つ)

まだ使っていないけど便利そう

https://pub.dev/packages/freezed#the-features

  • when
  • maybeWhen
  • map
  • maybeMap
  • Late