愛伊米

.NET 6 正式釋出,迄今為止最快的 .NET

出品|開源中國

文|局長

微軟宣佈。NET 6已正式推出,並稱其為迄今為止最快的 。NET 版本。

.NET 6 正式釋出,迄今為止最快的 .NET

釋出公告提到,。NET 6 是首個原生支援 Apple Silicon (Arm64) 的版本,並且還針對 Windows Arm64 進行了改進。。NET 團隊構建了一個新的動態配置檔案引導最佳化 (PGO) 系統,該系統可提供僅在執行時才會進行的深度最佳化。其他變化包括使用dotnet monitor和OpenTelemetry改進雲診斷、提供更強大和更高效的 WebAssembly 支援,以及新增用於HTTP/3、JSON 處理、數學和直接操作記憶體的新 API。

作為 LTS 長期支援版本,。NET 6 將會獲得 3 年的技術支援。

在 。NET 6 開發週期內,總共包含大約一萬個 commit,下面簡要介紹新版本的亮點變化。

.NET 6 亮點

使用 Microsoft 服務、其他公司執行的雲應用程式和開源專案進行了生產壓力測試。

作為最新的長期支援 (LTS) 版本提供三年的技術支援

跨瀏覽器、雲、桌面、IoT和移動應用程式的統一平臺,全部使用相同的 。NET 庫,可便捷地共享程式碼。

效能全面提升

,尤其是檔案 I/O 的效能,減少了執行時間、等待時間和記憶體使用。

C# 10帶來了語言改進,例如記錄結構 (record structs)、隱式使用和新的 lambda 功能,同時編譯器添加了增量原始碼生成器。 F# 6 新特性包括基於 task 的非同步、管道除錯和多項效能改進。

Visual Basic 在Visual Studio 體驗和 Windows Forms 專案開啟體驗方面進行了改進。

熱過載 (Hot Reload) 支援跳過重新構建和重新啟動以檢視新更改(當應用程式正處於執行狀態),此特性支援在 Visual Studio 2022 中使用,並透過 。NET CLI 為 C# 和 Visual Basic 提供了支援。

雲診斷已透過OpenTelemetry和dotnet monitor進行改進,現在在生產環境中得到支援,並且可用於 Azure 應用服務。

JSON API更強大,並提供原始碼生成器器用於序列更高的效能。

ASP。NET Core 引入了最少的 API,以簡化入門體驗並提升 HTTP 服務的效能。

Blazor元件現在可以從 JavaScript 渲染並與現有的基於 JavaScript 的應用程式整合。

用於 Blazor WebAssembly (Wasm) 應用程式的

WebAssembly AOT編譯,以及對執行時重新連結和本機依賴項的支援。

使用 ASP。NET Core 構建的單頁應用程式現在使用了更靈活的模式,可以與 Angular、React 和其他流行的前端 JavaScript 框架一起使用。

添加了 HTTP/3 以便 ASP。NET Core、HttpClient 和 gRPC 都可以與 HTTP/3 客戶端和伺服器互動。

檔案 IO 現在支援符號連結,並透過從頭開始重新編寫

FileStream

大幅提升了效能。

透過支援OpenSSL 3、ChaCha20Poly1305 加密方案和執行時縱深防禦緩解措施(特別是W^X和CET),安全性得到了提升。

支援為 Linux、macOS 和 Windows(以前僅適用於 Linux)釋出單檔案應用程式。

IL 修剪現在更加強大和有效,提供了新的警告和分析器,可確保正確的最終結果。

添加了原始碼生成器和分析器,可幫助生成更好、更安全和更高效能的程式碼。

原始碼構建使 Red Hat 等組織能夠從原始碼構建 。NET,並向其使用者提供自己的構建版本。