Futureとは

例:

  // Futureを返す非同期処理
  Future<bool> future(){
    bool result = true;
    // 重い処理
    return Future<bool>.value(result);
  }
  void futureTest(){
    future().then((result){
      // resultに応じた処理
    });
    // furureの結果を待たずに先に実行される
    // ...
  }

参考:

基礎から学ぶ Flutter

Null Safetyとは(Dart)

  • プログラム実行時のNull参照エラーを防ぐ仕組み
  • 例えば、Non-nullableな変数にNullを代入しようとするとビルド時に(または静的解析によって)エラーになる

例 (Dart):

2.12以降Null Safetyがサポートされ、変数はデフォルトでNon-nullableなので下のように宣言するとビルドエラーになります。

int a = null; // Build error

下のように?をつけることでNullを許容する事もできます。

int? b = null; // OK

Linterとは

  • ソースコードを静的に解析して、エラー、潜在的なバグやコーディングスタイル等をチェックして警告してくれるツール。

例(Flutter):

Dart 2以降、new キーワードは省略が推奨されているため、

Linterが下のように緑の波線で注意してくれています。

※flutter_lintsをインストールして、analysis_options.yamlを作成し、

下のように記述しています。

include: package:flutter_lints/flutter.yaml
linter:
  rules:
    - unnecessary_new