Golang开发者都在使用哪些IDE?

Golang开发者都在使用哪些IDE? 最适合Go语言的集成开发环境是什么?我目前使用LiteIDE…这是最好的选择吗?

21 回复

Sublime

更多关于Golang开发者都在使用哪些IDE?的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


Atom + Go-Plus

Visual Studio Code 搭配 Go 插件

PHPStorm 搭配 GO 插件。绝佳组合

func main() {
    fmt.Println("hello world")
}

我使用 Atom / Go-Plus。选择任何你感到舒适且高效的开发工具即可。

我在大型项目中使用 Visual Studio Code + vscode-go 插件,对于单文件的 Go 测试/演示也会使用 LiteIDE。

我尝试过 vim-go,很喜欢它的"函数内"功能,但发现关闭文件时的各种检查有点烦人。可能还需要再多配置一下……

实际上我之前尝试过LiteIde、Eclipse和Visual Studio Code。在见到Gogland之前,Visual Studio Code一直是我的最爱。

尽管Jetbrains的Gogland目前还处于预览阶段,但值得给它一个机会。

大家好,感谢你们的回复,很抱歉这么晚才回复,我前段时间在度假。我正在使用LiteIDE并且很喜欢它……

// 代码示例
func main() {
    fmt.Println("hello world")
}

Gogland 有一些相当奇怪的小毛病。其中之一是自动补全导入功能总是将新的导入语句放在导入块的底部 😒

我仍然喜欢它出色的代码阅读功能——使用 [Ctrl|Cmd]-B 跳转到定义的功能我已经离不开了。

关键在于选择让你感到舒适并能高效使用的工具。我尝试过 emacs、Atom 和 Visual Studio Code,其中最喜欢的是搭配 vscode-go 插件的 Visual Studio Code。

建议你都尝试一遍,这样就能感受到自己更愿意在哪种开发环境中投入大量时间!😊

JetBrains 刚刚推出了一款专用的 Go IDE 代号为 ‘Gogland’

在过去的两年里,我一直在使用他们为 IntelliJ 开发的 Go 插件。该插件可以与免费的 IntelliJ 社区版一起使用。

根据我使用该插件的经验,切换到 Go IDE 将是一个无需犹豫的决定。

大部分时间我使用自定义的LiteIDE安装(参见Gopei shell项目),配合自定义工具箱来帮助我进行git操作或快速部署项目。有时我也会使用VSCode,特别是为了MSSql插件。

主要开发平台是Ubuntu :innocent:。

尝试过Vim、LiteIDE、Visual Studio Code、IntelliJ和Gogland。不太确定Gogland能做什么免费版IntelliJ做不到的事情……我可能会继续使用Gogland直到他们开始收费,然后再换回去。只能说我是个偶尔写代码的程序员,主要工作是运维支持,写代码主要是为了填补工作缺口。使用IntelliJ或Gogland让我开发速度更快,这要归功于代码补全和参数提示功能。想要查看函数、类型或接口的内部实现——只需按住Alt键就会在新标签页中打开。唯一希望的是IntelliJ/Gogland能少占用些系统资源。

啊,好的,我完全误解了你最初的意思,但这听起来确实像是配置问题。

使用 vim-go 时,如果你想了解 vim-go 的设置,可以查看这个链接:https://github.com/fatih/vim-go#settings

特别是一些设置,比如 let g:go_fmt_fail_silently = 1,如果你想禁用 fmt 命令的错误显示(因为它在格式化时默认会显示错误),以及 let g:go_fmt_autosave = 0,如果你不想在保存时自动执行 fmt

// 代码示例保留原样
func main() {
    fmt.Println("hello world")
}
嗨 @radovskyb

我不认为这是 VIM 的功能 - 基本上我的系统上安装了 nvim,它在语法高亮方面表现相当不错,而且我一直很愉快地在 vim 中运行 ":go fmt main.go" 等命令进行格式化。在另一个系统上,我使用带有 vim-go 的 vim,它在保存文件时似乎会进行某种错误检查。我不确定它只是执行 go fmt,还是也会尝试编译?我通常使用 ZZ 退出,所以发现必须重复操作才能退出 - 有时甚至不止一次。而且有时候我已经修复了问题,它还是会这样!不过我确实喜欢 :GoRun 功能。正如我所说,这可能只是我的配置问题。或许我的 .vimrc 需要彻底重写,我应该重新开始!我还使用 R 和 nvim-r,而且我担心我的 vim/nvim 安装已经变得一团糟。

如果你指的是当你想关闭一个尚未保存的文件时,vim 会进行“自上次更改后未写入”的检查,你可以添加 .vimrc 别名来避免这种情况。

