モダンな要件を満たす機能を搭載し、確かな進化を遂げた.NET 9
この日最初のセッションに登壇したマイクロソフトの井上章氏からは、先ごろ登場した「.NET 9」の特徴や新機能、そして今後の.NETをめぐるロードマップなどが解説された。
すでに.NETでは、デスクトップアプリケーション開発にとどまらず、クラウドサービスのほか、Webアプリケーションやモバイルアプリケーション、さらにはゲーミングやIoT、AIなど、多彩なアプリケーションモデルの実装が可能だ。
またWindowsだけでなく、LinuxやmacOSを含むプラットフォームへの対応も実現されている。そうした.NETでの開発を支援するVisual StudioやVisual Studio Code、あるいはGitHub Copilotなどツール環境の整備も順次進んでいるほか、NuGetやGitHubといったエコシステムの活動も活性化している状況だ。
「.NETのアクティブユーザーは月間650万人以上を数え、5万3000人を超えるコミュニティメンバーがさまざまなかたちで開発に貢献。また.NETについては、ナレッジコミュニティであるStack Overflowにおける最も注目されるフレームワークとなっているほか、Cloud Native Computing Foundation(CNCF)においてもトップ5に入る高いベロシティのOSSプロジェクトとなっています」と井上氏は紹介する。
![日本マイクロソフト株式会社 カスタマーサクセス事業本部 App Innovation アーキテクト第一本部 本部長 井上章氏](http://cz-cdn.shoeisha.jp/static/images/article/20832/001.png)
そうした.NETの最新バージョン「.NET 9」が2024年11月に正式にリリースされた。そこでの主なアップデートとしては、監視可能な運用対応アプリケーションを構築するための強力なツール、テンプレート、パッケージのセットである.NET Aspireやクロスプラットフォームフレームワークである.NET MAUI、Webアプリケーション構築のためのツール、ライブラリを包含するASP.NET Coreがそれぞれアップデート、AI対応も拡充され、開発者の生産性向上にさらなる寄与を果たすものとなっている。
「例えば、開発生産性という観点では、.NET Aspire周りの開発者向け機能の向上がなされ、GitHub CopilotやVisual Studioとのインテグレーションも、より密接なものとなっています」と井上氏は具体例をあげて説明する。
さらにモダン&セキュアやインテリジェントの視点で、さまざまな重要なアップデートも見られ、パフォーマンスについても、.NETがアップデートされるたびに向上がなされているが、今回の.NET 9においても同様の大きな進化が見られる。例えば、.NET 9のMinimal APIのパフォーマンスについては、.NET 8に比べて稼働メモリが93%低減されているというベンチマーク結果も示されている。
特にWebアプリケーション開発を担うASP.NET Coreに着目すると、.NET 9では数多くのアップデートがなされている。それについては、こちらのドキュメントに詳しく解説されているが、例えば認証機能の拡張に加え、Blazorでは新たにHybrid Templateといったものも搭載。SignalRにかかわるアップデートなどもいくつか加えられている。
また、.NET 9における、ASP.NETに関連した大きなアップデートの一つとして特に注目すべきなのが、.NET Aspireだ。.NET Aspire自体は、回復性(Resiliency)や管理力(Manageability)、可観測性(Observability)などを有する、クラウドネイティブな分散アプリケーションを構築するための.NETをベースとしたソフトウェアスタック。
「提供される開発者向けのダッシュボード機能などを活用して、マイクロサービスをベースとした分散アプリケーションなど、多彩なインテグレーションの構築、運用、管理するための機能が用意されています」と井上氏は語る。この.NET Aspireについてはこちらのドキュメントで詳細情報が得られる。
加えて.NET 9のAI対応にかかわるアップデートも注目される。具体的には今回、Microsoft.Extensions.AIと呼ばれる、アプリケーションにおいてさまざまな生成AIの機能を使うためのライブラリがプレビューとして提供されている。その活用により、LLMの各種モデルを柔軟に切り替えて使い分けていくといったことができるよう、抽象化されたライブラリが提供されている。
「今紹介した、.NET AspireおよびAIを活用した機能を備える、ASP.NET CoreのBlazorで作られたeShopと呼ばれるサンプルアプリケーションが、GitHub上に公開されているので、ぜひ手元でお試しいただければと思います」と井上氏はいう。
一方、.NET 9におけるクライアントアプリケーション開発にかかわるアップデートはどうか。.NETを使った開発においては、Windowsネイティブ、クロスプラットフォームなネイティブアプリケーション、ハイブリッドな形式のアプリケーション、そしてブラウザをベースとしたWebアプリケーションなど、さまざまな手法を用いることができる。
「.NET 9では、WindowsネイティブについてはWinUI 3やWindows Forms、WPFなどを使ってWindows向けのデスクトップアプリケーション開発を行えるほか、加えてiOSやAndroidなどのモバイルデバイス向けネイティブアプリケーションの開発を、.NET MAUIの活用により実現できる。また、BlazorやWebViewを使ったハイブリッド形式のアプリケーション、例えばBlazorで作ったWebコンポーネントを.NET MAUIの中で使うといったことも可能です」と井上氏は説明する。