【 Flutter 】Flutter を 基礎 から 学習 ( Flutterの内部構造 ) part214 ライフサイクル
「 基礎 から 学ぶ Flutter 」という書籍で 学習 したことを ブログでアウトプットしていこうと思います。今回は Flutterの内部構造 ( part214 )です。
前回
【 Flutter 】Flutter を 基礎 から 学習 ( ライブラリ ) part213 プラットフォームアクセスとPluginパッケージ
気を取りなおして!新しいセクションのライブラリについて学びます。
ライフサイクル
ライフサイクル
では主要なウィジェットを深堀しより理解しようという趣旨のセクションです。
StatelessWidget
StatelessWidget
クラスのbuild
メソッド実行タイミングについてのトピックです。
StatelessWidget
はWidget
クラスを継承しています。さらにDiagnosticableTree
クラスを継承しています。
このWidget
クラス、DiagnosticableTree
クラスともに大したことはしていない(失礼!)です。
StatelessWidget
のbuild
メソッド関連で大事なのは、StatelessWidget
クラスのcreateElements
メソッドです。
このメソッドの実装でStatelessElement
クラスをインスタンス化している部分が最も重要な部分ということだそうです。
ウィジェットクラスにはそれぞれに対応するエレメントクラスが用意されているようです。
StatelessWidget
はStatelessElement
クラスが・・・という具合です。エレメントクラスもウィジェットクラス同様にツリー構造になっています。
LoadingWidget
クラスがインスタンス化(Lインスタンス)されると対応したStatelessElement
クラスもインスタンス(+Lインスタンスの参照を持つ)されます。
最後に
なぜWidget
ツリーだけではなくElement
ツリーも用意されているのでしょうか?
なぜWidget
は影武者のようなElement
を持っているのでしょうか?
謎は深まります。
今日はここまで!
ディスカッション
コメント一覧
まだ、コメントがありません