此文章由机器翻译。

编辑寄语

对此进行分析

Michael Desmond

Michael Desmond在这个月的 MSDN 杂志,托管语言团队 Alex Turner 微软高级项目经理写了关于新的分析器功能在 Visual Studio 2015 预览和.NET 编译器平台 (以前被代号"罗斯林")。他的特点,"添加代码修复到您 Roslyn 分析器,"是实际上的第二次的新的分析仪功能的两部分探讨。第一部分,"使用 Roslyn 到写活代码分析器为您 API"(msdn.microsoft.com/magazine/dn879356),出现在 Visual Studio 2015 年和微软 Azure 上个月的特殊问题。

还有一个原因,我们在这个话题运行多篇文章。正如特纳所指出,添加到 Visual Studio 2015 年诊断分析仪改变了游戏规则,对于开发人员来说,启用实时反馈有关检测到的代码问题,当您键入。更重要的是,分析仪可以提供特定于正在使用的 Api 的自定义指南。启用并跨的编码环境强制实施最佳做法的机会非常有说服力,并承诺帮助消除许多常见的缺陷和瘟疫代码将生成今天的错误。Azure 代码分析软件包是一个典型的例子。包提供了一套检测可以损害的可扩展性、 可靠性和安全性的云应用程序的代码问题的规则。

这是从传统的代码分析,可以只去在生成时对代码工作迈出的一大步。正如特纳所说,来自开发商的响应一直"了不起"。"社区已经建立了开放源码分析仪项目在 GitHub 代码破解者,现在有超过 40 的诊断规则和超过 300 即属等。不坏在预览中仍然是一个 Visual Studio 2015 功能,"特纳说。

帮助刺激早日通过是由微软决定依靠 NuGet 程序包管理。特纳说: 他希望看到开发团队使用 NuGet,不只是为了下载外部的包,但为了使私人包服务器可以管理的内部图书馆。经过授权的用户可以发现这些库,并和他们一起分发分析仪。

"你分析仪检测到的每一个问题是一个少电子邮件,你会从团队使用您的库,这有助于您的团队节省时间和重点放在发展,"特纳说。

周围分析仪存在的一个误解是开发人员必须是编译器或语言专家来写下它们。特纳讲述了最近的新兵训练营会议在哪里他出发与会者打造分析仪后 90 分钟谈话。

"在第一次两个小时内,他们就已经写 10 有意义的分析仪,那个作出肯定的敏感信息,如连接字符串或密码不要到头来在字符串文本中偶然情况下,"他说。"罗斯林轻松地为每个开发团队对强制执行的写入自定义代码分析自己的编码实践和业务规则,之前的问题使它在代码评审"。

对于那些开始使用 Visual Studio 2015 年分析仪功能,特纳建议开发人员开始简单。实现的每个规则的简化的版本和建立出来在增量。投资回收期将很快发生,他说,因为开发人员通常可以捕捉 80%的情况下,他们希望陷阱少于 100 行代码。

"一旦你有了一个成功的分析器,是笼子发出真正的问题,继续挖开始抓捕任何特殊的情况下,您可以通过滑,"特纳补充道。"分析仪不需要完美,开始存钱你团队大量的调试时间。"


Michael Desmond 是 MSDN 杂志总编辑。