SuperAPI AI 工具集

cc-control-flow-quality

编程与开发

查看项目

更新于 10-16 08:39

技能介绍

用途:审计并重构代码控制流,依据《Code Complete》的嵌套、圈复杂度、循环设计、卫语句和布尔简化规则给出改进建议。

主要能力与阈值:最大嵌套深度 3 层(Yourdon 1986a);McCabe 复杂度超过 10 个判定点即需重新设计(McCabe 1976);50–80% 的 if 需要考虑 else(Elshoff 1976);带出口循环的可理解性比顶部/底部测试好 25%(Soloway 1983);心智实体上限 5–9 项(Miller 1956)。

核心模式:深层嵌套改用卫语句提前返回;复杂布尔表达式提取为命名中间变量;无意义循环索引改为描述性名称;单次使用的测试提取为命名布尔函数;数值比较按数轴顺序书写;循环出口用 while(true)+break 消除重复读取。

决策指引:迭代次数已知用 for/foreach,否则用 while;循环体至少执行一次则测试放末尾;容器简单遍历用 foreach;需从中间退出用带出口循环。减少嵌套的手段包括卫语句、提取例程、合并嵌套 if、改用 case/switch、多态、表驱动方法。

McCabe 复杂度:从 1 开始,每个 if/while/for/and/or 及 case 分支加 1。0–5 通常没问题;6–10 开始简化;10–20 需强理由并考虑提取;20+ 必须重构。10–20 区间仅在扁平分派、每个 case ≤3 行、分支穷尽且认知复杂度低时可接受。

使用方式:技能内引用 ${CLAUDE_PLUGIN_ROOT}/references/cc-foundations.md 获取共享阈值与内聚/耦合词汇,并读取 ${CLAUDE_SKILL_DIR}/checklists/conditionals-and-structure.md 与 ${CLAUDE_SKILL_DIR}/checklists/loops-and-advanced.md 获取完整审计清单。

限制:资料未提供具体安装命令、收费方式、支持平台或运行环境要求,这些信息暂未提供。