微軟發布了開放平台.NET 7

微軟今天宣布推出 .NET 7 開放平台的重要版本,該平台整合了 .NET Framework、.NET Core 和 Mono 產品。透過 .NET 7,您可以使用統一的程式庫和通用的建置流程(與應用程式類型無關)來建立適用於瀏覽器、雲端、桌面、物聯網和行動平台的跨平台應用程式。 .NET SDK 7、.NET Runtime 7 和 ASP.NET Core Runtime 7 組件皆專為此而設計。 Linux, macOS и Windows.NET Desktop Runtime 6 僅適用於 Windows本專案相關工作成果以 MIT 許可證發布。 .NET 7 分支將維護 18 個月,至 2024 年 5 月 14 日結束。

.NET 7 包括 CoreCLR 執行階段(含 RyuJIT JIT 編譯器)、標準函式庫、CoreFX 函式庫、WPF 等。 Windows Forms、WinUI、Entity Framework、dotnet 命令列介面,以及用於開發微服務、庫、伺服器、圖形和控制台應用程式的工具。單獨發布的還有 ASP.NET Core 7.0 Web 應用程式開發堆疊、Entity Framework Core 7.0 ORM 層(提供驅動程序,包括 SQLite 和 PostgreSQL 的驅動程式)以及 WPF 7 程式庫(Windows Presentation Foundation (PF) 框架 Windows 用於圖形使用者介面開發的 Forms 7、用於建立雲端原生應用程式的 Orleans 7 平台、用於開發多平台使用者介面的 MAUI 7 框架,以及 C# 11 和 F# 7 語言版本。免費的 Visual Studio Code 程式碼編輯器支援 .NET 7.0 和 C# 11。

新版本的特點:

  • 基類庫(BCL)已統一用於各種類型的應用程序,包括桌面程式、Web 應用程式、雲端平台、行動應用程式、遊戲、嵌入式程式和機器學習系統。您可以使用一個通用的 SDK、執行時間和一組程式庫來開發不同類型的應用程式。
  • 透過定義「net7」的目標平台,提供了將應用程式綁定到與.NET 7.0版本對應的API的功能,例如“淨7.0 「。若要針對特定平台的 API,您可以在定義目標時指定平台類型,例如指定「net7.0-android」。
  • 顯著改進了對 ARM64 架構的支持,並繼續努力實現 .NET 應用程式在 x86 和 ARM64 架構上運行時的效能平衡。提高了 ARM64 系統運作時的 L45 快取效率。 LSE 指令用於將記憶體存取與平行執行緒分離,從而將延遲減少 64%。此函式庫增加了使用 Vector128、Vector256 和 Vector8 向量類型的處理程序,並基於向量指令重寫了 EncodeToUtf8 和 DecodeFromUtf60 函數,使其效能提升高達 16%(對於 NarrowUtf35ToAscii 和 GetIndexOfFirstNonAsciiChar 函數,效能提升到 64%)。總體而言,ARM10平台上通過測試的速度提高了60-XNUMX%。
    微軟發布了開放平台.NET 7
  • 改進的平台支持 Linux包括在標準儲存庫中 Ubuntu 22.04 版本增加了 .NET 6 的軟體包,並提供了一個優化的、緊湊的、即用型的 Docker 映像,用於快速部署包含 .NET 應用程式的容器。
  • 增加了對 IBM Power 64 位元架構 (ppc64le) 的支援。
  • .NET 升級助手工具包的推出旨在簡化舊應用程式向 .NET 6 或 .NET 7 的遷移。新版本擴展了將應用程式從 ASP.NET 遷移到 ASP.NET Core 的支持,增加了 WinForms、WPF 和類別庫的程式碼分析器和糾錯器,實現了對可執行檔案分析的支持,並增加了對 UWP(通用)平台的支援。 Windows 平台)。
  • 擴展了為雲端系統(雲端原生)和PaaS(平台即服務)平台創建應用程式的能力。使用“dotnet publish”命令可以建立打包在隔離容器中的應用程式。
  • 擴展用於監控應用程式狀態和收集其運行指標的工具。新增了用於分析應用程式活動和效能的新事件和方法。
  • C# 11 增加了對原始字串文字的支持,它可以包含特殊字元而無需轉義(此類文字用三個引號括起來)。提出了數學函數的通用接口,並提供了在虛擬接口中定義靜態元素的能力,這使得可以應用通用編程方法執行數學運算,而無需有關值類型的精確信息。
  • 標準庫的功能已經擴展。新增了 API System.Formats.Tar 用於處理 Tar 格式的檔案。處理時間的函數(TimeStamp、DateTime 等)中加入了對微秒和奈秒的支援。 System.Text.Json 提供了控制 .NET 類型的序列化和反序列化的能力。
  • “dotnet new”命令列介面現在支援透過按Tab鍵自動完成標準項目模板。
  • .NET SDK 能夠限制所提供項目模板的使用,例如,您可以確定允許在哪些作業系統上使用模板。
  • NuGet 現在具有集中式套件管理模式,可讓您同時管理多個專案的依賴項。
  • 提高了 JIT 編譯器的效能。增加了對 OSR(On Stack Replacement)機制的支持,用於更改已執行方法的程式碼,這使得您可以對需要很長時間執行的方法進行最佳化,而無需等待當前呼叫完成(TechEmpower 測試指出處理第一個請求的效能提高了 10-30%)。
  • 基於程式碼分析結果(PGO - 設定檔引導優化)的最佳化效率得到提高,這允許考慮程式執行期間​​確定的特性。
  • 增加了對編譯成自包含可執行檔(Native AOT)的支持,其中整個專案最初被編譯成目標平台的機器碼,而不使用中間程式碼,也不使用 JIT。

來源: opennet.ru

為具有 DDoS 保護、VPS VDS 服務器的站點購買可靠的主機 🔥 購買具備 DDoS 防護的可靠網站寄存服務,包括 VPS 和 VDS 伺服器 | ProHoster