我喜欢StyleCop的静态代码分析和规则实施.但是,几个关键部门严重缺乏.
添加新规则并未得到官方支持,而且我听到的内容非常困难.
自动"修复"琐碎的规则违规将是很好的!也许不是使用变量命名,而是使用方法排序(静态等),这将节省大量时间.
微软对StyleCop采用"一刀切"的方法具有一定的限制性.我想为我们的内部标准制定一套自定义规则.
那里有这样的商业产品吗?
alt text http://blogs.interakting.co.uk/images/blogs_interakting_co_uk/dominicz/WindowsLiveWriter/MicrosoftStyleCopSourcecodeanalysisforfo_D8EF/styleCopErrors_6.gif
正式或将要正式支持添加规则:
正如所承诺的那样,我们还将发布StyleCop的SDK文档,说明如何编写自定义规则以及如何将该工具集成到自定义构建环境中.SDK文档目前正在进行最终审核,我们希望很快发布.- JasonAll
就我们的"内部"风格而言,我通过禁用一些StyleCop规则而非常接近:
文件头(SA1633-SA-1640)
代码订购(SA1200-SA1202)
要求"这个"(SA1101)
您可以通过修改安装目录中的Settings.StyleCop文件来全局执行此操作,尽管我已经采用了在每个项目的源树的根目录中放置一个文件的方法.
最终效果是我们想要的.有一些"内部"选择可以很好地标记,但即使没有它们,StyleCop也为我们提供了很多价值.
ReSharper的StyleCop可以提供帮助(您需要购买ReSharper,但插件是免费的):
StyleCop for ReSharper现在功能齐全,已达到与StyleCop 4.3的功能相同.
有148个StyleCop规则.
其中38个必须手动修复(通常是因为您必须键入描述性文本或重命名变量).
其余110条规则中的58条由R#Code Cleanup(静音模式)修复.
在剩下的52个中,我们有代码清理规则自动修复所有这些规则.
我们还提供了106个快速修复,为违反110规则的情况提供了上下文菜单修复,可以自动修复
我们还提供了一个"StyleCop友好的ReSharper代码样式共享设置文件",它配置ReSharper以StyleCop友好的方式自动格式化代码.
来自Mono 的Gendarme虽然是开源的,但不是商业的.