微软在推动.net 6的可用性方面取得了显著进展,昨晚的build 2021大会上发布了preview4版本,这是一个重要的更新,带来了许多新功能和接近最终产品的质量。不过,这并不意味着可以立即在生产环境中使用。正式发布的rc版本预计在8月份,而rtm版本将于11月9日发布,届时.net将实现.net framework、.net core和mono的功能统一。
新产品功能主要包括:
- System.Text.Json支持IAsyncEnumerable
- System.Text.Json: 可写DOM功能
- Microsoft.Extensions.Logging编译时源生成器
- System.Linq增强功能
- Windows上FileStream性能显著提升
- 增强的日期、时间和时区支持
- CodeGen.NET诊断:Mono的EventPipe和改进的EventPipe性能
- IL修剪
- 单文件发布
- CLI安装.NET 6 SDK可选工作负载
- 内置的SDK版本检查
- CLI模板(dotnet new)
- .NET MAUI或多平台应用UI:允许开发人员为Windows、MacOS、iOS和Android构建应用程序,共享单一代码库和模板
- ASP.NET Blazor混合应用程序:帮助开发人员构建基于Web的跨平台桌面体验,利用本机设备功能
- 对ARM的加强支持:包括Silicon和ARM64支持
.NET 6还有一个功能主题网站:https://www.php.cn/link/2e3d6c85a5e586f5d752a8b75e4794d9
吸引新力量:新的开发人员和学生——在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.