6

几款Golang IDE对比

 2 years ago
source link: https://studygolang.com/articles/16981?fr=sidebar
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

几款Golang IDE对比

rudyn · 2018-12-15 13:31:33 · 11109 次点击 · 预计阅读时间 2 分钟 · 大约8小时之前 开始浏览    
这是一个创建于 2018-12-15 13:31:33 的文章,其中的信息可能已经有所发展或是发生改变。
Go语言目前已经在开发者中越发的流行,自然很多人都在寻找合适的IDE来实现代码语法高亮、自动补全以及其他编辑特性。
下面就几种常用的IDE进行对比介绍:
1. Sublime text
这个文本编辑器在开发者中较为普及,应该说sublime并非一个完全成熟的IDE,但是它具备很多语言的扩展插件,比如python、lua等,其中有一个插件GoSublime专门针对go语言,GoSublime提供了语法高亮、自动补全等功能,这些功能使得Sublime Text成为一很实用的Go IDE。
sublime-golang.png
2. IntelliJ
IntelliJ IDE由Jetbrains提供,在java开发者中非常流行,其自带的Go插件支持语法高亮显示、代码补全、自动编译以及子库支持。这就使得你可以很方便地将项目拆分成多个包的同时,你可以一个单独的IDE中浏览它们。
intellij-new-project.png
它有一个非常好用的功能,插件使用了突出显示来显示未使用的变量或包(如下图示中的hdea变量目前是未使用的变量)。
intellij-go.png
3. LiteIDE
LiteIDE目前也是一个专门针对Golang的IDE了,我也在使用它,功能很全面,具备语法高亮、自动补全、自动编译、调试、包浏览及管理。
lite-ide.png
调试器在后台使用的gdb,这样你可以方便地打印变量值、查看当前堆栈信息。
4. Intype
Intype是仅windows下支持的文本编辑器,具备有限的语法高亮支持和特定的高亮显示设置。
intype-golang.png
5. Netbeans
Netbeans内建支持了大量的语言,同时具备Go插件从而可以同创建正常项目一样,创建go源文件,除了语法高亮以外,其Go插件并不支持其他特殊功能,如何使用IDE编译Go文件还不得知。
nb-newfile.png
6. Eclipse
Eclipse可能是这里列出的最受欢迎的IDE。GoClipse插件在Eclipse中添加了IDE功能来支持Go。GoClipse提供了可配置的语法高亮显示、自动文档补全、自动编译以及最重要的实验调试支持。
7. TextMate
TextMate是一个Mac OS下的文本编辑器,可扩展它以突出显示Go代码,并提供源代码片段。
8. Komodo Edit
Komodo编辑器(或IDE)是来自ActiveState的开源代码编辑器。它基于Monzilla 7.0并且支持跨平台,支持多种语言,但是免费版的Komodo功能有限,它的golang插件komodo-go提供了基本的语法高亮、代码补全功能。
9. Zeus
Zeus是一个Windows下的编辑器,它直接支持Go语言,它使用ctags实现代码补全,但是可配置成使用Go语言,zeus支持代码折叠、自动缩进、代码导航、GDB调试。
zeus-golang.png
下面两个表对上面讨论的几个IDE作了总结,这个表说明了插件或者包的许可情况、运行平台:
1498578165_5782.png
如下表说明了在不同的IDE中可用的功能项:
1498578166_9503.png
现在,Eclipse和IntelliJ插件都非常成熟,并且有丰富的功能来开发Go应用程序。更轻量级的选择如Sublime Text2、TextMate和LiteIDE,对语法高亮显示、预定义代码片段、代码自动补全和自动格式化(使用gofmt)都提供了很好的支持,Netbeans和Intype非常有限,它们只提供语法高亮显示。
这里没有讨论像vim和emacs,因为重点在于图形编辑器。如果您不喜欢本文中的解决方案,更倾向于使用基于文本的编辑器,那么我建议您查看一下Go如何集成vim和emacs。

本文已经发表在公众号 “Golang自学社区” golangzxsq,欢迎关注。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK