name: flutter-tips description: > Flutter/Dart 実践 Tips とコーディング規約。Dart 3.10+ dot shorthand・ switch パターンマッチング・専用ウィジェット・マジックナンバー排除・ 宣言的リスト・テスト品質・lint 設定・型プロモーションのためのローカル変数化・ String index アクセス回避など 23 項目。 コード追加・レビュー・リファクタリング時に参照。
Flutter / Dart 実践 Tips
このプロジェクトは Dart ^3.11.4 / Flutter 3.x を使用。全機能が利用可能。
Tips 早見表
| # | Tips | キーワード | 参照 |
|---|---|---|---|
| 1 | switch パターンマッチング | if/else → switch 式 | dart-language.md |
| 2 | null チェック case final | ! 排除 | dart-language.md |
| 3 | デストラクチャリング | Records, .wait | dart-language.md |
| 4 | Dot Shorthand (3.10+) | .min, .circle, .w700 | dart-language.md |
| 5 | 宣言的リストリテラル | collection-if/for, spread | dart-language.md |
| 6 | Wildcard Variables (3.7+) | _ プレースホルダー | dart-language.md |
| 9 | 冗長 async/await 排除 | 単純 Future 返却 | code-quality.md |
| 10 | ignore コメントに理由 | lint suppress | code-quality.md |
| 11 | Logger 構造化パラメータ | severe('msg', e) | code-quality.md |
| 12 | マジックナンバー排除 | 名前付き定数 | code-quality.md |
| 13 | ネスト三項→switch | 可読性 | code-quality.md |
| 14 | 型プロモーション | ローカル変数化で ! 不要 | code-quality.md |
| 15 | String index 回避 | firstGrapheme() | code-quality.md |
| 16 | Lint 設定 | riverpod_lint, custom_lint | code-quality.md |
| 17 | 専用ウィジェット | Container → Padding/SizedBox | flutter-widget.md |
| 18 | Sliver プレフィックス | 命名規約 | flutter-widget.md |
| 19 | Widget クラス分離 | メソッド → クラス | flutter-widget.md |
| 20 | build() 計算回避 | initState / notifier | flutter-widget.md |
| 21 | compute() で Isolate | UI フリーズ防止 | flutter-widget.md |
いつどのファイルを読むか
- Dart 言語機能(switch, dot shorthand, null チェック, デストラクチャリング)→ dart-language.md
- コード品質(マジックナンバー, 型プロモーション, String index, lint)→ code-quality.md
- Widget 選択・構造(Container 置換, クラス分離, compute)→ flutter-widget.md