JavaScriptアプリケーションフレームワーク「Angular」開発チームは2月7日、最新のメジャーリリースとなる「Angular 9」を公開した。「Ivy」エンジンがデフォルトで有効となるなど、多数の強化が加わっている。

AngularはJavaScriptベースのアプリケーションを構築するためのフレームワーク。Webブラウザ上で動作するアプリケーションの実装のほか、ネイティブアプリの実装にも対応する。

Angular 9は、2019年5月にリリースされたAngular 8に続くメジャーリリース。「過去3年で最大のリリース」としており、フレームワーク、Angular Material、CLI（コマンドラインツール）など、プラットフォーム全体で強化が加わっている。

大きな変更点としては、まずAngular 8でプレビュー導入された「Ivy」エンジンがデフォルトで有効になり、すべてのアプリケーションがIvyを利用するようになった。正式扱いとなるにあたって、バンドル容量の削減とテストの高速化を進め、デバッグ、CSSクラスとスタイルバインディング、型チェックなども改善した。これにより、小さめのアプリでは30％、大規模なアプリでも25～40％の容量削減が図れるとしている。また、テストの実行時間も高速化され、デバッグもやりやすくなるという。

Ivy以外の強化としては、「ng」コマンドなどのコマンドラインインターフェイス（CLI）では常に最新版が使われるように変更されたほか、「ng update」コマンドでの進捗状況表示がより分かりやすくなった。アップデート時のデバッグも容易になったという。

「@Injectable」キーワードを使った依存性注入機能では、新たに「platform」や「any」というオプションが追加されている。

コンポーネントのテストでは「component harnesses」という新しい仕組みが導入された。実装の詳細情報を自動で抽出することで、ユニットテストの信頼性を高めることができるという。ほとんどのAngular Materialコンポーネントがcomponent harnesses経由でテストできる。

このほか、Visual Studio MarketplaceのAngular拡張（Angular Language Service）でも、アーキテクチャの変更により、性能および安定性の強化が行われた。

Angular 8はプロジェクトのWebサイトより入手できる。

Angular

https://angular.io/