微软在不断推进.NET 6的可用性,昨晚的Build 2021大会上发布了Preview4, 这是一个很大的版本更新,带来大量的功能,以及接近最终的产品交付质量,不过,这并不意味着可以在生产环境使用了,正式发布RC版本是在8月份,正式发布RTM版本是在11.9 ,到时.NET正式完成.NET Framwork和.NET Core以及Mono的功能统一。
新产品功能主要包括:
- System.Text.Json support for IAsyncEnumerable
- System.Text.Json: Writable DOM Feature
- Microsoft.Extensions.Logging compile-time source generator
- System.Linq enhancements
- Significantly improved FileStream performance on Windows
- Enhanced Date, Time and Time Zone support
- CodeGen
- .NET Diagnostics: EventPipe for Mono and Improved EventPipe Performance
- IL trimming
- Single-file publishing
- CLI install of .NET 6 SDK Optional Workloads
- Built-in SDK version checking
- CLI Templates (dotnet new)
- .NET MAUI或多平台应用UI :允许开发人员构建适用于Windows、MacOS、ios 和android的应用程序,共享单一代码库和模板。
- ASP.NET Blazor混合应用程序:帮助开发人员构建基于Web的跨平台桌面体验,从而利用本机设备功能。
- 对ARM的加强支持: 包括 Silicon 和ARM64支持。
.NET 6 还有一个功能的主题网站:https://themesof.net/
- 吸引新力量:新的开发人员和学生-- -- 在 Visual Studio 产品中提供有意简化的体验,具有清晰的文档、更简单的代码模型,需要学习的文件和概念更少,以及部署人工制品以测试和生产环境的直观路径。
- .NET 拥有出色的客户端应用开发体验- 提供跨平台客户端应用基础,无缝地迎合桌面、移动和 Web 开发人员,并构建和扩展 Blazor 和 Xamarin 等现有应用程序类型。
- .NET 被公认为构建引人注目的云原生应用框架-- 提供基本的云原生功能,主要针对性能和可观测性,改进与云原生和容器生态系统的集成,以及展示 .NET 与关键云原生组件(yarp)。
- 企业和 LTS -- 提供更简单、更可预测的模型,用于使用 .NET 和任务关键应用程序,并更好地满足大型企业和政府客户的需求。
- 通过提高质量、信心和支持来发展 .NET 生态系统-- 建立长期社区协作,旨在将社区开发人员提升到与 类似Microsoft 的水平,并且(另一方面)提供新的功能和体验,使企业开发人员更容易依赖社区开源项目的库,这些项目不一定附属于或由大公司支持。
- 提高 .NET 开发人员的内循环性能- 提供开发人员的生产力改进,包括提高构建性能、热重启和热重新加载。
- 使用运行时间执行信息 (PGO) 改进启动和吞吐量- 提供基于运行时间信息的改进性能的新模型,可用于更快的启动、更高的吞吐量和更小的二进制文件。
- 满足开发人员的期望-- 根据反馈对 .NET 产品进行改进,并启用具有现有功能的新方案。
.NET 6 Preview4 全面提高了.NET平台的性能,从开发阶段的热重载调试体验,到发布部署的AOT的全面支持。热重新加载是一种新的体验,使您能够在应用运行时对应用的源代码进行编辑,而无需手动暂停应用或点击断点。热重新加载通过减少重新启动运行应用所需的次数来提高开发人员的生产力,Preview4 热重新加载适用于许多类型的应用,如 WPF、Windows Form、WinUI、ASP.NET、控制台应用程序和其他在 CoreCLR 运行时间之上运行的框架。还在努力将这项技术引入 Web Assembly、iOS 和 Android 应用程序,这些应用在 Mono 之上运行,还需要继续打磨(稍后将进行预览)。
关于 .NET 6 的信息可以在Build 2021 的这个Session找到,已经可以回看了 .NET 6 deep dive; what's new and what's coming.