解释代码要分层
有用的代码解释按层次展开:先说一句话作用,再逐段讲逻辑,然后点出关键细节(边界条件、副作用、并发假设),最后列出潜在问题。按段组织比逐行注释更有效——逐行注释在几十行的函数上会变成又长又浅的复述。提示里还要声明读者水平,否则模型会堆基础知识;不确定的行为应标注「需运行验证」,不要给出笃定断言。
基本信息
| 层次 | 一句话作用 → 逐段逻辑 → 关键细节 → 潜在问题 |
|---|---|
| 组织方式 | 按段而非逐行,避免又长又浅 |
| 读者 | 声明读者水平,避免堆砌基础语法说明 |
| 严谨性 | 不确定的行为标注「需运行验证」 |
典型使用场景
- 接手存量代码:快速搞清楚模块职责与关键分支
- 代码评审前预读:先理解改动意图再评审细节
- 新人培训:解释一段核心逻辑,按段说明配合调用关系
- 故障定位:解释出错路径上的条件判断与副作用
- 知识沉淀:把关键函数的隐式假设写成文档
解释结构模板
解释结构模板
按四段解释下面的代码,读者是熟悉该语言但不了解本模块的工程师:
1) 一句话:这段代码做什么(30 字内)
2) 逐段逻辑:按功能块说明,块与块之间的数据流
3) 关键细节:边界条件、副作用、并发与空值假设
4) 潜在问题:可疑写法与需要验证的行为
# 不确定的行为标注“需运行验证”,不要给出笃定断言
# 涉及浮点比较、时区、编码等有歧义处单独提示
# 只解释代码里能看出的内容,不推测未出现的调用方约束四段的检查点
| 段落 | 内容 | 检查点 |
|---|---|---|
| 一句话 | 功能概括 | 是否是描述行为而非复述语法 |
| 逐段逻辑 | 功能块与数据流 | 是否覆盖全部分支 |
| 关键细节 | 边界、副作用、并发 | 是否提到空值与异常路径 |
| 潜在问题 | 可疑写法 | 是否标注需要验证的结论 |
不限定篇幅时模型倾向逐行注释,输出又长又浅;按段组织并限定每段篇幅更有效。
语义有歧义处(如浮点比较、时区处理)模型可能给出错误断言;关键结论要自行验证后再写入文档。