.NET 8 リリース
(devblogs.microsoft.com)- .NET 8 は、パフォーマンス、安定性、セキュリティの向上に加え、開発者の生産性とイノベーションのスピードを高めるプラットフォームおよびツールの改善を提供する
- クラウドネイティブアプリケーションや大規模トラフィックサービスの構築方法を再定義し、Linux や Windows へのデプロイ、あるいはコンテナ利用時でもアプリ構築を容易にする
- .NET 8 は、Microsoft の大規模サービスで使用されている実証済みライブラリ群を含み、可観測性、レジリエンス、スケーラビリティ、管理容易性などの基本的な課題の解決を支援する
.NET 8 の優れたパフォーマンス
- .NET 8 にはスタック全体にわたる数千件のパフォーマンス改善が含まれており、デフォルトで有効な新しいコードジェネレーター Dynamic PGO により、アプリの性能を最大 20% 向上できる。
- AVX-512 命令セットのサポートにより、512 ビットベクターデータに対する並列演算が可能となり、より多くのデータをより高速に処理できる。
- 基本型は新しい書式設定および解析インターフェースを実装し、UTF-8 で直接書式化と解析を行えるため、変換オーバーヘッドなしで処理できる。
.NET Aspire
- .NET Aspire は、.NET を用いてレジリエントで可観測性が高く、構成可能なクラウドネイティブアプリケーションを構築するためのスタックであり、標準でテレメトリ、レジリエンス、構成、ヘルスチェックを含む。
- クラウドネイティブアプリケーションに不可欠な依存関係の検出、取得、構成を容易にし、.NET Aspire の最初のプレビューが本日提供される。
.NET 8 コンテナの強化
- .NET を使ってコンテナをより簡単かつ安全にパッケージ化でき、すべての .NET イメージには非 root ユーザーが含まれているため、1 行の設定でより安全なコンテナを実現できる。
- .NET SDK ツールは Dockerfile なしでコンテナイメージを公開し、デフォルトで非 root となっている。
- より小さな .NET ベースイメージにより、コンテナ化されたアプリをより高速にデプロイでき、新しい Chiseled Ubuntu イメージ派生版によってセキュリティ強化を選択できる。
ネイティブ AoT
- .NET アプリをネイティブコードにコンパイルすることで、メモリ使用量を削減し、即時起動を実現できる。
- JIT コンパイラーが実行時にコードをコンパイルする必要がなく、JIT コンパイラーと IL コードを配布する必要もない。
- AOT アプリはアプリに必要なコードだけを配布するため、制約の多い環境でも実行できる。
人工知能
- .NET 8 は AI 機能を簡単に活用できるよう、.NET SDK にファーストクラスの AI 機能を提供し、さまざまなツールとのシームレスな統合を支援する。
System.Numericsライブラリに複数の改善を導入して Generative AI ワークロードとの互換性を高め、AI 対応アプリの台頭により新しいツールや SDK も登場している。- さまざまな社内外のパートナーと協力し、.NET 開発者が多様な AI モデル、サービス、プラットフォームへ簡単にアクセスできるよう支援する。
Blazor
- .NET 8 の Blazor は、サーバーとクライアントを組み合わせて、あらゆる Web UI 要件に対応できる。
- ページ読み込み時間、スケーラビリティ、ユーザー体験を最適化する複数の新しい改善により、開発者は Blazor Server と Blazor WebAssembly を同じアプリ内で利用できる。
.NET MAUI
- .NET MAUI は、単一のプロジェクトシステムと単一のコードベースを提供し、WinUI、Mac Catalyst、iOS、Android アプリケーションを構築できる。
- 新しい Visual Studio Code 拡張機能により、.NET モバイルおよびデスクトップアプリを開発するためのツールが提供され、Xcode 15 と Android API 34 をサポートすることで、最新バージョンの iOS と Android を対象にできる。
C# 12 機能
- C# 12 はコーディング体験をより生産的で楽しいものにし、シンプルで洗練された構文を用いてクラスや構造体にプライマリコンストラクターを作成できる。
- 配列、スパン、その他のコレクション型を、簡潔で表現力のある構文で簡単に作成できる。
GN⁺の見解
この記事で最も重要なのは、.NET 8 が開発者に提供する多様な新機能と改善点である。パフォーマンス向上、クラウドネイティブアプリケーション開発の容易化、AI 統合の強化、Blazor および .NET MAUI の進化などは、開発者がより効率的で革新的なソフトウェアを作れるよう支援するだろう。これらの機能は、技術の最前線で働く開発者にとって興味深く魅力的なアップデートであり、現在および将来のプロジェクトに適用できる新たな可能性を切り開く。
5件のコメント
「あるフルスタック.NET開発者は、採用市場で.NET関連のポジションが少なく、あっても『ロックスター』級のレベルを求められることが多いとして、失望感を表した。」
海外もそれほど変わらないようですね…。私は.NETとC#が好きなほうですが、こちらの分野でキャリアを積みたくても、ポジション自体があまりないか、求められるレベルが高すぎます。しくしく
個人的には、.NETは生産性とパフォーマンスの両方を実現できると思うので使いたいのですが…
国内市場では人材の問題で、使うには少し厳しいですね…
おお…見てみると、Native AoT は .NET 7 と比べて対応プラットフォームがものすごく増えましたね。
完全にネイティブコードへコンパイルされるそうで、もう自分が知っていた .NET ではないですね。 +_+
それにしても、もうバージョン 8…? .NET に名前が変わってからもまだそれほど経っていない気がするのに…
.NETのバージョンがかなり早いペースで上がっていきますね。サポート期間もそのぶん少し短めなのが難点です ;_; LTS も3年ほどです。Hacker Newsの意見
.NETに関する印象的な体験
.NETの発展と組織内での変化
.NET 8のDynamicPGO機能
.NETとMonoの関係についての質問
.NETのクロスプラットフォームUIの問題
.NET開発者の採用市場に対する失望
Blazorの発展と期待
.NETエコシステムの長所についての意見募集
.NET Conf - Day 1 動画リンク
C# 12の新機能と「Aspire」発表に対する意見