loading...
markdown guide
 

Here is a popular list of frameworks, tools /everything with go
awesome-go.com/

Personally, I use vscode as IDE with the go plugin and gometalinter.
marketplace.visualstudio.com/items...
github.com/alecthomas/gometalinter

On a lower level, you might also be interested by the following article from Peter Bourgon on:

Structuring your code and repository, Program configuration, component graph, Goroutine lifecycle management, Observability, Testing, Interfaces, Context use and misuse

peter.bourgon.org/go-for-industria...

Cheers !

 

Try to avoid using frameworks with Go unless you really know you need them.

Most people are very productive just using the standard library and including a few libraries for specific things.

And I say just use the standard library but don't take it flippantly. Go has one of the best standard libraries I've ever used. If you really want to be a strong Go developer invest your time in learning it as best you can. Explore net/http, io and strings in particular. Go has a backward compatibility guarantee so anything you learn in the standard library is permanent, unlike any framework you might commit to.

For the IDE, I would try and stick to what you're used to, Go has good support for most environments.

Personally I am an intellij person so Goland is very good for me as I already know all the shortcuts. But people are very happy with Vim Go and VSCode with Go too.

Whatever you pick you should be able to quickly (i.e, with a key combination)

  • Run tests
  • Reformat the code automatically
  • Refactor code into functions
  • Rename things
  • Navigate to symbols
  • Auto fix imports (Go does not allow unused imports which beginners get annoyed at, but all you really need is a good editor to automatically fix it for you)

And I of course have to plug my book Learn Go with tests which will take you through most of what you need to know and show you how to make a web application all with the standard library. Whoo!

 

I've only used Go minimally on a project at my previous job, but VS Code with the Go extension, seemed pretty solid, including debugging.

 

For lovers (or Anyone who wants to learn from Vim (editor with Go support) vim-bootstrap.com

Classic DEV Post from Apr 25 '19

Form habits by making the right thing easiest

Tools should always work for you, not against you! Invest some time making sure you configure them to adapt to shifting conditions.

Suri Nuthalapati profile image
Founder | AgTech Enthusiast | Big Data Architect