微软推出了 .NET 10 的首个预览版,这是该公司旗舰软件开发平台的一个重要新版本。该公司表示,.NET 10 可能会在 11 月发布生产版本,它引入了 C# 14,并对 .NET 运行时、SDK、库、ASP.NET Core、Blazor 和 .NET MAUI 进行了重大增强。
C# 14带来的增强功能包括对语言中的System.Span
对于 .NET 10 这个新版本,微软特别关注如何让一些常用的编程功能跑得更快、更省资源。为了实现这个目标,他们改进了 JIT 编译器(就是那个让代码运行得更快的东西),让它能更好地处理一些复杂的数组操作。另外,他们还让 JIT 编译器在某些情况下,直接把一些小型的、固定大小的数据放在栈上(而不是堆上),这样可以减少内存的使用和垃圾回收的压力。
在 .NET 10 的库里面,微软还加了一些新的 API(就是一些现成的工具函数),这些 API 可以处理字符的跨度和字符串的规范化,避免不必要的内存分配。他们还加了一些新的工具来帮助处理 3D 图形中的矩阵变换,并且改进了 ZipArchive(就是用来压缩和解压文件的工具)的性能和内存使用。
.NET 10 是继去年 11 月发布的.NET 9之后的又一个新版本。在 .NET 10 的第一个预览版中,还有一些其他的新功能和改进:
- 对于 F# 语言,现在能更好地处理一些复杂的结构,并且加了一个缓存机制,让类型转换更快。
- 对于 .NET 10 的 SDK(开发工具包),NuGet Audit 功能现在可以自动去掉项目中没有用到的包引用,减少不必要的负担。
- Visual Basic 语言现在支持 unmanaged 约束(就是限制某些类型必须是简单的、非托管的数据类型),并且编译器现在能更好地处理一些方法重载的情况,优先选择更快的新方法。
- ASP.NET Core(一个用来做网页应用的框架)现在支持生成 OpenAPI 3.1 文档(就是用来描述 API 接口的文档),并且支持最新的 JSON Schema 标准。文档还可以用 YAML 格式生成。
- Blazor(一个用来做网页应用的框架)现在支持路由语法的高亮显示,方便开发者看清楚路由的结构。
- 对于实体框架(一个用来操作数据库的工具),.NET 10 加了对 LINQ 查询中 Left Join 的支持,让这种查询写起来更方便。
- 最后,微软还说,.NET MAUI(一个用来做跨平台应用的框架)现在作为 .NET 的工作负载和多个 NuGet 包发布,开发者可以更方便地把项目固定到某个特定版本,或者预览一些还没正式发布的功能。