「.NET 7 RC2」登場 C# 11や.NET MAUI利用可能で、現場への影響は?.NET 7は2022年11月に正式リリース

Microsoftは、アプリケーション開発プラットフォームの次期バージョン「.NET 7」のRelease Candidate 2(RC2)を発表した。

» 2022年10月14日 11時15分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 Microsoftは2022年10月11日(米国時間)、クロスプラットフォームのアプリケーション開発OSS(オープンソースソフトウェア)の次期バージョン「.NET 7」のRelease Candidate 2(RC2)を発表した。

 .NET 7は、2022年11月に正式リリースが予定されている。.NET 7 RC2は、.NET 7の最終Release Candidate(リリース候補)であり、本番環境でサポートされる。Windows版、macOS版、Linux版がダウンロードできる。「Visual Studio 17.4 Preview 3」でテストされており、Microsoftは、.NET 7をVisual Studioファミリーで試す場合は、プレビューチャネルビルドを使用することを勧めている。

 .NET 7の特徴と、.NET 7 RC2での主な変更点は次の通り。

.NET 7の特徴

 .NET 7は、次のような特徴を持つ。

C# 11が利用可能

 C#の最新版であるC# 11が利用できる。C# 11は、次のような多くの新機能を提供する。

  • 汎用(はんよう)属性
  • ジェネリック型数値演算のサポート
  • 数値IntPtrとUIntPtr
  • 文字列補間の改行
  • リストパターン
  • 改善された、メソッドグループからデリゲートへの変換
  • 未加工の文字列リテラル
  • auto-default構造体
  • string定数でのSpan[char]またはReadOnlySpan[char]のパターンマッチ
  • 拡張nameofスコープ
  • UTF-8の文字列リテラル
  • 必須メンバー
  • refフィールドとref scoped変数
  • ファイルスコープ型

ライブラリの拡充

 .NETライブラリは常に改良されており、新機能を含む新しいAPIが定期的に追加されている他、既存APIのパフォーマンス改善も進められている。.NET 7では、ジェネリック型数値演算のサポート、正規表現の改善、レート制限(特定のリソースにアクセスできる量を制限すること)の導入といった機能強化が行われる。

SDKの改良

 .NETの各リリースでは、.NETプロジェクトの作成、ビルド、管理のためのコア機能を含む.NET SDKに多数の改良が加えられている。.NET 7の主要な改良点としては、次の2つが挙げられる。

  • ビルトインコンテナサポート

 アプリケーションのコンテナ化されたバージョンを「dotnet publish」コマンドで作成できるようになり、コンテナイメージが.NET SDKの出力タイプとしてサポートされるようになった。

  • Central Package Managementの導入

 「NuGet 6.2」から、「Directory.Packages.props」ファイルを追加することで、プロジェクト内の依存関係を一元管理できるようになった。

.NET MAUIが利用可能

 .NET 7では、「.NET MAUI」が利用できる。.NET MAUI(.NET Multi-platform App UI)は、Android、iOS、macOS、WindowsのAPIを1つのAPIに統合し、多くのプラットフォームでネイティブに動作する単一のアプリを作成することを可能にする。Microsoftは、「開発者は.NET MAUIにより、各プラットフォーム(Android、iOS、macOS、Windows、Tizen)で設計された最良のアプリ体験を提供するとともに、豊富なスタイリングとグラフィックスによって一貫したブランド体験を実現できる」と述べている。

クラウドネイティブアプリの開発機能の強化

 .NET 7では、前述したビルトインコンテナサポートに加え、gRPC JSONトランスコーディングの導入や、「Azure Functions」における.NET 7サポートなどにより、クラウドのレジリエンス(強靭性、回復力)、スケーラビリティ、効率性、速度を活用できるクラウドネイティブアプリケーションの開発機能が強化されている。

 gRPC JSONトランスコーディングは、ASP.NET Coreの拡張機能であり、gRPCサービスのRESTful HTTP APIを作成できる。JSONトランスコーディングを構成すれば、HTTPの考え方でgRPCのメソッドを呼び出せる。

Arm64アプリケーションのパフォーマンス向上

 .NET 7では、Arm64デバイスで動作するアプリケーションのパフォーマンスを高めるために、厳密なパフォーマンス分析を踏まえてランタイム、ライブラリ、ツールが改善されている。

モダナイゼーションの支援

 .NET 7では、アプリケーションのモダナイゼーションを支援するために、Windowsデスクトップおよびクラスライブリプロジェクトをアップグレードするのに役立つ「.NET Upgrade Assistant」が提供されている。また、ASP.NETからASP.NET Coreに漸進的に移行するためのライブラリとツールも提供されている。

パフォーマンス向上

 .NET 7では、リフレクション、On Stack Replacement(OSR)、起動時間、ネイティブAOT(Ahead Of Time)コンパイラ、ループ最適化など、多くの領域でパフォーマンスに影響する1000以上の改善が盛り込まれている。

.NET 7 RC2での変更点

 .NET 7 RC2での主な変更点は次の通り。

  • System.Text.Jsonソース生成のためのリフレクションフォールバックを、グローバルに再有効化できるようになった
  • APIを適切な方法で使用するための新しいアナライザにより、以下のことが可能になった
    1. ジェネリック型数値演算インタフェースを正しく実装する
    2. IntPtrおよびUIntPtrの組み込み演算子における動作変更を防止する

.NET 7のサポート

 .NET 7は、「Standard Support」リリース(旧称:Currentリリース)となる。.NETは、毎年11月に新しいメジャーバージョンがリリースされ、奇数番号の.NETリリースはStandard Supportの対象となり、サポート期間は従来のCurrentリリースと同じ18カ月だ。偶数番号の.NETリリースはこれまでと同じく「Long-Term Support」(LTS)の対象となり、36カ月間サポートされる。

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。