.NET Core 3.0.0がリリースされました
2019年9月23日、「.NET Core 3.0.0」がリリースされました。リリース情報
「.NET Core 3.0.0」のリリース情報です。- リリースアナウンス:Announcing .NET Core 3.0
- リリースノート:.NET Core 3.0.0 - September 23, 2019
- ダウンロードとインストール:.NET Core 3.0.0
- 主な変更点:Notable Changes in 3.0.0
- 不具合報告:.NET Core 3.0.0
- 既知の問題:.NET Core 3.0 Known Issues
- サポートOS:.NET Core 3.0 - Supported OS versions
- APIの変更点:API Difference netcoreapp2.2 vs netcoreapp3.0
deb版.NET Core 3.0.0を利用可能なUbuntuのバージョン
現時点でdeb版「.NET Core 3.0.0」を利用可能な「Ubuntu」のバージョンは、以下を参照してください。サポート対象に入っていない「Ubuntu」で「.NET Core 3.0.0」を利用する場合、Snap版「.NET Core」を利用してください。
また「Docker」向けのイメージは、以下を参照してください。
ドキュメント
「.NET Core」に関するドキュメントです。- Learn about .NET Core
- .NET Core Roadmap
- Learn how about the .NET platform
- .NET Core release notes
- .NET Core Announcements
- .NET Core blog
.NET Coreのサポートポリシー
「.NET Core」のサポートポリシーに関する情報は、以下を参照してください。.NET Core 3.0.0をインストールするには
deb版.NET Coreをインストールするには
deb版「.NET Core 3.0.0」をインストールする方法は、以下を参照してください。次回以降「ソフトウェアの更新」からアップデートできるようになります。
Snap版.NET Coreをインストールするには
Snap版「.NET Core 3.0.0」をインストールする方法は、以下を参照してください。次回以降自動的にアップデートされるようになります。
.NET Core 3.0の重要なポイント
「.NET Core 3.0」の重要なポイントをピックアップします。「.NET Core 3.0」の重要なポイントの詳細は、リリースノートを参照してください。
1..NET Core 3.0の品質
「.NET Core 3.0」はすでに「dot.net」や「Bing.com」で利用されており、すでに数カ月が経過しています。また「Microsoft」は大規模なワークロードにおいて「.NET Core 3.0」の展開を近々予定しています。
2.パフォーマンスの大幅な改善
「.NET Core 3.0」は以前のバージョンに比べ、大幅にパフォーマンスが改善されています。パフォーマンスの改善に関しては、以下を参照してください。
3.C# 8
「C# 8」により、非同期ストリーム、レンジとインデックス、追加パターン、「nullable」参照タイプを利用できます。「nullable」により直接「NullReferenceException」を対象とした処理を実装できます。
またフレームワークライブラリーの下層レイヤーにはアノテーションが設定されており、「null」が発生するケースを知ることができます。
4.F# 4.7
「F# 4.7」により、暗黙的な「yield」式やシンタックスの利用が簡単になっています。また「LangVersion」のサポートや「nameof」、静的クラスのオープンがサポートされています。
「F#」のコアライブラリーは「.NET Standard 2.0」が対象になりました。
「F# 4.7」の詳細は、以下を参照してください。
5..NET Standard 2.1
「.NET Core」及び「Xamarin」で「.NET Standard 2.1」を利用可能です。「.NET Standard 2.1」の詳細は、以下を参照してください。
6.Windowsデスクトップアプリのサポート
「.NET Core」上で「Windows Forms」や「WPF」を利用して、Windowsデスクトップアプリを開発できるようになりました。「Windows Forms」と「WPF」はオープンソースで提供されています。
Windows Formsデザイナーは、プレビュー版が提供されています。
WPFデザイナーは、「Visual Studio 2019 16.3」に搭載されています。
7..NET Coreアプリはデフォルトで実行可能
今までは.NET Coreアプリは、「dotnet myapp.dll」のように「dotnet」コマンド経由で起動する必要がありました。しかし今回.NET Coreアプリは、デフォルトでアプリ固有の実行形式で起動できるようになりました。
例えば「myapp」や「./myapp」のように直接アプリを起動できます。
8.高パフォーマンスなJSON API
高パフォーマンスなJSON APIを利用できるようになりました。JSONの読み書きやオブジェクトモデル、シリアライズの場面で恩恵に与れます。
これらのJSON APIは「Span<T>」上に一から構築され、UTF16の代わりにUTF8を使用します。
メモリーの使用も最小限に抑えられていおり、高速なパフォーマンスの実現やガベージコレクションの負担を軽減しています。
詳細は、以下を参照してください。
9.ガベージコレクターのメモリー使用量軽減
デフォルトでガベージコレクターのメモリー使用量が軽減されています。同じサーバー上で多くのアプリをホストする場面で特に大きな利点が得られます。
また64コアを超えるCPU上では、より多くのコアを活用するように改善されています。
10.Dockerのサポート強化
「Docker」のサポートが強化され、.NET Coreアプリがコンテナー内でより効果的に動作するようになっています。コンテナーのメモリー及びCPUの制限に応じて、ガベージコレクターやスレッドプールが効果的に動作するように改善されています。
また.NET Core Dockerイメージのサイズが削減され、特にSDKイメージでは顕著にサイズが削減されています。
11.Raspberry Pi/ARMのサポート
Raspberry PiやARMがサポートされ、IoT分野での利用が可能になりました。「Visual Studio」のリモートデバッガーも利用可能です。
新しい「GPIO API」を活用し、メッセージやイメージをディスプレイに出力することも可能です。
また「ASP.NET」をAPIやサイトとして、データの公開に利用することもできます。
12..NET Core 3.0のリリースモデル
「.NET Core 3.0」はカレントリリースであり、今後リリースされる「.NET Core 3.1」に置き換えられる予定です。「.NET Core 3.1」は2019年11月にリリースされる予定です。
「.NET Core 3.1」は「LTS」リリースであり、3年間の長期サポートが提供されます。
「.NET Core 3.1」リリース後は「.NET Core 3.1」への移行が推奨されます。
「.NET Core 3.0」から「.NET Core 3.1」への移行は、非常に簡単に行える予定です。
また「.NET Core 3.0」は「RHEL 8」のサポートも予定されています。