我个人使用 , 键作为我的 <leader> 键,因此我设置了以下两个映射,用于强制关闭文件而不进行这些检查。这样,当我在普通模式或插入模式下输入 ,q 时,vim 会直接退出。(我几乎为所有操作都设置了映射和别名 😛)

nmap <leader>q :q!<CR>
imap <leader>q <esc>:q!<CR>

编辑:我刚刚注意到你提到你使用的是 nvim 而不是普通的 vim。因此,如果你还记得我设置 nvim 时的操作,请将这些映射放在 init.vim 文件中,如果 nvim 仍然使用该文件的话。

嘿,

如果你想了解一些人使用什么,可以阅读这个旧话题 🙂

你为 Go 使用哪些编辑器插件? 技术讨论

继续 最佳依赖管理器 的讨论:

你为 Go 使用什么编辑器(以及什么插件)?

带有 vim-go 的 Vim 非常好,我用了很长时间,但昨天我换到了 Atom(我想是暂时的)并使用了 go-plus。我喜欢这些插件的额外功能(特别是 go-plus 的内联覆盖率),但很难让它们与各种依赖管理器一起工作。

我找到了 一个变通方法 来让 gb、Godeps 和几乎所有依赖管理器与 Atom 一起工作…

就我个人而言,我使用 vimvim-go 插件,以及我常规的一批 vim 编程插件。

我使用Vim配合vim-go插件,以及bash和一些工具如gotab。不过Vim属于编辑器中的特殊类别。其插入模式/命令模式的范式允许快速导航,因为你可以始终保持双手在键盘上,无需触碰方向键或鼠标。但这并非适合所有人。对于使用触控系统的人来说特别方便,而其他人可能觉得这种范式毫无益处。

Atom和Visual Studio Code(不要与Visual Studio混淆)似乎是其他非常流行的编辑器。

关于IDE,有LiteIDE、基于Web的Wide(提供Docker容器)、Eclipse(带有Go插件)以及新的Gogland IDE等。我最近加入了Gogland测试版,但当天就退出了,因为我无法理解Gogland的工作空间理念、运行时配置(这似乎与Eclipse的运行时配置理念类似,我认为相当过度设计)以及GOPATH处理方式。但你的体验可能不同。

由于大多数编辑器和IDE都可以免费使用,我建议测试它们,看看是否符合你的个人工作风格。

为完整起见,这里提供一份支持Go的编辑器和IDE列表


更新 2017-01-21:几天前我再次尝试了Visual Studio Code,想看看自从上次评估(这已经是几个月前了)以来它有何进展,现在我已经被吸引住了。代码补全、查找定义和引用等功能运行得非常顺畅,Vim模式几乎感觉像真的一样。它包含Shell集成,并以优雅的方式集成了Git和Delve(调试器)(尽管目前在我的macOS上Delve在VSC中无法工作)。我在Vim中一直缺少的另一个功能是重启后恢复打开窗口的能力。(是的,Vim有插件可以实现这一点,但我尝试过的那些未能满足我的期望。)VSC开箱即用地提供了这个功能。

因此,我对目前所见相当满意。

对于Go语言开发者来说,目前最主流的IDE选择包括Visual Studio Code(VS Code)、GoLand和LiteIDE。以下是详细分析:

1. Visual Studio Code(VS Code)
VS Code是当前Go社区使用最广泛的编辑器,具有以下优势:

  • 免费开源,轻量级启动快
  • 通过Go扩展提供完整的语言支持(代码补全、诊断、调试等)
  • 丰富的插件生态和自定义配置
  • 跨平台支持(Windows/macOS/Linux)

示例配置(settings.json):

{
  "go.useLanguageServer": true,
  "go.gopath": "/your/go/path",
  "go.inferGopath": true
}

2. GoLand
JetBrains推出的专业Go IDE:

  • 全面的代码智能提示和重构功能
  • 集成调试器、性能分析工具
  • 内置数据库工具和HTTP客户端
  • 需要付费(提供免费试用)

3. LiteIDE
您正在使用的LiteIDE是较早的Go专用IDE:

  • 专为Go语言设计
  • 内置Go工具链支持
  • 界面相对简单,资源占用低

对比建议:

  • LiteIDE功能相对基础,适合轻量级开发
  • 如需更完善的开发体验,推荐迁移到VS Code或GoLand
  • 团队协作项目建议使用GoLand,个人项目VS Code更灵活

迁移到VS Code的示例步骤:

# 安装Go扩展
code --install-extension golang.Go

# 安装必要工具
go install github.com/uudashr/gopkgs/v2/cmd/gopkgs@latest
go install github.com/ramya-rao-a/go-outline@latest

当前Go开发者使用统计显示,约65%选择VS Code,25%使用GoLand,其他IDE占比不足10%。根据项目复杂度和个人偏好选择即可。

回到顶部