Visual Studio中的代码度量计算

时间:2010-01-09 14:56:43

标签: c# visual-studio-2008 code-metrics maintainability cyclomatic-complexity

以下

的代码指标计算的首选分数范围是多少
  • 可维护性指数
  • Cyclomatic Complexity
  • 继承深度
  • 班级耦合

1 个答案:

答案 0 :(得分:63)

理论上的最佳值是:

  • 可维护性指数:100。值越高表示可维护性越好。
  • Cyclomatic复杂性:1。代码可以采用的不同路径的数量。
  • 继承深度:1。继承树中这个类定义的数量,不包括接口。
  • 类耦合:0。此实体所依赖的其他实体的数量。

虽然可以做一些一般性陈述,但没有硬性和快速的“好”范围。

  • 具有高的每方法圈复杂性表明方法变得过于复杂。
  • 继承深度大于3或4(属于您自己的类,而不是框架的)是一个麻烦的迹象,表明您可能不必要地表示不属于您软件领域的抽象关系。
  • 低级耦合通常更好,但有时它是不可避免的。在可能的范围内,您绝对应该最小化命名空间之间的依赖关系,因为这里依赖的原因要少得多。

一个项目只能通过基本上什么都不做而无用而同时达到所有四个值:什么也不做,什么都不依赖的软件肯定是可维护的,但不能很好地利用客户资金。

因此,所有复杂性都是一种权衡:额外的所谓固有复杂性将更复杂的代码编码到程序中,允许它扩展功能集。您希望避免的是由于实施不佳或缺陷而导致的意外复杂性。