Files
Endorphin-Document/authoring/rules/DOC-013.md
T

44 lines
1.7 KiB
Markdown

# DOC-013 用可观察契约说明语义
分类:语义与边界。级别:核心。本规则是项目写作约定,不是语言语义。
## 规则
语法说明应明确输入、名称或类型约束、结果、依赖与相关阶段,而不止列关键字。
## 原因
读者需要理解写法意味着什么,系统实现也需要可核对的行为要求。
## 执行方法
1. 对函数说明参数、返回类型与结果;对组件说明参数与子节点约束。
2. 只有阶段差异影响理解时才专门说明 Preflight 与 inflight,避免每段重复阶段定义。
3. 区分算术结合、调用参数求值顺序和数据依赖;未定义的语义不由示例补出。
## 改写对照
问题写法:只写 function 后面跟名字与括号。
推荐做法:同时说明输入类型、返回值及依赖结果何时可被使用。
以上是说明写作差异的项目例子,不新增语言能力。
## 验收
- [ ] 语法、规则和示例结果相互一致。
- [ ] 有可检查的效果。
- [ ] 没有用底层机制替代语言契约。
## 具体应用
逐项说明形式、输入、结果、依赖、效果和必要的阶段边界;字段根据对象选择。use 应说明引用效果,不强填函数返回值;组件应说明子节点和排列。
详见[契约字段](../references/semantic-contracts.md)与[导入参考](../examples/EX-02.md)。
## 依据与边界
[SRC-02](../research/SRC-02.md)、[SRC-06](../research/SRC-06.md)。来源页记录观察与分析,本页的执行方法是针对项目的综合建议,不宣称由某一原文逐项规定。
[规则索引](../README.md#规则索引) · [检查清单](../checklist.md)