微软发布.NET 5.0 RC1,未来将只有一个.NET

本周早些时候,微软发布了.NET 5.0 RC1,这是.NET 5在11月正式发布之前的第一个“go-live”版本。.NET 5是.NET生态系统的统一平台,将所有组件打包成一个跨平台包。新版本包含了.NET Core 3的很多改进,包括新的语言版本(C# 9和F# 5),以及对Windows ARM64的支持。.NET 5从Preview 8开始就具备了完整的特性,并且已经可以在生产环境中使用。

.NET 5是去年发布的,该项目的主要目标之一是提供一个单一的、跨平台的.NET运行时和具有统一运行时行为和开发者体验的框架。在第一次宣布这个项目时,.NET团队的程序经理Richard Lander强调了这个项目的重要性:

未来只会有一个.NET,可以支持Windows、Linux、macOS、iOS、Android、tvOS、watchOS和WebAssembly,等等。我们将引入新的.NET API、运行时功能和语言特性作为.NET 5的一部分。此外,我们想清楚地告诉大家,.NET 5是.NET平台的未来。

图片来源:https://devblogs.microsoft.com/dotnet/introducing-net-5/

从那个时候以来,一些情况发生了变化,主要是由于技术方面的挑战和新冠病毒造成的放缓。因此,一些最初宣布的特性被放到了.NET 6中。被延迟的特性包括原生的提前编译(AOT),它最近被确认为在未来进一步采用.NET的一个关键特性。

即使少了一些特性,.NET 5仍然包含了很多来自.NET Core 3的重要改进,包括新的语言版本(C# 9和F# 5)和对Windows ARM64的支持。其他重要的特性包括改进的JsonSerializer API、单文件应用程序、一组完整的可空引用类型注解,以及对库、垃圾回收器(GC)和即时编译器(JIT)的众多性能改进

在最初的RC1版声明中,Lander也提到了C#和System.Text.Json.JsonSerializer的记录类,它“是一个单独的特性,也是一个很好的组合,特别是当你花费大量时间为反序列化JSON对象编写POCO类型时”。记录类是不可变的数据类型(C# 9中最关键的特性之一),也是System.Text.Json的一个改进,允许将Json对象反序列化为记录类型。

随着新的候选发行版被标记为“go-live”,.NET 5也为在生产环境中使用做好了准备。在.NET 5于11月正式发布之前,预计还会有另一个候选版本。.NET 5的所有当前和未来版本都可以在这里找到。当前版本支持Linux、macOS和Windows。要在Windows上使用.NET 5 RC1,需要安装Visual Studio最近的预览版(v16.8 Preview 3)。在本文发布时,最新的Visual Studio for Mac预览版(v8.8 Preview 3)只支持之前的.NET 5版本(Preview 8)。

原文链接

Microsoft Releases .NET 5.0 RC 1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章