「Dart 3」が正式リリース。100%Nullセーフティな言語に、ペイメント、ロケーションなどのAPIも直接呼び出し可能に。Google I/O 2023
今回は「「Dart 3」が正式リリース。100%Nullセーフティな言語に、ペイメント、ロケーションなどのAPIも直接呼び出し可能に。Google I/O 2023」についてご紹介します。
関連ワード (利用者、定義、行目等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
Googleは5月10日(日本時間11日)に米カリフォルニア州マウンテンビューで開催中のイベント「Google I/O 2023」で、Dart言語の新バージョンとなる「Dart 3」の正式リリースを発表しました。
Dart 3 is here with three major improvements announced at #GoogleIO:
All code now has sound null safety
Records and patterns
Class modifiersDetails → https://t.co/sefTWYTrcs pic.twitter.com/E8MOV28mNI
— Dart Language (@dart_lang) May 10, 2023
Dart 3の大きな新機能は3つ。100%Nullセーフティになったこと、Patternsのサポート、クラスモディファイアの導入です。
Dart 3ではNullセーフティのみがサポート
Dart 3では100%Nullセーフとなります。
Dart 2.xまでは過去の互換性を考慮し、Nullセーフティなし、部分的Nullセーフィティ、完全に健全なNullセーフティの3つのモードを選択してアプリケーションを実行できるようになっています。
しかしDart 3ではNullセーフティのみがサポートされるようになりました。
これにより、Null値による実行時エラーの減少、実行時性能の向上などの改善が見込めます。
すでに人気のある上位1000位までのパッケージのうち99%がNullセーフティに対応しているとのことです。
構造化データにパターンマッチングを適用
PatternsはDart 3における最大の新機能と説明されており、構造化データに対してパターンマッチングを適用できるようになります。
下記がその例です。SquareとCircleで複数の値を返すために定義された構造化データ「Shape」は、17行目のswitch文でSquareのときとCircleのときそれぞれパターンマッチングにより異なる計算をするようなコードをシンプルに記述できるようになります。
Class modifiersは、APIを定義するクラスにおいて、クラスの利用者がその振る舞いを制限することができる機能を提供します。
通常のClassでは、Classに対してConstruct、Extend、Implementの操作が可能ですが、Class modifieresによってこれらを制限できます。
Class modifiersによる制限には「interface class」「base class」「final class」の3種類があります。
ネイティブ広告やプラットフォームAPIをサポート
またプラットフォーム固有のコードを書くことなくDartのコードのみでネイティブ広告をサポート。
新ツールJNIgenによって、ノーティフィケーションやペイメント、ロケーションなどのプラットフォームネイティブなAPIをDartから直接呼び出せるようになりました。
Google I/O 2023
- [速報]Googleの生成的AI「Bard」が日本語に対応。ウェイトリストもなくなり、すぐに利用できるように
- [速報]Google Cloudでのシステム開発について何でもAIが教えてくれる「Duet AI for Google Cloud」発表
- [速報]Android StudioもチャットAIを搭載へ「Android Studio Bot」発表。コードの自動生成、クラッシュしたログの解析、自然言語での質問の回答など
- [速報]Google、自然言語でAIと対話するだけで誰でもアプリが作れる「Duet AI for AppSheet」発表
- [速報]Google、責任あるAIを実現するとして、画像にウォーターマークとメタデータの埋め込みを進めると発表
- 「Flutter 3.10」正式リリース。カラースキーマの自動生成などMaterial 3対応強化、新レンダリングエンジン、WebAssembly対応など
- 「Dart 3」が正式リリース。100%Nullセーフティな言語に、ペイメント、ロケーションなどのAPIも直接呼び出し可能に