圈复杂度越高,代码就越难复杂难维护。坑就越大。。。
从1开始,一直往下通过程序。
一但遇到以下关键字,或者其它同类的词,就加1:if,while,repeat,for,and,or。...例如下面这个函数,圈复杂度为1,意味着代码只有一条路径。...:
def add(a, b):
return a + b
对于有一条分支的代码,它的圈复杂度为 2 ,比如下面递归计算阶乘的代码:
def factorial(n):
if n == 0:...圈复杂度 代码状况 可测性 维护成本
1-10 清晰、结构化 高 低
11-20 复杂 中 中
21-30 非常复杂 低 高
>30 不可读 不可测 非常高
如何测量程序的圈复杂度?...OC
Lizard 免费 Windows/Linux/Mac C/C++,Java,C#,JS,OC/C++,Swift,Python,Ruby,TTCN-3,PHP,Scala,GDScript
代码质量优化