用途:为编写、审查、重构 Go 代码以及设计 Go 包/模块提供惯用模式与最佳实践参考。
主要能力:
- 核心原则:简洁清晰、让零值可用、接受接口返回结构体。
- 错误处理:用 fmt.Errorf 与 %w 包装上下文、自定义错误类型、哨兵错误、errors.Is/errors.As 检查,不忽略错误。
- 并发:worker pool、context 取消与超时、优雅关闭、errgroup 协调 goroutine、避免 goroutine 泄漏。
- 接口设计:小而专注的接口、在使用方定义接口、类型断言实现可选行为。
- 包组织:标准项目布局、包命名规范、避免包级可变状态。
- 结构体设计:函数式选项模式、嵌入实现组合。
- 内存与性能:预分配切片、sync.Pool、用 strings.Builder 或 strings.Join 避免循环字符串拼接。
- 工具链:go build/run/test(含 -race、-cover)、go vet、staticcheck、golangci-lint、go mod tidy/verify、gofmt、goimports。
使用方式:在编写新 Go 代码、审查或重构现有代码、设计包与模块时按需参考对应模式;命令保持原样执行,如 go test -race ./...、golangci-lint run。
适用场景:Go 项目日常开发、代码评审、并发与错误处理设计、性能优化、项目结构规划。
限制:资料未提供安装方式、收费信息、平台支持或效果数据,暂未提供。