大型项目产品功能庞大、参与人员多、周期较长,造成代码质量和可维护性要求较高。这需要在开发阶段加入定期的代码审核机制,可通过人工code review及代码走查工具来完成。人工Code Review耗时量大,对review人员的审查能力要求高,所以加入代码定期自动化审查就更适合,不过缺点是代码走查是做不到人工review的业务逻辑验证。
C#代码审查工具选型
对于c#代码审查的工具比较多,常见的有FXCop, StyleCop, Sonar。不同工具的优势及使用场景各有不同:
FxCop: 微软的代码分析工具,以微软内部的.NET规范为参照,通过分析编译好的dll文件得到错误信息
StyleCop: 微软的代码分析工具,以微软内部的.NET规范为参照,通过代码静态扫描的方式分析源代码
Sonar: 代码质量管理平台,通过MSBuild方式分析代码的不规范及缺陷,并将分析结果直接显示在Web页面上
Fxcop和styleCop属于小工具类,安装方便,在开发阶段对代码的规范有很好的帮助,偏开发人员使用。Sonar属于分析平台类,需要单独搭建服务器进行分析的结果的保存及展示,偏测试及管理人员使用。所以项目进行过程中可搭配使用,开发人员可选择Fxcop或styleCop小工具进行代码的自我质量把控,项目管理人员可通过Sonar来进行质量管理的分析及分配。
接下来几篇将重点介绍Sonar的搭建和使用,对于FxCop和StyleCop使用比较简便,可自行学习使用。