Dart2.17が正式にリリースされました。
重要な新機能
- 列挙はすでにメンバー変数をサポートしています
- スーパークラスへのパラメータ転送を改善する
- 名前付きパラメーターの柔軟性の向上
- Flutterプラグインに新しいテンプレートを提供し、
dart:ffi
(Cとのネイティブ相互運用)を使用してプラットフォーム統合を改善します - RISC-Vプロセッサの実験的サポート
- macOSおよびWindows実行可能ファイルの署名サポート
メンバー変数をサポートする列挙
Dart 2.17は、列挙型のメンバー変数をサポートするようになりました。つまり、開発者は、状態を保持するフィールド、状態を設定するコンストラクター、機能を備えたメソッド、さらには既存のメソッドをオーバーロードすることができます。
スーパークラス初期化子
型継承関係の場合、一般的な処理は、いくつかのコンストラクターパラメーターをスーパークラスのコンストラクターに渡すことです。このために、サブクラスはする必要があります
- コンストラクターに各パラメーターをリストします
- これらのパラメーターを使用して、スーパークラスのコンストラクターを呼び出します。これにより、開発者は多くの反復コードを記述し、コードの可読性が低下し、保守が容易ではなくなります。
Dart 2.17は、パラメーターがスーパークラスで指定されていることを示す新しい構成を導入することにより、この問題に対処します。関係者によると、この機能をFlutterフレームワークに適用すると、合計で2,000行近くのコードが削減されました。
Flutterプラグインにdart:ffi
テンプレートを追加します
Flutterでは、FFIは、ホストプラットフォームのネイティブAPI(Windows win32 APIなど)を使用するプラグインを構築するための主流の方法です。Dart2.17およびFlutter3では、FFIテンプレートがツールに正式に追加され、開発者はネイティブコードを呼び出すことでサポートされるDartAPIを使用しflutter
てFFIプラグインを簡単に作成できるようになりました。詳細dart:ffi
詳細については、リリースの発表を参照してください。