Installing Go
Getting Started
Learning Go
A Tour of Go
$ go get golang.org/x/tour
tour binary in your workspace's bin directory.
How to write Go code
Editor plugins and IDEs
Effective Go
Diagnostics
Frequently Asked Questions (FAQ)
The Go Wiki
More
References
Package Documentation
Command Documentation
Language Specification
The Go Memory Model
Release History
Articles
The Go Blog
Codewalks
- First-Class Functions in Go
- Generating arbitrary text: a Markov chain algorithm
- Share Memory by Communicating
- Writing Web Applications - building a simple web application.
Language
- JSON-RPC: a tale of interfaces
- Go's Declaration Syntax
- Defer, Panic, and Recover
- Go Concurrency Patterns: Timing out, moving on
- Go Slices: usage and internals
- A GIF decoder: an exercise in Go interfaces
- Error Handling and Go
- Organizing Go code
Packages
- JSON and Go - using the json package.
- Gobs of data - the design and use of the gob package.
- The Laws of Reflection - the fundamentals of the reflect package.
- The Go image package - the fundamentals of the image package.
- The Go image/draw package - the fundamentals of the image/draw package.
Tools
- About the Go command - why we wrote it, what it is, what it's not, and how to use it.
- Debugging Go Code with GDB
- Data Race Detector - a manual for the data race detector.
- A Quick Guide to Go's Assembler - an introduction to the assembler used by Go.
- C? Go? Cgo! - linking against C code with cgo.
- Godoc: documenting Go code - writing good documentation for godoc.
- Profiling Go Programs
- Introducing the Go Race Detector - an introduction to the race detector.
More
Talks
A Video Tour of Go
Code that grows with grace
Go Concurrency Patterns
Advanced Go Concurrency Patterns
More
Non-English Documentation
Downloads
After downloading a binary release suitable for your system, please follow the installation instructions.If you are building from source, follow the source installation instructions.
See the release history for more information about Go releases.
