FlutterKaigi 2022
レギュラートーク(30分)

入門 freezed

nappannda なっぱんだ nappannda
2

アプリケーションの開発では、モデルクラスの実装が多く、さまざまなケースでモデルクラスに色々な機能が足されていきます。
例えば、モデルクラス同士の比較や一つのモデルに複数の状態を持ちたい(Union Type)などです。
KotlinやSwiftにはそういったモデルクラスの実装に便利な言語機能がありますが、残念ながらDartにはありません。
そのため、自前で実装するしかありませんがDartの標準機能だけでは難しく、できたとしても冗長なコードやコーディングミスによるエラーが発生しがちです。
そこで、freezedというコードジェネレーターのパッケージを利用し、様々な機能を持ったモデルクラスを自動生成し、円滑に開発を進める術をご紹介します。

このセッションでは、freezedの解説や実装方法、実際に書いているときにハマった点や便利だった点などを紹介します。
このセッションを通して、freezedについて知り実際に書けるようになることを目指します。
現時点で予定している、セッションの大まかな流れは下記の通りです。

  • freezedとは何か
  • freezedの使い方
    • モデル定義
    • copyWith
    • Union型
    • FromJson/ToJson
  • freezed利用中のハマった点、便利だった点