人人都会AI编程

3.3.4 规范注释生成

更新时间:2026-06-29

为提高代码可读性与可维护性,所有公开接口、关键逻辑及复杂算法均需携带符合规范的注释。推荐利用工具自动生成文档,确保格式统一、内容完整。

1. 基本要求

  • 公开类、接口、方法、枚举、常量必须添加文档注释(如 Java 的 /* ... /,Python 的 docstring)。
  • 注释应简洁描述“做什么”而非“怎么做”,避免无意义的废话(如 // 设置名字 优于 // 这是设置名字的方法)。
  • 与代码同步更新,修改逻辑时必须同步修改对应注释。

2. 标准标签
使用标准的文档标签,至少包含以下元素(以 Java 为例):

/**
 * 计算订单折后总价。
 *
 * @param orderId   订单ID,不能为空
 * @param discount  折扣率,取值范围 (0,1]
 * @return 折后金额,保留两位小数
 * @throws IllegalArgumentException 折扣率非法时抛出
 */
public BigDecimal calculateFinalPrice(String orderId, double discount) {
    // ...
}
  • @param:参数说明,包含约束条件(是否可空、取值范围等)。
  • @return:返回值说明,无返回值时省略。
  • @throws / @exception:明确列出可能抛出的受检或非受检异常及触发条件。
  • @see@since@deprecated 等标签按需使用。

3. 自动生成与检查

  • 生成工具:项目统一配置文档生成器(如 Java 的 Javadoc、Python 的 Sphinx、TypeScript 的 TypeDoc),通过 Maven/Gradle 或脚本自动构建 API 文档。
  • 静态检查:将注释缺失或格式不规范作为 CI 流水线的一个检查项(如 Checkstyle、ESLint 的 valid-jsdoc 规则),不合规则阻止合并。
  • 模板提示:IDE 中配置 Live Template,输入 /** 按回车自动补全标签骨架,减少手工输入,降低遗漏风险。

4. 包与模块注释

  • 每个包或模块目录下放置 package-info.javainit.py 等文件,集中描述包职责、设计意图和主要依赖,便于新人快速理解系统结构。

以上规范兼顾人工阅读与工具提取,在团队协作中可显著降低沟通成本,提升接口使用效率。