10

在声纳中,对于特定的 Java 类,我看到:

Complexity:     830

Complexity /method:     8,1

您如何解释这两个指标之间的区别?

“复杂性”是类复杂性吗?

一个类应该处于的最大复杂度是多少?我知道方法复杂度应该小于 10,但是一个类应该符合的最大类复杂度数是多少?

谢谢。

编辑

我还查看了文件中的 Cyclomatic-Complexity 规则违规。

对于许多方法,声纳用不同的复杂性数字(法语)说:

“La complexité cyclomatique de la classe est de 28 alors que le maximum autorisé est de 10。”

用英语 :

“类圈复杂度为 28,但允许的最大值为 10”。

我不明白为什么它说“类圈复杂度”,因为它似乎是“方法圈复杂度”。

此外,所讨论的类不会出现在按平均复杂度/方法排序的最复杂类的顶部,因为声纳说它只有 8,1 平均方法复杂度。

4

1 回答 1

6

您可以查看我们的“Metric Definitions”Wiki 页面(更具体地说,在“Complexity”部分)了解更多关于 Sonar 中的指标含义的信息。

  • “复杂度”是资源的总复杂度(对于文件 => 文件中定义的每个类的复杂度之和)
  • “复杂度/方法”是“复杂度”除以文件中找到的方法数
  • ...等等其他指标。
于 2012-04-25T15:22:25.707 回答