SwiftUIのダイアログコンポーネント化で学んだ、最小限のインターフェース作りと @Stateが更新されないケース by そっしー

iOSDC Japan 2023
ルーキーズLT(5分)

SwiftUIのダイアログコンポーネント化で学んだ、最小限のインターフェース作りと @Stateが更新されないケース

Sossui_Swift そっしー Sossui_Swift
3

-概要
デザインシステム刷新によって、既存ダイアログを6パターンに定義。
そしてUIKitではなくSwiftUIで実装をすることになりました。
このプロポーザルを聞くことで、負債を小さくするために工夫したことと、
@Stateが更新されないケースを具体的に知ることができます。

-負債
考慮したい負債は次の3点です。
① Viewの処理が呼び出し元に漏れ出す具合
② デザイン確認コストが高い
③ 実装の柔軟性が高い

-対応
負債へと向き合うポイントは次の2点
① Componentの規約を意識しなくて良い状態にすること
実行時に規約に反した実装を落とし、ヒューマンエラーを弾く。
② Viewで完結すること
ダイアログの特性上、どのVCからも呼び出される可能性があるため、
呼び出し元のPresenterとのインターフェースは必要最低限にする。

詳細は発表にて!!!!