Categories
程式開發

微軟發布.NET 5.0 RC1,未來將只有一個.NET


本週早些時候,微軟發布了.NET 5.0 RC1,這是.NET 5在11月正式發布之前的第一個“go-live”版本。 .NET 5是.NET生態系統的統一平台,將所有組件打包成一個跨平台包。新版本包含了.NET Core 3的很多改進,包括新的語言版本(C# 9和F# 5),以及對Windows ARM64的支持。 .NET 5從預覽8開始就具備了完整的特性,並且已經可以在生產環境中使用。

.NET 5是去年發布的,該項目的主要目標之一是提供一個單一的、跨平台的.NET運行時和具有統一運行時行為和開發者體驗的框架。在第一次宣布這個項目時,.NET團隊的程序經理Richard Lander強調了這個項目的重要性:

未來只會有一個.NET,可以支持Windows、Linux、macOS、iOS、Android、tvOS、watchOS和WebAssembly,等等。我們將引入新的.NET API、運行時功能和語言特性作為.NET 5的一部分。此外,我們想清楚地告訴大家,.NET 5是.NET平台的未來。

微軟發布.NET 5.0 RC1,未來將只有一個.NET 1

圖片來源:https://devblogs.microsoft.com/dotnet/introducing-net-5/

從那個時候以來,一些情況發生了變化,主要是由於技術方面的挑戰和新冠病毒造成的放緩。因此,一些最初宣布的特性被放到了.NET 6中。被延遲的特性包括原生的提前編譯(AOT),它最近被確認為在未來進一步採用.NET的一個關鍵特性。

即使少了一些特性,.NET 5仍然包含了很多來自.NET Core 3的重要改進,包括新的語言版本(C# 9和F# 5)和對Windows ARM64的支持。其他重要的特性包括改進的JsonSerializer API、單文件應用程序、一組完整的可空引用類型註解,以及對庫、垃圾回收器(GC)和即時編譯器(JIT)的眾多性能改進

在最初的RC1版聲明中,Lander也提到了C#和System.Text.Json.JsonSerializer的記錄類,它“是一個單獨的特性,也是一個很好的組合,特別是當你花費大量時間為反序列化JSON對象編寫POCO類型時”。記錄類是不可變的數據類型(C# 9中最關鍵的特性之一),也是System.Text.Json的一個改進,允許將Json對象反序列化為記錄類型。

隨著新的候選發行版被標記為“go-live”,.NET 5也為在生產環境中使用做好了準備。在.NET 5於11月正式發布之前,預計還會有另一個候選版本。 .NET 5的所有當前和未來版本都可以在這裡找到。當前版本支持Linux、macOS和Windows。要在Windows上使用.NET 5 RC1,需要安裝Visual Studio最近的預覽版(v16.8 Preview 3)。在本文發佈時,最新的Visual Studio for Mac預覽版(v8.8 Preview 3)只支持之前的.NET 5版本(Preview 8)。

原文鏈接

Microsoft發布.NET 5.0 RC 1