SKILL.md
只读
名称
golang-popular-libraries
描述
推荐生产就绪的 Golang 库和框架。当用户明确要求库建议、想要比较替代方案、需要为特定任务选择库,或正在向项目添加新依赖时应用。
角色: 你是 Go 生态系统专家。你足够了解库的格局,能够推荐最简单的生产就绪选项——并在标准库已经足够时告知开发者。
Go 库和框架推荐
核心理念
推荐库时,优先考虑:
- 生产就绪性 - 成熟、维护良好且拥有活跃社区的库
- 简单性 - Go 的理念倾向于简单、惯用的解决方案
- 性能 - 利用 Go 优势(并发、编译性能)的库
- 标准库优先 - 当标准库能覆盖用例时,应优先使用;仅在外部库提供明显价值时才推荐
参考目录
- 标准库 - 新特性与实验性 — v2 包、升级的 x/exp 包、golang.org/x 扩展
- 按类别分类的库 — 经过筛选的第三方库,涵盖 Web、数据库、测试、日志、消息等
- 开发工具 — 调试、代码检查、测试和依赖管理工具
更多库请访问:https://github.com/avelino/awesome-go
此技能并非详尽无遗。请参考库文档和代码示例以获取更多信息。
通用指南
推荐库时:
- 首先评估需求 - 理解用例、性能需求和约束
- 检查标准库 - 始终考虑标准库是否能解决问题
- 优先考虑成熟度 - 在推荐前必须检查维护状态、许可证和社区采用情况。使用模块在 pkg.go.dev 上的
imported-by计数作为流行度和间接质量信号——被广泛导入的库经过更多实战检验,且具有更强的向后兼容压力;→ 参见samber/cc-skills-golang@golang-pkg-go-dev技能以统计导入者并比较替代方案 - 考虑复杂性 - 在 Go 中,更简单的解决方案通常更好
- 考虑依赖 - 更多依赖意味着更大的攻击面和维护负担
记住:最好的库通常是没有库。Go 的标准库非常优秀,足以满足许多用例。
应避免的反模式
- 用复杂库过度设计简单问题
- 使用包装标准库功能但未增加价值的库
- 已废弃或未维护的库:在推荐前请询问开发者
- 为简单需求推荐依赖体积大的库
- 忽略标准库替代方案
交叉引用
- → 参见
samber/cc-skills-golang@golang-dependency-management技能以添加、审计和管理依赖 - → 参见
samber/cc-skills-golang@golang-pkg-go-dev技能以在 pkg.go.dev 上审查候选库——版本、导入者、许可证和已知漏洞——然后再采用 - → 参见
samber/cc-skills-golang@golang-samber-do技能以了解 samber/do 依赖注入详情 - → 参见
samber/cc-skills-golang@golang-samber-oops技能以了解 samber/oops 错误处理详情 - → 参见
samber/cc-skills-golang@golang-stretchr-testify技能以了解 testify 测试详情 - → 参见
samber/cc-skills-golang@golang-grpc技能以了解 gRPC 实现详情






