什么是圈复杂度
圈复杂度(Cyclomatic complexity)是一种代码复杂度的衡量标准,圈复杂度用来衡量一个模块判定结构的复杂程度,数量上表现为独立线性路径条数,即合理的预防错误所需测试的最少路径条数。圈复杂度大说明程序代码可能质量低且难于测试和维护,根据经验,程序的可能错误和高的圈复杂度有着很大关系。
一般指代码中的分支数量,比如有一个if分支,代码复杂度就加1,如果if中有“||”或者“&&”那么代码复杂度就加2,for和while同理。
最佳实践
战略实践
核心思想
1,业务为核心,不能单纯的想着降低复杂度,应该是业务上简化逻辑,然后自然而然的降低复杂度 
 2,复杂的封装或转换逻辑挪到一个转换中心去统一管理,降低耦合 
 3,多方法代替一个方法的大量代码,也就是低耦合,高内聚
战术实践
多if-else语句
多if分支语句可以采用switch - case来代替(尤其是条件较为明确的)
修改前圈复杂度为5
  if (item.Type==1) {  
            tenantType = "正式租户";
            }
            else if (item.Type == 1)
            {
            tenantType = "测试租户";
            }
            else if (item.Type == 1)
            {
            tenantType = "最佳实践租户";
             }修改后圈复杂度为3
 switch (item.Type)
            {
                case 1:
                    tenantType = "正式租户";
                    break;
                case 2:
                    tenantType = "测试租户";
                    break;
                case 3:
                    tenantType = "最佳实践租户";
                    break;
            }
 京公网安备 11010502036488号
京公网安备 11010502036488号