2016-03-05 107 views
1

我正在阅读Kent Beck的“TDD by Example”,我不明白为什么他的程序的圈复杂性是分数。圆圈复杂度如何计算?

Table from the book

In Wikipedia复杂性被定义为M = E − N + 2P其中E,N和P是整数。

+1

有CC的四个定义。 :-)看看这里,如果你需要图纸和计算的例子:http://stackoverflow.com/questions/12599942/cyclomatic-complexity-of-ifab-and-cd-and-ifab-or-cd/21658235# 21658235 –

回答

2

我相信这是每种方法的独立圈复杂度的平均值(M = E - N + 2)。我不会去计算它自己,但

  • 大部分所示的方法具有由点没有条件语句演习(肯特消除他们的时候,他也可以),所以他们的圈复杂度是1
  • Bank.rate确实有一个if(第63页)

所以它似乎是合理的,平均只有1以上

+0

是的,我也这么认为。谢谢 :) –