[Flutter]Hot Restart時にbuildメソッドが2回回っても気にする必要なし

このページには広告が含まれる場合があります。

 

FlutterでStatefulWidget(正確にはStatefulWidgetの面倒を見ている育ての親である「State」クラスの)initStateメソッドやmain関数を変更した際に、その変更を最初からビルドすることなく反映させることのできる「Hot Restart」という機能がありますが、

初回ビルド時にはbuildメソッドは1回しか回らないのに、Hot Restartするとなぜかbuildメソッドが2回回ってしまう現象が発生することがあります。

Flutterの中の人は、Widget.buildが最小限の回数で呼び出されることを保証するものではないと言っていますが、それ以上は言及されていないのでこれ以上のことはわかりません。

Flutter does not guarantee Widget.build will be called the minimum number of times possible. You should structure your application in a way that assumes build will be called on every frame – anything less is an optimization.

(Flutter は、Widget.build が可能な限り最少回数で呼び出されることを保証しません。アプリケーションは、すべてのフレームで build が呼び出されることを想定して構成する必要があり、それ以下の回数では最適化とは言えません。)

ただ、コーディング上の問題ではなく、かつHot Restart時に発生する事象で、さらにHot Restartは実際のリリースアプリの挙動では発生し得ないことなので、問題視しなくてよいのではないかと思います。

(詳しくは、以下の動画で解説していますので、よろしければご覧下さい)

こんな記事も読まれています

今すぐ無料お試しキットを受け取る

はじめての方へ


みんプロ式プログラミング講座体系・ラインナップ
みんプロ式プログラミング講座受講の流れ(割引特典利用方法)
サイトマップ(みんプロHPコンテンツ一覧)
運営会社概要

みんプロ作成アプリ





TOP