var、final、constを理解する
可変値、実行時値、コンパイル時値から選ぶ
「var、final、constを理解する」はCoddyKit上の無料Dart Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDart Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Dart Academyコースには全4レッスンが含まれています。
値に名前を付ける3つの方法
Dartでは、データを変数と呼ばれる名前付きの箱に保存します。選ぶキーワードによって、その箱の値を変更できるかどうかが決まります。
varを使う
後で値を変更する場合はvarを使います。Dartが型を推論してくれるため、varは便利で安全です。
var score = 0;
score = 10;varは型を固定する
varは柔軟に見えますが、型は最初に一度決まると固定されます。intを代入した場合、後から同じ箱にテキストを保存することはできません。
var count = 5;
count = 6; // okfinalを使う
値を一度だけ設定し、再代入しない場合はfinalを使います。プログラムの実行中に決まり、その後は変更されません。
final name = "Ada";finalは再代入を防ぐ
finalに新しい値を代入しようとすると、Dartはコンパイル時に止めてくれます。変更するつもりのない値を守ることができます。
final pi = 3.14;
// pi = 3; // error!constを使う
プログラムの実行前から値がわかっている場合はconstを使います。コンパイル時に組み込まれ、その後は永久に固定されます。
const maxUsers = 100;constはコンパイル時に決まる
constの値はコンパイル中に計算できなければなりません。現在時刻のように実行時にならないとわからないものは使えません。
const now = DateTime.now(); // errorfinalとconstの違いを一言で
次のように考えてください。finalは実行時に一度設定され、constはそれより早いコンパイル時に凍結されます。🧊
varよりfinalを優先する
まずfinalを使う習慣をつけるとよいでしょう。値を変更する必要がない場合、finalなら意図が明確になり、バグも防げます。
constオブジェクトは正規化される
同一内容のconstオブジェクトは、メモリ上で同じインスタンスとして共有されます。領域を節約でき、固定された設定値にも適しています。
const a = [1, 2];
const b = [1, 2]; // same object適切なキーワードを選ぶ
値は変わりますか?varを使います。実行時に一度だけ設定しますか?finalを使います。実行前からわかっていますか?constを使います。この1つの問いが判断の指針になります。
クイックチェック
実行時に計算されるものの、再代入されない値に使うキーワードを選びましょう。
まとめ:var、final、const
varは変更でき、finalは実行時に一度だけ設定され、constはコンパイル時に凍結されることを学びました。基本的にはfinalを選びましょう。🎉
AI チューターと学ぶ Dart — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 30
- レッスン
- 120
よくある質問
「var、final、constを理解する」レッスンは無料ですか?
はい。「var、final、constを理解する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Dart Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Dart Academyコースには全4レッスンが含まれています。
「var、final、constを理解する」で何を学びますか?
可変値、実行時値、コンパイル時値から選ぶ ブラウザで直接実行するハンズオンコードでDart Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Dart Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのDart Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「var、final、constを理解する」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このDart Academyレッスンでコードを書いて実行できますか?
はい。すべてのDart Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- var、final、constを理解する
- 基本の型:int、double、String、bool
- 型推論と明示的な型指定
- dynamic型とObject型