一些在工作中经常使用的一些工具。如果有什么推荐的,也欢迎在评论中提供。这个列表后续会持续更新
HTTP工具
- curlie - httpie-like 工具,底层是curl
- lego - Let’s Encrypt证书工具
- mkcert - 方便导入本地证书
- paw.cloud - 原生的macOS HTTP调试工具,现在每年都会免费送,有兴趣关注一下
编译工具
- go-task - 我用来替代Makefile,并无什么特殊必要,主要是不想写Makefile
代码质量
- golangci-lint - 感觉无需介绍了,集成了很多实用工具,重复的就不列举了
- pre-commit - 提交前检查代码质量,比如代码风格,缩进,空格等等
- dcd - 查找代码中的重复代码
代码统计
- scc - 高性能统计代码行数
图表工具
- go-diagrams - 使用Go语言描述系统架构图
- ndiag - 如果不想用Go描述,也可以选择用YAML描述系统架构
- draft - 另外一个用YAML描述的工具,风格不一样
- k8sviz - 你也可以从现成的K8s环境中生成系统架构图
- archview - 通过代码中注释生成应用内部分层结构
- go-plantuml - 根据Go代码生成结构体的PlantUML图
- goplantuml - 另外一种生成PlantUML的工具
- go-erd - 不想用PlantUML也可以换这种风格
- asciiflow - 可以画ASCII图,ASCII图好处是可以放在代码里,如果你愿意的话
- sequence - 嫌弃asciiflow比较原始,做时序图的时候可以用这个
- mermaid-js - 方便集成在网页中,也可以导出成图片
- kroki - 上面没提到的图类型的生成?看看这个
IaC
- pulumi - Terraform业界比较常用,不过要学习HCL比较蛋疼,我个人比较喜欢pulumi,可以选择自己的习惯的语言,tf-cdk目前还比较初级。