.NET 5.0 正式版發(fā)布了!

作為微軟最早邁向開源的重要軟件之一, .NET 的進展極具意義。
微軟今天發(fā)布了 .NET 5.0 正式版。
微軟希望 .NET Framework 開發(fā)者能夠遷移他們的代碼和應(yīng)用到 .NET 5.0 上,為明年發(fā)布的 .NET 6.0 將 Xamarin 開發(fā)者過渡到統(tǒng)一平臺奠定基礎(chǔ)。

ASP.NET Core、EF Core、C#9和F#5也將在今天一同發(fā)布!
目標是將所有的 .NET 組件整合到一個產(chǎn)品下,然后用戶可以根據(jù)需求使用 .NET 的某個部分,而不是單獨下載或安裝所有內(nèi)容。
版本發(fā)布時間軸:
.NET Core 3.0 已于2019/09推出
.NET Core 3.1 已于 2019/12推出,為 LTS (Long Term Support,長期支援版),之后.NET Core 將更名.NET,固定每年釋出新版,并定義雙數(shù)版號為LTS版,單數(shù)版號為Current版。
.NET 5.0 2020/11
.NET 6.0 LTS 2021/11
.NET 7.0 2022/11
.NET 8.0 LTS 2023/11
對于Visual Studio用戶,您需要Visual Studio 16.8或更高的版本才能在Windows上使用.NET 5.0,在MacOS上使用最新版本的Visual Studio for Mac)。Visual Studio Code的C#擴展也已經(jīng)支持.NET5.0和C#9。
NET 5.0是我們的.NET統(tǒng)一之旅的第一個版本。我們構(gòu)建.NET 5.0是為了讓更多的開發(fā)人員能夠?qū)⑺麄兊?NET Framework代碼和應(yīng)用程序遷移到.NET5.0。我們在5.0中也做了很多前期工作,以便Xamarin開發(fā)人員在發(fā)布.NET6.0時可以使用統(tǒng)一的.NET平臺。
什么是.NET 5?
.NET 5.0是.NET Framework和.NET Core核心的結(jié)合,旨在統(tǒng)一.NET平臺,微軟將其描述為“.NET的未來”。
.NET 5.0還帶來了大量的改進,微軟強調(diào)了一些比較顯著的變化,包括一些性能上的改進。
以下是這個版本的所有亮點:
.NET 5.0 已經(jīng)部署到 dot.net 和 Bing.com 托管數(shù)月,已經(jīng)得到了實戰(zhàn)檢驗。
很多組件的性能都得到了極大的提高。.NET 5.0 中 ARM64 的性能 和 GRPC 等都有改善
C# 9和F# 5提供了新的語言改進,如C# 9的頂層程序和記錄,而F# 5則提供了交互式編程和.NET上功能編程的性能提升。
.NET庫對Json序列化、正則表達式和HTTP(HTTP 1.1、HTTP/2)的性能有所提升。它們現(xiàn)在也被完全注釋為可空性。
由于GC、分層編譯等方面的完善,P95延遲有所下降。
應(yīng)用部署選項更好了,有了ClickOnce客戶端應(yīng)用發(fā)布、單文件應(yīng)用、容器鏡像尺寸減小,并增加了Server Core容器鏡像。
平臺范圍擴大,增加了WindowsArm64和WebAssembly。
一個值得注意的變化是,.NET 5.0應(yīng)用可以原生運行在ARM64 Windows設(shè)備上,消除了仿真帶來的一些性能障礙。然而,在這個版本中,Windows 桌面組件并不能用于ARM64設(shè)備--這計劃在.NET 5.0的服務(wù)更新中進行。
網(wǎng)友評論:
“一方面開發(fā)者有了體驗的一致性,另外一個方面社區(qū)和團隊將不再專注于多個版本的runtime維護,預(yù)期會有更多精力進行改進。”
“過度版本,大同小異,大同小異。”
“影響最深遠的是統(tǒng)一了bcl,已經(jīng)將類庫升級為standard2.0+net5了。”
“升級nuget包后,項目已經(jīng)布上去了,和3.1互相絲滑切換”
“我想說終于走上正軌,但是因為 .NET 6 Multi-platform App UI,我還是想忍一年再說。”
Array.Copy比BlockCopy還快了,全面Nullable Reference還需努力。
不過我期待的AOT沒有了,小遺憾。暫時先繼續(xù)觀望,目前我們生產(chǎn)環(huán)境依舊主要用Python,今年我已經(jīng)主導(dǎo)用.net core3上了幾個小項目,希望接下來生態(tài)可以繼續(xù)完善,讓我們用更低成本開發(fā)高性能的Web應(yīng)用~
有些好奇Unity以后會不會支持.NET5呢。應(yīng)該會吧。同時還比較期待Windows10X 不過看近期的延期情況來看,感覺要砍啊……(笑
希望是新的時代的到來!只可惜之前說的AOT到最后只是個文件打包獨立編譯,而非我們認為的靜態(tài)鏈接縮小體積的單文件編譯。希望.Net6能實現(xiàn)真正的AOT。
如果你也有好的開源項目,歡迎推薦!
微信號聯(lián)系:westbrook12000(ps:加好友請備注“開源”)


再見度盤,阿里云盤正式登陸App Store!

又來一個神器,可以查看微信朋友圈訪客記錄!
