.NET誕生20週年 .NET 7有什麼新東西?
首個預覽版已釋出,.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 將在本週釋出,不過並未提及具體的細節。
- C# 面向物件程式設計之里氏替換原則實戰解析
- C# 面向物件程式設計之開閉原則實戰解析
- C# 面向物件程式設計之單一職責原則實戰解析
- C#單元測試的使用(三)
- .NET基礎知識快速通關(9)
- .NET基礎知識快速通關(6)
- .NET基礎知識快速通關(5)
- 面試寶典之.NET基礎知識快速通關(1)
- 填坑 | .NET 在Docker中訪問MSSQL報錯
- 如何分析.NET Core HttpClient請求異常
- 理解C#泛型原理
- 萬字長文講解:什麼是「抽象」?
- 簡述使用REST API 的最佳實踐
- 如何基於.NET Core構建分散式檔案儲存系統?
- 利用SOS擴充套件庫進入高階.NET6程式的除錯
- 淺議開發者面臨的資訊偏差影響因素
- 【新書速遞】龍芯開源LoongArch版,學會造計算機!
- .NET誕生20週年 .NET 7有什麼新東西?
- 基於.NET 製作一個氣象站 IoT 應用
- [探索 .NET 6]02 比較 WebApplicationBuilder 和 Host