SuperAPI AI 工具集

golang-best-practices

编程与开发

查看项目

更新于 10-16 00:04

技能介绍

用途:这是一个 Go 代码审查元技能(v2.0.0),用于对 Go 代码库做完整审计、上线前评审、未知问题排查和综合重构。它本身不直接给规则,而是协调 5 个专项技能:并发安全(12 条规则,覆盖 goroutine、channel、竞态、死锁)、整洁架构(9 条规则,覆盖分层、依赖规则、gRPC 模式)、错误处理(7 条规则,覆盖错误包装、context、nil 检查)、设计模式(13 条规则,覆盖代码坏味、重构、GoF 模式)、地道 Go(6 条规则,覆盖 Go 惯用法、接口、指针)。

主要能力:规则按优先级分为四类——Critical(8 条,如用 %w 包装错误、避免循环中 defer、context 创建后 defer cancel()、goroutine 必须有退出条件、共享状态加锁、channel 成对收发、由发送方关闭 channel)、High(14 条,如指针接收者、context 传递、errors.Is/As、接口 nil 判断、限制 goroutine 数量、避免闭包捕获循环变量、WaitGroup 配对、保持交付层与数据层薄、依赖注入、事务放在 usecase)、Medium(21 条,如接口保持小于 5 个方法、接受接口返回结构体、避免指针滥用、定向 channel、合理缓冲、避免 select 忙等、消除基本类型偏执、参数对象、策略模式替代类型 switch、装饰器中间件、迪米特法则)、Architecture(5 条,如领域层不得导入基础设施、依赖接口而非具体类型、仓储只做 CRUD、usecase 编排而实体决策、接口隔离)。

使用方式:审查时先读代码文件,按优先级从 Critical 开始逐条比对规则,指出具体行号与解释,并给出修正示例;重构时先识别代码坏味,套用对应规则修复,再跑测试确认无回归。可整体审查(“Review my Go code”“Audit this Go service”),也可只触发专项技能(“Check for race conditions”对应并发安全,“Audit architecture”对应整洁架构,“Review error handling”对应错误处理,“Refactor this code”对应设计模式,“Is this idiomatic Go?”对应地道 Go)。详细规则位于 rules/ 目录(如 rules/critical-error-wrapping.md、rules/high-pointer-receiver.md),深入参考见 references/concurrency-deep-dive.md、references/error-handling-guide.md、references/testing-strategies.md。

适用场景与限制:适合 gRPC/usecase/repository 架构的 Go 服务审查与重构。资料未提供安装命令、收费方式、平台支持与具体运行环境,这些暂未提供;规则基于公开的 Go 权威资料整理,实际效果取决于代码上下文。