圈复杂度:
- 圈复杂度是用来衡量一个模块判定结构的复杂程度,数量上表现为独立路径的条数。
- 独立路径就是在控制流程图中从起点到终点的一条回路。
- 控制流程图CFG, Control flow graph),是一个过程或程序的抽象表现。
- 常见的控制流程图:
- 圈复杂度的计算方法:
V = E – N + 2
V:圈复杂度
E:控制流程图的路径数量
N:节点数量
- 小结:
- if else ,switch case 等判断语句会增加圈复杂度,导致代码复杂,不方便维护。
- 以后写代码按照制定的代码规范来,同时避免写 if,for 多层嵌套的代码。
- 写完代码可以用圈复杂度来检测代码的质量,圈复杂度高的代码需要重构。
- 圈复杂度只是衡量代码判定结构的复杂程度,不代表圈复杂度低的代码质量就好,但是圈复杂度高的代码肯定不好。