當前位置:
首頁 > 最新 > 站在巨人肩上的.NET Core 2.1

站在巨人肩上的.NET Core 2.1

.NET Core 1.0自發布兩年以來,得到了開發者群體相當高地認可。 下圖來自Stack overflow survey 2018的統計:

.NET Core已經成為前五的主流框架工具,現今借鑒了優秀的設計原則和開發體驗可謂站在巨人肩上。這一切歸功於.NET團隊認識和總結了大量過往的經驗教訓,看到了跨平台的重要性。關於.NET Core的一些介紹:

Developing token authentication using ASP.NET Core

Implementing SOLID REST API using ASP.NET Core

Unit testing ASP.NET Core Identity

.NET Core還在快速迭代,每次更新都有一些特性的增強。下面介紹一些.NET Core 2.1和ASP.NET Core 2.1的新功能。

相較於重視基礎構建的.NET Core 2.0,.NET Core 2.1更像是一個面向反饋的版本。


.NET Core推出了一些高性能的新數組和內存類型,例如在 和,.NET Standard 1.1可以在NuGet找到兼容的預覽版本。實際上 和的想法來自於調用方的使用需要。這些新類型在框架體系中將非常實用。例如用在中改進性能。更多的內容參見:All About Span: Exploring a New .NET Mainstay。


The Windows兼容包將造福於那些想把基於.NET Framework的代碼遷移至.NET Core的開發者,為此新的框架增加了成噸的API介面(你可以從這裡下載:https://www.nuget.org/packages/Microsoft.Windows.Compatibility)。例如其中一個檢測宿主操作系統類型的方法:RuntimeInformation.IsOSPlatform(OSPlatform.Windows),當需要根據不同平台來運行不同依賴的代碼時非常有用。更有意思的還有API Analyzer,從NuGet包可以獲取到這個來自Roslyn的分析器,項目中引用後會自動提供API使用和警告的實時反饋,對於那些存在潛在兼容問題或失效的API將有不錯的體驗。


下圖是.NET Core新老版構建時長的對比。可以看到較大的項目,其構建時長能節省一倍多,估計正式版本還會進一步優化。


再看看2018年年中前後要發布的ASP.NET Core 2.1,改動將不限於Razor pages、SignalR、Webhooks、Security、Perfomance、MVC、Kestrel等。


將為HttpClient內置一個依賴注入的實現,並提供了實例化和管理的控制單元。還集成了Polly.NET。Polly擁有瞬時錯誤處理和恢復的類庫,支持開發者以便捷、線程安全的方式實現一系列策略,類似重試、中斷、超時、隔離和反饋等。NamedClient, TypedClient

NamedClient

NamedClient是默認選項,它的AddHttpClient方法用來在客戶端處為服務或控制器定義了一個命名空間。

TypedClient

這是一種直接通過類型引用的方式,可以在調用類的內部將注入到構造函數中,對於喜歡IoC的開發者來說值得推薦。

如你所見,它允許你使用註冊或注入客戶端兩種方式。


當前Kestrel使用libuv作為底層實現,在Transport abstraction中將Kestrel的傳輸方式以抽象的方式解耦,順便提一下,出於性能考慮,微軟打算實現一個自定義的socket來替代libuv的非同步IO,在Program.cs中以配置的形式獲得socket傳輸能力。

如今HTTPS成了標配,像Chrome一類的瀏覽器, 在HTTP的Web應用背後都有安全策略,參見:Marking HTTP As Non-Secure。ASP.NET Core 2.1將默認HTTPS,也就是說,即使在本地開發環境監聽,,Kestrel也將要求一個證書而監聽,.NET Core SDK會在安裝時默認會生成一個適當的證書。


一句話總結,新的.NET Core 2.1版本提供了大量的實用提升,正如開頭所說,這些和.NET開發者們積極地建議和反饋密不可分。更有一些新的東西加入,比如在不同適配器下的Web hookst和改頭換面的SignalR。

更多高階的研發計劃和相關功能、問題信息參見:Announcements/issues/288.

或者你還想看看這些:

.NET Core 2.1 roadmap

ASP.NET Core 2.1 roadmap

All About Span: Exploring a New .NET Mainstay

.NET 2.1 Roadmap Pt.1 - Channel9

(原文:.NET Core 2.1 highlights: standing on the shoulders of giants)

原文地址 http://www.cnblogs.com/BeanHsiang/p/8687787.html


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 dotNET跨平台 的精彩文章:

NET Core開源API網關–Ocelot中文文檔

TAG:dotNET跨平台 |