SuperAPI AI 工具集

Single Purpose Variables

通用与其它

查看项目

更新于 10-16 02:35

技能介绍

用途:该技能要求每个变量只代表一件事,禁止同一变量在不同场景承担不同用途,也禁止用特殊值隐含额外含义,以提升代码可读性、减少误解。

主要能力与规则:

  • 消除混合耦合:例如计数变量有时表示页数、有时用 -1 表示出错,属于典型违规。资料建议改为返回成功标志与计数,或直接抛出异常,让变量始终只表示计数。
  • 避免隐藏含义:如 id > 500000 表示欠款、负数字节数表示磁盘号等,应拆分为独立布尔变量或独立数值变量。
  • 区分合法复用:同一含义、同一用途的重复使用(如 total_sales 参与多个相关计算)可以接受;而 temp 先表示判别式、后又用于交换,属于不同用途,应改用 discriminant、old_root 等明确名称。
  • 危险信号:变量类型含义漂移、特殊值有隐藏含义、temp/result/value 被反复用于无关目的、需要靠注释或记忆判断当前含义。

使用方式:在编写或审查代码时,为每个用途创建单独且命名清晰的变量;出错状态用独立布尔变量或异常表达,不要塞进计数、ID 或字节数等变量中。

适用场景:通用代码审查与重构、教学示例、需要提升可维护性的项目。

限制:资料未提供具体安装命令、平台支持、收费方式或评测数据;相关实践依据 Code Complete 的论述,效果描述主要来自该技能文档内部说明。