关于 kotlin-api-design
面向 Kotlin 开发者的 API 设计技能,帮助确定类型、函数和模块的职责,并保持共享代码的语义清晰与平台独立。涵盖值类型、多平台边界和控制流等决策主题。
主要功能
- 01明确领域概念及所属位置
- 02选择函数的合理所有者
- 03检查密封结果映射是否穷尽
- 04按语义设计单字段类型
- 05隔离平台与原生 SDK 细节
适用场景
- 01评审扩展函数或工厂的归属
- 02设计单字段领域类型
- 03划分共享代码与平台实现
- 04检查密封类型分支完整性
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ chrisbanes/ skills --skill kotlin-api-design安装后在 Claude Code 中输入/kotlin-api-design确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/functions.mdmultiplatform-boundaries.mdvalue-classes.md详细介绍
Kotlin API 设计
核心原则
将行为、类型和平台边界放在调用方最容易理解其含义的位置;采用能够保留领域语言和平台独立性的最小公开抽象。
流程
- 确定领域概念、拥有它的类型或模块,以及需要依赖它的调用方。
- 添加扩展函数、工厂、辅助工具或服务层之前,先确定函数的归属。若决定不采用其中某种方式,请指出调用方应改用哪个所属方。
- 审查对密封结果类型的公开映射时,列出调用方可见的每种结果。指出会隐藏某个子类型的兜底
else,并建议为各子类型编写显式分支,以确保契约保持穷尽性并保留智能转换。 - 对单字段领域概念,采用能够保留其语义和互操作契约的最简单类型。
- 让共享代码保持语义层面;将原生 SDK 和平台细节置于接口之后,或置于有充分理由的
expect/actual边界之后。 - 阅读下方所选决策对应的重点参考资料。
- 当公开 API 明确表达领域意图、平台细节留在边缘,且调用方不再依赖没有明确归属的便利抽象时,即可完成。
主题索引
| 信号 | 阅读 |
|---|---|
| 成员函数与顶层函数、扩展函数、工厂、服务或接收者的选择 | 函数归属 |
基本类型沉迷、单字段领域类型、@JvmInline value class、数据类、互操作或 Compose 稳定性 | 值类 |
| 源集、平台服务、原生 SDK、文件、传感器、权限、Compose Multiplatform 互操作或 expect/actual | 多平台边界 |
分支、守卫条件的形态、密封结果映射或兜底 else | Kotlin 控制流 |
评论
支持 Markdown