# Markdown 源码 使用 `dever new --markdown` 获得经过验证的模板;不要只把任意 Markdown 中的代码围栏改名当作完整程序。 文件后缀 `.dever.md`;编译器只编译顶层 `dever` 或 `typescript dever` 围栏,且校验说明与代码合同。普通 `.md` 不是源码,两种源码格式的类型、目录、访问、权限约束一致。 - 每个文件一个一级标题,随后写用途、包、公开类型、公开方法、使用;空项写“无”。包说明来自路径,不是源码 package 声明。 - 每个逻辑声明有自己的二级标题、用途和唯一代码块,一级标题下不直接放源码。 - 类型写 `- 类型:` 与字段/分支说明;函数写 `- 函数:`、输入、输出,名称、类型、顺序与代码一致。每个字段说明包含非空中文用途。 - 同名同参数数量的所有分句放同一章节、同一围栏;不同签名或类型分开。 - API 写 `- 声明:cmd greet`、`post publish`、`rest model` 等,与代码一致,不虚构公开方法。 - App 自动公开其类型/函数;Domain、Adapter、API 和测试没有公开方法。调用清单隐藏 app role 和 app topic。 - 测试同样需要完整说明,唯一入口仍是文件同名零输入零输出函数。 维护源码与说明后一起跑 fmt --check、check。完整声明说明协议见官方核心仓库同版本 MARKDOWN-SYNTAX.md。