What IDE are you guys using ?

blov · · 834 次点击    
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
<p>I am completely new to Go and when I mean new I mean &#34;have started reading about it yesterday&#34; new.</p> <p>I am currently evaluating technologies to use in a new system and got curious about Go. The one thing that I am wondering is what IDE to use to develop / debug Go. Is step by step Visual Studio style debugging actually possible in Go ? We are working on windows btw. Our deployment environment is as of yet undecided.</p> <p>How about Unittesting, are there built in frameworks for unittesting ?</p> <hr/>**评论:**<br/><br/>bear1728: <pre><p><a href="https://code.visualstudio.com/" rel="nofollow">vscode</a> with the go extension works great for me. I&#39;ve never tried the debugger though. I used to use atom, but vscode takes up less space. My chromebook does not have unlimited disk space.</p> <p>Edit: I just saw your comment about tests. I think most go-plugins for editors have a &#34;go test&#34; button, which tests packages/files/etc. But I usually just open a console and type <code>go test</code>. I do use the plugin for the coverage map though, it&#39;s very easy!</p></pre>gandleforf: <pre><p>could elaborate how you are using this on chromeOS.</p></pre>bear1728: <pre><p>By cheating. I use <a href="https://github.com/dnschneid/crouton" rel="nofollow">crouton</a> and run a debian chroot on a Toshiba Chromebook 2.</p></pre>gandleforf: <pre><p>I&#39;ve looked into dev mode a bit for my chromebook, have you ever run into any security issues when using it?</p></pre>bear1728: <pre><p>What do you mean by security issues?</p> <p>You can encrypt your chroot, but I don&#39;t because once I broke it once and wanted to edit some files directly from ChromeOS&#39; shell. I did set up a dev-password for the chrome shell, and I think that&#39;s good enough for most things. But I still try to avoid leaving my laptop alone in a public space.</p></pre>tiberiousr: <pre><p>vscode is my Go to (please excuse the pun) editor for pretty much everything these days.</p></pre>ilikeorangutans: <pre><p>Exclusively vim with vim-go nowadays. Before I used liteide (a bit weird to setup but good completion) and long before that the intellij plugin.</p></pre>JokerSp3: <pre><p>I primarily use atom with go-plus.</p> <p>I would also recommend vscode with the go extension. (I have visual debugging working great on linux, I am not sure of the state of the windows debugger)</p></pre>goomba_gibbon: <pre><p>Windows debugger is also working, I think. You have to configure it correctly per-project, which is fairly painless. I use vscode in windows and neovim on Linux- both are great!</p> <p>Say what you want about Microsoft but they make some awesome tools. vscode is also open source!</p> <p>For neovim, there are some good plugins that make it a bit more IDE-like. Deoplete for autocompletion, tagbar for an outline view. vim-go is the only essential vim plugin, to be honest.</p></pre>santicl: <pre><p>liteide works great for me</p></pre>exch: <pre><p>Likewise.</p></pre>DualRearWheels: <pre><p>LiteIDE FTW all the way.</p></pre>fortytw2: <pre><p><code>neovim</code>! Check out <a href="https://github.com/fatih/vim-go-tutorial" rel="nofollow">https://github.com/fatih/vim-go-tutorial</a> :D </p></pre>fr4nk3n: <pre><p>Also using neovim &amp; vim-go!</p></pre>Rapt0r-: <pre><p>Vim.</p></pre>8fingerlouie: <pre><p>Mostly Vim with vim-go (<a href="https://github.com/fatih/vim-go" rel="nofollow">https://github.com/fatih/vim-go</a>) on MacOS and Linux, and Sublime Text with the GoSublime plugin (<a href="https://github.com/DisposaBoy/GoSublime" rel="nofollow">https://github.com/DisposaBoy/GoSublime</a>) on Windows. As great as Vim is, it is a nightmare to configure on windows.</p> <p>I haven&#39;t tried vscode, mostly because I don&#39;t think Node is the solution to everything wrong with the world .. as in restarting the editor every time something changes.</p></pre>Damien0: <pre><p>I use Atom with the go-plus plugin, and Vim with vim-go. </p></pre>rosencreuz: <pre><p>I&#39;m surprised nobody mentioned Intellij here. I used it so far with no problems. It&#39;s there any reason why it&#39;s not popular with go?</p></pre>simonorono: <pre><p>Perhaps its size. It&#39;s too big and complex. Atom and VSCode have made Go development way easier.</p></pre>therocketofpoop: <pre><p>I use PyCharm with the go plugin. Works like a charm.</p></pre>PaluMacil: <pre><p>I never got it to work on Windows. I use PyCharm for Python, but nothing I researched seemed to help with Go. Was it complex for you to set up? Are you on Windows or Linux?</p></pre>jimi_he: <pre><p>vim-go</p></pre>materialdesigner: <pre><p>Intellij with the go plugin.</p></pre>vendakka: <pre><p>Same here. Works like a charm.</p></pre>joncalhoun: <pre><p>At this point tools are likely to have so little impact on your overall performance that I wouldn&#39;t worry too much about them, but here are a few that I know some people use:</p> <ul> <li><a href="https://www.jetbrains.com/webstorm/" rel="nofollow">https://www.jetbrains.com/webstorm/</a></li> <li>sublime text 3 + the gosublime package</li> <li>atom + go packages (forget the names)</li> </ul> <p>Both atom and sublime have a lot of great packages you can add to them that are useful. Not all are go specific. </p> <p>You can unit test via the command line for sure and I would probably start there. Having a rough understanding of how to run tests and do other tasks with go via the command line is useful.</p></pre>Fireynis: <pre><p>All the intellij ones are good for this also. Get the Community edition and the Go language plugin and it is by far one of the best IDE&#39;s</p></pre>rickibalboa: <pre><p>I&#39;m using the go plugin with webstorm and it works really well. I&#39;d imagine it works just as well on intellij</p></pre>Fireynis: <pre><p>Webstorm isn&#39;t free though right? All the jetbrains IDEs use the same platform. The paid ones have more. I personally use PHPStorm, as I normally work with PHP, but the Golang plugin lets me work with it as well which is sweet. Don&#39;t need to learn a new IDE plus I have DB controls built in.</p></pre>rickibalboa: <pre><p>No it&#39;s not, but I use it at work. Yeah they&#39;re all based on the intellij platform I think each one just comes with extra tools for the platform you&#39;re using. For golang though intellij + the golang plugin is perfect for a free IDE.</p></pre>qu33ksilver: <pre><p>For windows, I would recommend vscode. Especially to get the Visual studio kinda feel.</p> <p>It supports step-by-step debugging through delve.</p> <p>You can integrate unit testing too.</p> <p>Ref - <a href="https://github.com/Microsoft/vscode-go#commands" rel="nofollow">https://github.com/Microsoft/vscode-go#commands</a></p></pre>PaluMacil: <pre><p>While there were a number of steps to set up Delve (for step debugging), the steps worked without any issue, and I&#39;ve been using VS Code ever since for Go. It&#39;s very nice.</p></pre>arindamchoudhury: <pre><p>I use visual studio code.</p></pre>rek2gnulinux: <pre><p>vim</p></pre>chewxy: <pre><p>I&#39;m curious, given many people in this thread use VSCode. Doesn&#39;t it lag?</p> <p>I&#39;m on a 3.4GHz machine with 32GB of RAM (and a gtx 960) and it friggin lags to high heaven. Ubuntu tho. Atom&#39;s even worse.</p></pre>twetewat: <pre><p>Using it on a mac is a breeze. Tried it on my monster desktop Ubuntu machine as well. Find most programs not run as smooth, but just guessed it to being the window manager and /or program not being as polished. Haven&#39;t dug into any settings in the OS however. </p> <p>I&#39;ve however seen problems with running it with the virtual box guest addition gpu driver in a. Ubuntu vbox machine. </p></pre>PaluMacil: <pre><p>Personally, I am not as sensitive to lag and only ever get annoyed by lag in Visual Studio and PyCharm but I do notice how VS Code is faster than Atom and I like the speed. If I wanted more, I&#39;d probably try Sublime, but I always feel like the developer is one step away from abandoning it.</p></pre>drvd: <pre><p>Emacs. All the way down.</p></pre>Jaimee_Nye: <pre><p>Sublime Text 3 and Vim. </p></pre>sorennielsen: <pre><p>Vim + Vim-Go</p> <p>Started out with Sublime Text but now on Vim and never looking back.</p></pre>phonkee: <pre><p>Pycharm with go plugin.</p></pre>slavabobik: <pre><p>I&#39;m using atom with go-plus, but sometimes switch to IntelliJ Idea with hers go plugin</p></pre>supertopher: <pre><p>25 replies and no mention of Emacs. Dang.</p> <p>I use Emacs with Spacemacs.</p></pre>daemonza: <pre><p>Funny, I was thinking the same. Using spacemacs as well. </p></pre>The_Sly_Marbo: <pre><p><a href="http://research.swtch.com/acme" rel="nofollow">acme</a></p></pre>NeverUse-YouPromised: <pre><p>I mainly use Mousepad, xfce&#39;s plain text editor.</p></pre>thesilentwitness: <pre><p>I use Microsoft Word.</p></pre>fungussa: <pre><p>LiteIDE until about 5 months ago. Now using VS code, and I couldn&#39;t ask for better. Also using Delve for debugging</p></pre>donatj: <pre><p>Same here. I used LiteIDE for a long while but decided to give VSCode&#39;s official Golang extension a try and have not looked back. So nice.</p></pre>mrichman: <pre><p>vscode + go extension + delve on both OSX and Ubuntu</p></pre>dbot77: <pre><p>Webstorm</p></pre>Kraigius: <pre><p>I just use Sublime Text 3.</p></pre>timetravelhunter: <pre><p>VSCode. I use VIM or Sublime for just about everything. VSCode integration worked out of the box and had a few more really useful features. I&#39;m sure the other tooling will catch up but you might as well use it for awhile until then.</p></pre>itsmontoya: <pre><p>I&#39;ve been enjoying Visual Studio Code</p></pre>makotano: <pre><p>IntelliJ.</p> <p><a href="https://github.com/k0kubun/pp" rel="nofollow">https://github.com/k0kubun/pp</a> is good. It works like spew with coloring.</p></pre>F41LUR3: <pre><p>Started with Sublime Text 3 with the go-sublime extension, moved over to Visual Studio Code with vscode-go extension. VSCode with that extension is a very powerful editor indeed, mainly enabled by the small suite of go-written tools that are used to provide refactoring, error checking, visual debugging, built-in handling of git tasks, and more. I don&#39;t think there&#39;s really a comparison.</p></pre>folago: <pre><p>MacVim</p></pre>Yojihito: <pre><p>Eclipse with the GoClipse plugin (includes all go stuff like fmt, oracle etc with easy 1 click installation/update).</p> <p>A normal text editor without IDE functions just doesn&#39;t cut it for me.</p></pre>peiiion: <pre><p>Eclipse with Goclipse plugin here. It has many IDE features that will make your life easier, specialy when coming from Visual Studio. </p> <p>Debug is possible AFAIK, but that&#39;s more tricky to setup and i haven&#39;t tried it yet. </p> <p>As for Unit Testing, Go has the <a href="https://golang.org/pkg/testing/" rel="nofollow">testing package</a> in the standard library that would cover all the basics to get you started. </p></pre>ultra_brite: <pre><blockquote> <p>Is step by step Visual Studio style debugging actually possible in Go ? We are working on windows btw</p> </blockquote> <p>lol nobody is answering you on debugging ... Go doesn&#39;t have an official debugger , there is gdb and delve but both fall short in some cases especially as soon as your code uses concurrency (though delve is a bit better). Go maintainers themselves use printf to debug their code ...</p> <p><a href="https://golang.org/doc/gdb" rel="nofollow">https://golang.org/doc/gdb</a></p> <blockquote> <p>How about Unittesting, are there built in frameworks for unittesting ?</p> </blockquote> <p>I suggest you get familiar with the official website and this page specifically before asking more questions :</p> <p><a href="https://golang.org/pkg/testing/" rel="nofollow">https://golang.org/pkg/testing/</a></p> <p>When it comes to IDEs either </p> <p>Visual Studio Code, VIM, Emacs or liteide : <a href="https://github.com/visualfc/liteide" rel="nofollow">https://github.com/visualfc/liteide</a></p> <p>They all use Go tool services which are a third party non visual IDE running in the background so none of them aside from liteide do anything special, it&#39;s like the language services for C#, they are not really part of visual studio directly just daemons</p></pre>jasonrichardsmith: <pre><p><a href="https://github.com/davecgh/go-spew" rel="nofollow">spew</a> &gt; printf</p></pre>PaluMacil: <pre><p>I&#39;ve had a pretty good time with Delve. I&#39;m not sure there is much you can do to make concurrency debugging better. There really isn&#39;t a language where it&#39;s easy.</p></pre>

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

834 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传