C#源代码生成器可提高.NET 5的性能

Microsoft已推出一种名为Source Generators的C#编译器功能的预览,该功能可以检查程序并生成可以添加到编译中的源文件。 微软表示,Source Generators可以在许多情况下提高性能。

4月29日发布的Source Generator是一段代码(.NET Standard 2.0程序集),它在编译期间运行,可以检查程序以生成其他文件,这些文件与其余代码一起编译。

[ 同样在InfoWorld上:我们不像以前那样编写代码的5个原因 ]

源代码生成器使C#开发人员可以执行以下操作:

  • 检索表示所有正在编译的用户代码的编译。 可以检查此对象,并且开发人员可以编写与语法和语义模型一起使用的代码,以供正在编译的代码使用,例如使用分析器。
  • 生成要在编译期间添加到编译对象的C#源文件,并在编译代码时提供其他源代码作为输入。

微软表示,可以检查用户代码以及编译器在编译过程中建立的丰富元数据,并根据分析的数据将C#代码发回到同一编译中。 源生成器类似于检查C#或Visual Basic代码的Roslyn分析器,它们充当可以发出C#源代码的分析器。

源代码生成器将作为C#9的一部分提供。 该公司提供了《 源代码生成器食谱》和《 源代码生成器》设计文档 ,以帮助开发人员入门。

受益于源生成器的方案包括:

  • 执行运行时反射。 例如,通过在应用启动时分析代码,控制器发现阶段可能会在编译时发生,从而缩短启动时间。
  • 为了避免使用“字符串型” API,例如控制器和Razor页面之间的ASP.NET Core路由如何工作。 可以对路由进行强类型化,并在编译时生成所需的字符串。
  • 帮助消除基于链接器和提前进行编译优化的障碍。

要访问Source Generator,开发人员必须安装最新的.NET 5预览版和最新的Visual Studio预览版

From: https://www.infoworld.com/article/3541300/csharp-source-generators-to-boost-performance-in-net-5.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值