About

全Flutterガイド

カテゴリ別に整理されたFlutter開発ガイド

Dart言語

Dartとは?Null SafetyとJIT/AOTが特徴の言語

Googleが作ったクライアント最適化プログラミング言語

Dartはすべてのプラットフォームで高速かつ安定したアプリ開発のためにGoogleが設計したオブジェクト指向言語です。すべてがオブジェクトで、強力な型システムとNull Safety、JIT+AOTコンパイルをサポートします。

Dart基本文法まとめ — var/final/constと?・!・??

main()から始めるDartのコア文法

Dartプログラムはmain()から始まります。var/final/const/late/dynamic変数宣言、文字列補間、Null Safety(?/!/??)、カスケード(..)演算子等のコア文法を整理します。

Dartの型システム — 型推論・キャスト・ジェネリクス

コンパイル時に型を検査する静的型言語

Dartは静的型言語でコンパイル時に型検査を行います。型推論、is/asキャスト、型プロモーション、ジェネリクス、typedefを扱います。

Dartのクラス — extends・implements・withの違い

コンストラクタ5種、継承、インターフェース、Mixin、ファクトリパターン

Dartは完全なオブジェクト指向言語です。5種コンストラクタ、extends/implements/withによる継承・インターフェース・Mixin、ファクトリパターンで柔軟なクラス設計ができます。

DartのList・Set・Mapの違いと使い分け

スプレッドとコレクションfor/ifまで

Dartの3大コレクション — List(順序あり重複可)、Set(重複不可、集合演算)、Map(キー値ペア)。スプレッド、コレクションfor/if、メソッドチェーンで強力なデータ処理が可能。

Dartの非同期処理 — Future・Stream・async/await

時間のかかる処理でUIを止めない

ネットワーク要求、ファイルI/O等の時間がかかる作業でUIが止まらないよう処理。Future(単一結果)とStream(連続イベント)、async/awaitで非同期を同期風に記述。

Dartの例外処理 — ExceptionとErrorの違いとtry-catch

on・rethrow・非同期の例外まで

DartはException(復旧可能)とError(復旧不可)を区別します。try-catch-finally、onタイプ別処理、rethrow、非同期例外処理を整理します。

Dart Extensionとは?既存クラスにメソッドを足す方法

Stringにcapitalize、intにisPrimeを足す例

Extensionは原本ソース修正や継承なしに既存クラスに新しいメソッド・プロパティ・演算子を追加します。Stringにcapitalize、intにisPrime、Listにdistinctを追加可能。

Dart Recordsとパターンマッチングの使い方

Dart 3.0 — 多値返却、分割代入、switchパターン

Dart 3.0で導入されたRecordsは、クラスなしで複数の値をグループ化する不変型です。パターンマッチングと組み合わせればswitch/if-caseで型と条件を同時検査できます。