經過一年多的開發,Microsoft 於北京時間 11 月 11 日(星期三)釋出了其 .NET 5軟體開發平臺,強調平臺的統一,並引入了 C# 9 和 F# 5 程式語言,新平臺朝著桌面、Web、移動、雲和 IoT 目標統一 .NET 開發體驗的方向發展。.NET 5被描述為 Microsoft .NET 統一之旅中的第一個版本,它是為了使更多的開發人員群體能夠將 .NET 框架程式碼和應用遷移到 .NET 5。該平臺將來自 .NET Framework、.NET Core 和 Mono 的元素組合在一起,為所有現代 .NET 程式碼建立單個平臺。工作已經完成,不過 Xamarin 開發人員還需要在一年內釋出 .NET 6.0 時使用 .NET 平臺。
.NET 5 可從dotnet.microsoft.com或新發布的 Visual Studio 2019 更新 16.8 得到。.NET 5 中的其他關鍵功能包括:
- Windows ARM64 支援。
- Windows 桌面開發增強功能。
- 改進了 JSON 序列化器 API。
- 空的引用型別註釋。
- Web 和雲原生。
- 單個檔案應用程式和較小的容器映像。
- 效能提高,gRPC 效能超過 Go、C++ Java。
- 全堆疊 .NET 應用與Blazor Web UI 框架,支援 Blazor 伺服器和 Blazor WebAssembly,它支援 .NET Core框架庫,並在 .NET 5 中跑的更快。
- 新的模型是支援WinRT API的特色,包括呼叫 API、在兩個型別系統之間封送資料以及要跨型別系統或 ABI 邊界處理相同的型別的統一。現有的 WinRT 互作業系統已從 .NET 執行時中刪除。
同時,C# 9側重於程式簡單性、面向資料的類和更多模式。F# 5是微軟函式程式語言的升級,新增了插值字串和開啟型別宣告。此外, NET 5 中的ASP.NET Core Web 開發平臺還改進了 MVC 模型繫結、Azure AD 身份驗證和 SignlR 集線器篩選器和並行集線器呼叫。
Microsoft 對 .NET 的願景推薦採用 .NET 5 到 .NET 6" Wave",該"Wave"包括單個 SDK、跨平臺本機 UI 和雲原生投資。計劃要求每年 11 月釋出主要 .NET 版本,所有其他版本都是長期支援版本。下一個 LTS 版本是 NET 6.0。將根據需要提供次要版本。