常用Tool
1. golps
golps 是LSP(Language Server Protocol)的一个语言端(Server)实现,是针对 Go 语言的LSP实现。定义了在编辑器或IDE中与语言服务器之间使用的协议,该语言服务器提供诸如自动完成,转到定义,查找所有引用等语言功能。语言服务器索引格式(LSIF,其发音类似于“ else if”)的目标是支持开发工具或Web UI中的富代码导航,而不需要源代码的本地副本。
- 自动代码补全:根据当前输入的内容,自动生成可能的选项供用户选择。
- 自动导航:根据用户光标位置,显示可以跳转的函数、变量定义位置。
- 代码重构:可以快速从已有的代码块中进行抽取函数、变量声明提取等操作。
- 代码格式化:自动调整代码的缩进、空格、回车等格式。
- 语法检查:检查代码是否符合Go语言规范,并提示可能的错误。
- 错误提示:当代码中存在错误时,快速向用户反馈错误信息并给出解决方案。
- 自动生成代码:能够自动生成一些常见的代码,如函数、结构体等。
2. gotests
该工具可以自动生成针对Go代码中函数的单元测试代码。可以极大地提高我们的开发效率和代码质量。
3. gomodifytags
该工具可以快速修改结构体字段tag的值。比如对于JSON或YAML序列化时需要使用的 tag,可以直接使用该工具修改。
4. impl
该工具可以根据接口自动生成对应的方法模板。可以让我们更加方便地实现某些接口。
5. goplay
该工具可以让我们在浏览器上运行 Go 代码片段并查看输出结果。非常适合写一些简短的测试代码。
6. dlv
该工具是 Go 语言的调试器,可以帮助我们在开发过程中快速定位问题。
7. staticcheck
该工具可以检查 Go 代码中的静态错误,包括数据竞争,错误的 API 用法等等,可以帮助我们减少一些常见的错误。