This tutorial is a brief introduction to the Go language. The goals are as follows:
- Install and configure Go, the Glide package manager, and the Intellij Go plugin.
- Configure your Go development environment.
- Learn Go program layout, syntax, and features.
- Learn dependency management with a “real” application.
This tutorial is split into the following sections:
- Setting up your environment
- A Hello World example
- Variables and types
- Program flow and functions
- Methods and interfaces
- Concurrency
- A sample web service
I recommend the following materials as a kick off point for additional learning:
- The Go website
- A Tour of Go - A quick walkthrough of the Go language.
- Go command usage - How to use the go CLI tool.
- Go by Example - A slightly more thorough walkthrough of the Go language.
- The Go Programming Language Specification - It’s not as daunting as it sounds (82 pages). That would be the Java Language Specification(Java SE 8 - 788 pages).
- Effective Go - Documentation on the Go website for writing idiomatic Go.
- Go Bootcamp - An online book, exercises included.
- Go Koans - Achieve Go Zen.
- Awesome Go - An awesome curated list of Go frameworks, libraries, and software.