Microsoftは、オープンソースでクロスプラットフォームのアプリケーション開発プラットフォームの次期バージョン「.NET 8」の最初のプレビュー版を公開した。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Microsoftは2023年2月21日(米国時間)、オープンソースでクロスプラットフォームのアプリケーション開発プラットフォームの次期バージョン「.NET 8」の最初のプレビュー版「.NET 8 Preview 1」を公開したと発表した。
.NETは毎年、最新のメジャーバージョンが11月にリリースされており、.NET 8の正式版も、2023年11月開催の「.NET Conf」で公開されることになっている。.NET 8はLTS(長期サポート)リリースとして、3年間サポートされる。
.NET 8は、次のようなビジョンの実現に向けて開発が進められる。
Microsoftは.NET 8で、.NETのさまざまな基盤技術のアップデートを計画しており、以下ではそれらのうち「ASP.NET Core」「Blazor」「.NET MAUI」「EF Core」「WinForms」「WPF」のロードマップの概要を紹介する。
.NET 8では、Web開発に使用されるASP.NET Core全般にわたって、「Blazor United」「認証および認可体験の向上」「ネイティブAOT」に重点を置いて投資が行われる。
Blazor Unitedは、Web UI構築フレームワーク「Blazor」に基づく単一のアーキテクチャにより、サーバサイドレンダリングと、Blazor ServerやWebAssemblyによる完全なクライアントサイドインタラクションを実現する取り組みを指す。Blazorは、クライアントからのUI操作の処理を重視したフレームワークだ。Blazor Unitedは、サーバサイドレンダリングとクライアントサイドレンダリングを組み合わせ、両方の利点を生かしてWebアプリを構築できるようにすることを目指している。
また、AOT(Ahead-of-Time)コンパイラは、.NETアプリケーションのパフォーマンスに大きく影響する、.NETの重要機能だ。アプリケーションをネイティブAOTとして公開すると、ネイティブコードにAOTコンパイルされた自己完結型のアプリケーションが生成される。こうしたネイティブAOTアプリケーションは非常に高速に起動し、使用メモリも少なくなる。.NETランタイムがインストールされていないマシンやコンテナでも、実行することが可能だ。
「.NET 7」に搭載されたネイティブAOT機能は、コンソールアプリケーションを対象としていたが、.NET 8では、他のアプリケーションシナリオにも対応できるようにネイティブAOT機能が拡張される。
2022年5月に一般提供が開始された.NET MAUI(.NET Multi-Platform App UI)は、C#とXAMLを使用して、ネイティブのモバイルアプリやデスクトップアプリを作成するためのクロスプラットフォームフレームワークだ。.NET MAUIを使用すると、1つの共有コードベースからAndroid、iOS、macOS、Windowsで実行できるアプリを開発できる。
.NET MAUIでは、以下の機能強化が予定されている。
Entity Framework Core(EF Core)は、データアクセス技術「Entity Framework」の軽量版であり、.NET用のオブジェクトリレーショナルマッパー(O/RM)として機能する。SQL Database(オンプレミスとMicrosoft Azure)、SQLite、MySQL、PostgreSQL、Azure Cosmos DBなど、多くのデータベースに対応している。
.NET 8と同時にリリースされる予定である「EF Core 8」では、要望の高い機能(JSON列、値オブジェクト、マップされていない型のSQLクエリ)の他、クラウドネイティブおよびデバイス、パフォーマンス、ビジュアルツール、開発者体験に関する機能強化が計画されている。
Windows Forms(WinForms)では、今後の改善点として以下が挙げられている。
Windows Presentation Foundation(WPF)については、以下のアップデートが計画されている。
これら以外にも、.NET 8の基盤技術として、「ML.NET」「NuGet」「Roslyn」のアップデートロードマップが公開されている。
.NET 8 Preview 1は、ネイティブAOT、.NETコンテナイメージ、ランタイムとライブラリ、.NET SDK、Linuxサポート、コード生成に関する多くの新機能を提供する。.NET 8の今後のプレビュー版でもさらに新機能が追加されていく。
Microsoftは、ネイティブAOTを使用した「Hello, World」アプリのサイズを次のように示し、ネイティブAOTの効果を強調している。
Copyright © ITmedia, Inc. All Rights Reserved.