適切なユーザ体験と開発者体験のためのエラー処理の設計と実装 by 高田 晴彦

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

適切なユーザ体験と開発者体験のためのエラー処理の設計と実装

tfandkusu 高田 晴彦 tfandkusu
2

アプリにおいて正常に処理が完了しないときに適切なエラーメッセージを表示することは、適切なユーザ体験とサポートコストの軽減につながります。またエラー処理は多くの画面で同じような処理になることが多いので、使い回し可能な部品にすることは開発者体験の向上につながります。このセッションでは以下の内容で、Flutterアプリでのエラー処理の設計と実装例をソースコードと併せて解説します。

  • エラーを分類する
    • 原因と対処
      • ネットワークエラーなど、ユーザに原因があるので、ユーザが対処できる
      • サーバエラーなど、サービス提供元に原因があるので、ユーザは待つことしかできない
    • 発生場所
      • API呼び出しエラーなど、多くの画面で発生する
      • パスワード間違いなど、特定の画面でのみ発生する
  • エラーの表示方法
    • Scaffold上のコンテンツ、AlertDialog、Toastのどれで表示するかを、material.ioを参考にして考える
    • ネットワークエラーの場合は再読込可能にする
    • ページングに対応した画面でのエラー表示
  • 使い回し可能なエラー処理部品の実装
    • UIの状態管理担当のヘルパ
    • ウィジット