天天看點

性能再提升70%?大咖前瞻帶你揭開.NET6的神秘面紗!

本月初微軟官宣.NET 6 的RC1正式釋出,這意味着.NET6正式版跟我們見面的時間又近了一步。在之前的.NET6預覽版本中,微軟加入了大量新功能特性,而在最終版本中将不再額外加入新的内容,隻對現在的内容進行進一步性能優化,以求系統更加穩定。

微軟官方提供了.NET主題相關總覽

性能再提升70%?大咖前瞻帶你揭開.NET6的神秘面紗!

從年初釋出的預覽1,到8月釋出的預覽7,許多新功能陸續進入大家的視線。

性能再提升70%?大咖前瞻帶你揭開.NET6的神秘面紗!

其中最受期待的,莫過于2020年5月微軟推出的 .NET跨平台 UI 架構——MAUI(.NET Multi-platform App UI)。MAUI源自Xamarin.Forms,能讓開發者用一套代碼覆寫Android、iOS、Windows 和 macOS。

此外,在7月釋出的.NET 6 Preview 6中,微軟正式宣布.NET6支援更多的裝置, 包括 Apple M1。這對于廣大Macbook使用者來說,無疑是一個振奮人心的消息。

回首.NET6預覽版在這一年間的更新,許多内容都可圈可點:

C# 10 的改進

在 C# 10 中,許多API已經使用了C#的新特性,如頂層語句等。

性能再提升70%?大咖前瞻帶你揭開.NET6的神秘面紗!

上圖展示了 C# 10 的這一特性,開發者從使用類和方法的程式設計方式,切換為支援Attribute的Lambda表達式,這樣就能讓更多的代碼擁有類似MVC 控制器的功能。

具有原生裝置功能的Blazor 桌面Web應用

如今,Blazor 已成為編寫 .NET Web 應用程式的非常流行的方式。微軟最初在伺服器上支援 Blazor,然後在具有 WebAssembly 的浏覽器中提供支援。.NET 6再次對其進行擴充,支援用Blazor編寫桌面應用程式,即Blazor桌面。Blazor桌面可用于建立混合型用戶端應用,即在原生用戶端應用中嵌入Web頁面,通過接口把 Web 和原生 UI 結合在一起。Blazor 建立在MAUI之上,具有與其他解決方案相當的啟動和吞吐性能。大量在離線桌面應用中提供豐富 UI 的 Web 開發者将會是以而受益。

性能再提升70%?大咖前瞻帶你揭開.NET6的神秘面紗!

上圖示範了在 macOS 上運作的 Blazor 桌面應用程式。在此示例中,整個應用程式都是使用 Blazor 建構的,除了外部由 Mac 應用程式容器提供的外框。

雲原生應用的最小化 Web APIs

在 .NET 6 中,微軟為 Web 應用的托管和路由引入了一個全新的API:WebApplication。

該 API的主要目的是幫助使用C#(或者F#)的後端開發者,快速建立微服務項目或者HTTP API服務。

與之前的ASP.NET Core Web API相比,新的Web API在啟動模闆和架構結構上都進行了優化。API的模闆相當簡潔,我們甚至隻需要寫4行代碼便可完成一個最小Web API項目的搭建。

性能再提升70%?大咖前瞻帶你揭開.NET6的神秘面紗!

支援HTTP/3

HTTP/3是為了解決HTTP/2.0的傳輸相關問題而生的,可以讓使用者在各種裝置上更快地通路Web頁面和服務。它基于一個新的傳輸層協定,稱為QUIC(Quick UDP Internet Protocol),工作在UDP之上,而不是TCP。

性能再提升70%?大咖前瞻帶你揭開.NET6的神秘面紗!

在.net 6預覽版中,微軟添加了對 HTTP/3 的支援,這是一項很大的改進。HTTP3 加快了連接配接的設定速度,極大提升了低品質網絡下的性能。

從.NET的開源與基金會的成立,到.NET的開源,微軟的每一個舉動無一不影響着全世界的開發者。.NET的每一個更新,都會引起社群中開發者的關注和讨論。而我們也一直關注着.NET,并十分期待.NET6正式上線後可以為我們帶來更多驚喜。

最後,在微軟宣布.NET6進入釋出倒計時的時候,我們也請到了微軟的"最有價值專家"(MVP)——中國.NET隊長張善友,為我們帶來對于.NET6的見解和内容前瞻。

大家有興趣不要錯過~詳細内容可見葡萄城公開課。

性能再提升70%?大咖前瞻帶你揭開.NET6的神秘面紗!

本文是由葡萄城技術開發團隊釋出,轉載請注明出處:葡萄城官網