Clean TypeScript 是一套面向 TypeScript 开发的代码规范与最佳实践,来源于 academind/ai-config。它的核心目标不是增加类型系统的仪式感,而是把 TypeScript 当作提升代码正确性和可读性的工具,让类型真正减少缺陷和认知负担。
用途 这套规范用于指导日常 TypeScript 代码的编写与评审,帮助开发者形成一致、可维护的类型风格。它强调类型应当解释意图,如果某个类型难以理解,那它很可能本身就是错误的。整体取向是:可维护性优先于理论上的完备性。
主要能力与规则 在类型哲学上,它主张优先使用显式、可读的类型,而不是炫技式或过度泛化的类型;避免 any 和不安全的类型断言;在必须使用宽泛类型时,用 unknown 替代 any;当类型推断清晰且稳定时,允许让 TypeScript 自行推断。
在类型与接口上,它建议大多数场景优先使用 type 别名,interface 主要用于公开、可扩展的对象形状;类型应保持小巧、可组合、命名清晰。
在函数与 API 上,公开函数优先显式声明返回类型;除非能实质性改善 API,否则避免函数重载;函数签名应保持简单、可预测。
在空值与安全上,要求显式处理 null 和 undefined;除最后手段外,不要依赖非空断言(!);优先通过控制流和类型守卫进行收窄。
在枚举与常量上,避免使用 enum,优先使用联合类型或 as const 对象,以保持运行时输出可预测且最小。
在错误处理上,要求显式类型化错误和错误状态;在合适场景优先返回结果对象或类型化错误,而不是抛出异常;不要把失败模式隐藏在宽泛的类型之后。
使用方式 资料中未提供具体的安装命令、配置方式或集成步骤,暂未提供。该内容以规范文本形式呈现,可作为编码约定参考。
适用场景 适用于使用 TypeScript 进行开发、并希望统一类型风格、减少 any 滥用、提升代码可读性与可维护性的团队或个人项目。
限制 资料未说明其支持的编辑器、构建工具、TypeScript 版本或自动化检查方式,暂未提供。