メインコンテンツにスキップ

prefer_final_locals

安定版
修正が利用可能です

再代入されない変数は、final で宣言することを推奨します。

詳細

#

推奨: コード内で後から再代入されない変数は、final で宣言することを推奨します。

可能な限り変数を final で宣言することは、意図しない再代入を防ぎ、コンパイラによる最適化を可能にするため、良いプラクティスです。

悪い例

dart
void badMethod() {
  var label = 'hola mundo! badMethod'; // LINT
  print(label);
}

良い例

dart
void goodMethod() {
  final label = 'hola mundo! goodMethod';
  print(label);
}

良い例

dart
void mutableCase() {
  var label = 'hola mundo! mutableCase';
  print(label);
  label = 'hello world';
  print(label);
}

互換性のないルール

#

prefer_final_locals ルールは、以下のルールと互換性がありません。

有効にする

#

prefer_final_locals ルールを有効にするには、analysis_options.yaml ファイルの linter > rules の下に prefer_final_locals を追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    - prefer_final_locals

代わりに YAML マップ構文を使用して linter ルールを設定している場合は、linter > rules の下に prefer_final_locals: true を追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    prefer_final_locals: true