[{TableOfContents}] !!! IDEs !! Visual Studio Code https://github.com/Microsoft/vscode-go/wiki/Debugging-Go-code-using-VS-Code !! GoLand So far the most full-featured with best / fastest debugger. Also has better code coverage integration. !! Caviats Debugging in Go is currently flaky as Delve fails to get the proper objects. * [http://liza.io/are-you-experiencing-shady-output-from-your-go-debugger-try-these-things/] * [https://github.com/golang/go/issues/19340] * [https://github.com/go-delve/delve/issues/1368] * [https://github.com/golang/go/issues/27681] * [https://github.com/go-delve/delve/issues/964] * [https://github.com/go-delve/delve/issues/738] !!! Tools There are several tools to help though. !! Spew https://github.com/davecgh/go-spew Add this import line to the file you're working in: %%prettify {{{ import "github.com/davecgh/go-spew/spew" }}} /% To dump a variable with full newlines, indentation, type, and pointer information use Dump, Fdump, or Sdump: %%prettify {{{ spew.Dump(myVar1, myVar2, ...) spew.Fdump(someWriter, myVar1, myVar2, ...) str := spew.Sdump(myVar1, myVar2, ...) }}} /% !! Delve Links * [Using the Go Delve Debugger From the Command Line|https://www.jamessturtevant.com/posts/Using-the-Go-Delve-Debugger-from-the-command-line/] ---- [CategoryComputing.Lang.Go]