Elementとは

Widgetによって自動的に生成され、Widgetの状態管理(Widgetは状態を持たないため)と、描画を担当するRenderObjectの仲介をする Flutterは実行時にWidgetツリーを構築し、その際にElementとRenderObjectも同様なツリーを構築する。Widgetツリーから状態管理と描画を分離することで、パフォーマンスの最適化を図っている。 また、ツリー状を構成するのは、画面の一部に状態変化があった際に、画面全体を更新する事無く末端のサブツリーのみを更新する事で効率化できるため 参考: FlutterにおけるWidgetとElementとRenderObjectの基本 Flutterの3つのツリー(Widgetツリー/Elementツリー/RenderObjectツリー)をできるだけわかりやすくまとめてみた 【Flutter】Navigator.of(context) から理解する 3つのツリー Flutter の Widget ツリーの裏側で起こっていること

final修飾子とは

finalとして変数を初期化すると、その後定数として扱われ、値が変更する事がされない事を保証する (再代入不可)。 constとの違いは、constはコンパイル時に初期化されるが、finalは初回使用時に初期化使用時に初期化される 例 (Dart): 参考: A tour of the Dart language

Null Safetyとは(Dart)

プログラム実行時のNull参照エラーを防ぐ仕組み 例えば、Non-nullableな変数にNullを代入しようとするとビルド時に(または静的解析によって)エラーになる 例 (Dart): 2.12以降Null Safetyがサポートされ、変数はデフォルトでNon-nullableなので下のように宣言するとビルドエラーになります。 下のように?をつけることでNullを許容する事もできます。

pub getとは

pubspec.yamlファイルに記述されているパッケージをダウンロード・インストールするコマンド パッケージ同士の依存関係のバージョン等のコンフリクトが無いかも検証してくれる 例: ターミナル、コマンドプロンプトやAndroid Studioのターミナル等から や を実行する。