.NET誕生20週年 .NET 7有什麼新東西?

語言: CN / TW / HK

首個預覽版已釋出,.NET 7 有什麼新東西?

隨著第一個預覽版釋出,.NET 7 漸漸浮出水面,.NET 高階專案經理 Jeremy Likness 在官方部落格中介紹了 .NET 7 的主要發展方向,俺整理給大夥做一下介紹:

.NET 7 建立在 .NET 6 建立的基礎之上,其中包括一組統一的基礎庫、執行時(runtime)和 SDK、簡化的開發體驗和更高的開發人員生產力,.NET 7 主要關注領域包括:

  • 改進對雲原生方案的支援

  • 升級舊專案的工具

  • 簡化開發人員使用容器的難度

現代客戶端:.NET 多平臺應用程式 UI (.NET MAUI)

.NET MAUI 是 .NET 跨平臺原生 UI 的未來,將成為 .NET 7 的一部分。

2 月 15 日 .NET MAUI Preview 13 釋出,在 .NET MAUI GA 為 .NET 6 釋出後,它將會被包含在 .NET 7 中,並持續改進開發迴圈體驗、支援最新的 .NET SDK 工具、更快的應用程式效能、共享程式碼功能以及增強的互操作性。

感興趣的兄弟可檢視 .NET MAUI 的狀態 和專案路線圖,以獲取更多資訊。

現代雲:雲原生和容器

.NET 7 將改進開發人員體驗:每個人都能更輕鬆地構建雲原生應用程式,例如:

  • 簡化安全身份驗證和授權所需的設定和配置

  • 提高雲原生應用程式啟動和執行時的執行效能

於此同時,.NET 7 將持續投資雲原生配套的工具,比如投資 .NET 跨平臺框架 Orleans —— 一個構建分散式應用程式的跨平臺框架。具體投資措施有:繼續增強 Orleans 的綜合文件,並通過改進 Orleans 與 Azure App Services 和 Azure Container Apps 等現有云服務的整合,使其更易於使用和實施。

此外, .NET 7 計劃使用容器對 .NET 開發進行重大改進。例如:

  • 探索將“通過 MSBuild 直接構建容器”作為 SDK 的一項新功能

  • 計劃增強遙測,以提高容器的可觀察性

  • 專注於使容器映象更小、更快、更安全,同時探索高要求的模型

現代化:升級 .NET 應用程式

.NET .NET 7 繼續致力於讓開發者將現有的 .NET 應用程序升級到最新的 .NET 平臺和技術。

.NET 升級助手包含更多分析器、程式碼修復程式,以及對更多應用程式型別的升級支援,可幫助開發者更輕鬆地升級 .NET 應用程式組合,減少升級應用的工作量。

此外,. NET 已有 20 年曆史,它的應用程式非常多,其中一些熱門應用比如 ASP.NET、WinForms、WPF 等,由於文件和教程較豐富,現代化的速度比較快,使用者升級起來也輕鬆。但其中一些較冷門的專案,例如 WCF(Windows Communication Foundation,微軟開發的一系列支援資料通訊的應用程式框架),可能沒有明確的現代化方向,.NET 將對這部分冷門應用提供適當的指導、文件和工具,以使這些 .NET 應用程式模型更易於升級。

面向 .NET 7

如果現在就要面向 .NET 7,則需要在專案檔案中使用 .NET 7 Target Framework Moniker (TFM)。例如:

<TargetFramework>net7.0</TargetFramework>

附全套 .NET 7 TFM,包括特定作業系統的 TFM。

  • net7.0

  • net7.0-android

  • net7.0-ios

  • net7.0-maccatalyst

  • net7.0-macos

  • net7.0-tvos

  • net7.0-windows

如此便可以使用 .NET 7 測試現有的應用程式,目前來看,從 .NET 6 升級到 .NET 7 還是比較輕鬆的。

相關閱讀

.NET 誕生 20 週年

微軟釋出部落格慶祝 Visual Studio .NET 和首個 .NET 版本誕生 20 週年。

部分重要時間節點回顧:

微軟表示他們擁有深厚的開發者根基,從建立 DOS 和 BASIC 再到後面的 90 年代,他們提供了龐大的開發者工具組合,其中包含用於構建多種應用程式的不同工具和語言,每個工具都擅長解決不同的問題。然而這些應用程式很難互相進行通訊,尤其是跨機器的場景下。

隨著網際網路的興起,技術開始向通過網際網路進行通訊的分散式系統轉移,.NET 正是在這樣的背景下誕生 —— 支援多語言、提供 runtime,以及一套完全相容的庫和 API。這也是微軟為迎接網際網路時代而轉型的重要一環。

同樣是微軟的另一次重大轉型 —— 擁抱開源,.NET 再度走在了前沿。2014 年,微軟在 GitHub 正式開源 .NET,並得到了開源社群的積極支援和貢獻。現在 .NET 已發展成為跨瀏覽器、雲、桌面、IoT 和移動應用程式的統一平臺。

去年釋出的 .NET 6 提供了統一的基礎庫、SDK ,通過 C#10 和最小 API 的增強來簡化開發體驗,通過熱過載實現高生產力。.NET MAUI 框架允許開發者使用單一程式碼庫為 Windows、macOS、iOS 和 Android 構建原生應用程式。

最後,微軟透露了  .NET 7 Preview 1 將在本週釋出,不過並未提及具體的細節。