MENU

MENU

カテゴリー

\気になるカテゴリーをクリック!/

やきいも
文系SE
【プロフ】
 ▶ 30代半ば
 ▶ ITエンジニア13年目 | 業務システム
 ▶ 妻と息子の3人で田舎の暮らし

【サイト運営】
このブログは私の体験をもとに以下に関する情報をお届けしています。
 ▶ AI
 ▶ Java
 ▶ Flutterなど
Udemyセール!最大95%オフ!1,200円~4月の最新セール情報をみる

【Dart】finalとconstの違いを3分で解説!パフォーマンス考慮できる!

この記事には広告を含む場合があります。
  • FlutterでDart言語のfinalとconstの違いを知りたい!

そこで、今回はFlutterDartにおけるfinalとconstの違いと使い方初心者向けに解説します。

不明点などありましたら、お気軽にお問い合わせ下さい。

この記事で分かること!
  • finalとconstの違い
  • finalの使い方、具体例
  • constの使い方、具体例
  • パフォーマンスの影響

フリーランスのFlutterエンジニアとして働きたい方にオススメのエージェントはこちらで詳しく解説しています。

目次

【Dart】finalとconstの違い

finalconstも変数の値を変えたくない時に使いますが、その方法が異なります。

基本的には、変数の値がプログラム実行中に変更されない場合は const を使用し、変更される可能性がある場合は final を使用することが望ましいです。

final変数が初めて参照されるときに値が計算されます。そのため、final 変数は初めて参照されるタイミングで値が決定され、その後は変更されません。
constコンパイル時に値が計算されます。そのため、const 変数はアプリケーションがコンパイルされる時点で値が決定され、実行時に変更されません。
void main() {
 String x = "check";

 final String b  = x; //エラーにならない  
 const String a  = x; //エラー  
}

Final and const

If you never intend to change a variable, use final or const, either instead of var or in addition to a type. A final variable can be set only once; a const variable is a compile-time constant. (Const variables are implicitly final.)

(直訳)変数を変更するつもりがない場合は、var の代わりに、または型に加えて、final または const を使用してください。 final 変数は 1 回だけ設定できます。 const 変数はコンパイル時の定数です。 (const 変数は暗黙的に final です。)

引用:Dart API 公式サイト「final and const」

【Dart】finalとconstの使い方と具体例

一般的にfinal 変数は実行時に計算する必要がある値に使用し、const 変数は定数値に使用します。

finalの使い方

final 変数は、実行時に計算する必要がある値に使用されます。例えば、以下のような場合です。

  • ランダムな値を生成する
  • 現在のデバイスの時間を取得する
  • 外部APIから取得したデータ

constの使い方

const 変数は、定数値に使用されます。例えば、以下のような場合です。

  • 定数的な値 (例えば、π)
  • 静的なリソース (例えば、アイコン、タイトル、項目名)
  • 定数的な定数 (例えば、enum)

【Dart】finalとconstによるアプリのパフォーマンス影響

final 変数は、実行時に初期化されるため、性能に影響を及ぼす可能性があります。 一方、 const 変数は、コンパイル時に評価されるため、実行時に性能の影響を及ぼすことはありません。

また、 const 変数は、コンパイル時に評価されるため、実行時に値が変更されることはないため、実行時に値を確認する必要がなく、より高速にアクセスすることができます。

【Dart】finalとconstの基本的な使い方は押さえておこう!

今回の記事ではDartにおけるfinalとconstの違いと使い方について解説しました。

finalとconstを正しく使い分けて、パフォーマンスの良いアプリを作りましょう!

Flutterエンジニアになるには?

初心者が中級者レベルのFlutterエンジニアなるまでの進め方をまとめました。

Flutterの学習方法を知る

Flutter をスクールで学ぶ

Flutterの副業を探す

おまけFlutter入門の完全ガイド

Flutter/Dartの基礎一覧

Flutter/Dartの入門知識として押さえておきたい内容をまとめました。学習のご参考にどうぞ。

Widget(ウィジェット) 一覧

Dart 基本文法

ライブラリ 使い方

コメント

コメントする

CAPTCHA


目次