「Dart 3」が来年登場。完全Nullセーフな言語となり、Nullセーフティなしの実行はサポート外に
今回は「「Dart 3」が来年登場。完全Nullセーフな言語となり、Nullセーフティなしの実行はサポート外に」についてご紹介します。
関連ワード (削除、容易、部分的等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
アプリケーションフレームワーク「Flutter」で使われているプログラミング言語「Dart」の開発チームは、来年(2023年)半ばにメジャーバージョンアップとなる「Dart 3」のリリースを予定していると発表しました。
The road to Dart 3
Dart 3, expected by mid 2023, will only support sound null safety.
Learn more about how Dart's sound safety compares to other languages, and how we're preparing for this major release in the blog by @MiSvTh → https://t.co/YPm8KsdIfG pic.twitter.com/XbEawQ1Qi9
— Dart Language (@dart_lang) December 8, 2022
Our next release, Dart 3, completes the journey to a fully sound null safe language. As the last step of that journey, we’re removing several historical Dart language and SDK artifacts, including removing support for running without sound null safety. This makes Dart easier to learn, and enables us to evolve the Dart SDK to support new features with greater speed.
次のリリースであるDart 3では、完全に健全なNullセーフ言語への道程が完了します。この道程の最後のステップとして、Dart言語とSDKのこれまでの成果物のいくつかを削除し、健全なNullセーフティなしの実行はサポート外とします。これによりDartの学習が容易になり、Dart SDKを進化させて新機能をより迅速にサポートすることが可能になるのです。
Dart 3が完全なNullセーフ言語になる理由として、Dart開発チームはモダンなプログラミング言語はNullセーフティであり、例えばSwiftやC#やKotlinにはNull値を持たない非Null型の型を備え、これによりこれまで多くのバグを生んできたNull参照の間違いを防ぐようにしていると指摘。
Dartでもこれを取り入れて、変数はデフォルトではNull値を持たないようにしており、明示的に宣言した場合のみNull値を持つことができます。
そして健全なNullセーフティでは、非Nullな変数は絶対にNull値を持たないことが約束されるとのことです。
現在のDartでは過去の互換性を考慮し、Nullセーフティなし、部分的Nullセーフィティ、完全に健全なNullセーフティの3つのモードを選択してアプリケーションを実行できるようになっています。
これがDart 3ではNullセーフティのみがサポートされる予定です。
Dart開発チームは、すでにFlutterアプリケーションの85%程度がNullセーフティになっているとしており、残りの15%に該当するアプリケーションについては、Dart 3の前にNullセーフティにマイグレーションするように勧めています。