关于 principle-boundary-discipline
Boundary Discipline 是一项开发技能,指导在系统边界处理验证、类型收窄和错误,并将业务逻辑设计为纯函数、让外层保持精简。这样内部代码可依赖类型化数据。
主要功能
- 01在系统边界进行验证
- 02将原始数据解析为领域类型
- 03保持业务逻辑纯粹
- 04让外层保持精简机械
- 05避免内部重复检查
适用场景
- 01设计 CLI 输入验证
- 02组织配置解析
- 03分离 API 解析与领域逻辑
- 04减少重复防御式检查
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ cursor/ plugins --skill principle-boundary-discipline安装后在 Claude Code 中输入/principle-boundary-discipline确认已加载。
详细介绍
边界纪律
在系统边界处进行验证、类型收窄和错误处理。对内部代码一概信任。业务逻辑放在纯函数中。外壳应保持轻薄且机械化。
原因: 分散的验证既冗杂又重复,还会带来虚假的安全感。不要把逻辑放进框架接线代码中,这样就能脱离框架进行测试。
模式:
- 在边界处(CLI 参数、配置文件、外部 API、网络协议):进行验证、返回错误并采取防御性处理。
- 在系统内部: 使用类型化数据、传递错误,不重复验证。信任类型。
- 跨越边界时。 暴露领域概念,而不是边界的私有表示。将通用机制留在内部,将特定策略放在边缘。
应用:
验证和错误处理:
- 在解析时(边界处)验证配置,而不是在业务逻辑中验证
- 在边界处将原始数据解析为领域类型
- 不要通过公共接口重新导出传输、存储、框架或线协议类型
- 如果边界处已完成验证,就不要在调用链深处重复进行 nil 检查
代码组织:
- 业务逻辑放在不依赖框架的纯函数中
- 解析函数:将原始字节纯粹转换为类型化状态
- 提示词构建:输入结构化状态,输出字符串
- 评分和评估:将状态纯粹转换为结果
检验方法:
- “这些数据此刻是否正在跨越系统边界?”如果不是,验证就是多余的。
- “这能否成为一个由外壳直接调用的纯函数?”如果可以,就将其提取出来。
评论
支持 Markdown