Go: Step by Step
Table of Contents
Step 0
A tour of Go Basic language features.
How to Write Go Code Learn how to organize your code.
Step 1
Usefull articles from Go blog.
- Strings, bytes, runes and characters in Go
- Go Slices: usage and internals
- Arrays, slices (and strings): The mechanics of ‘append’
- Go maps in action
- Constants
- Defer, Panic, and Recover
- Error handling and Go
- Organizing Go code
- go fmt your code
- Godoc: documenting Go code
- Go Code Review Comments
- Effective Go
Step 2
- The Go type system for newcomers
- Go Data Structures: Interfaces
- The Laws of Reflection
- Go tooling essentials
- JSON and Go
- SliceTricks
Articles from Go blog about concurrency:
- The Go Memory Model
- Share Memory By Communicating
- Go Concurrency Patterns: Pipelines and cancellation
- Go Concurrency Patterns: Context
Step 3
- Using Subtests and Sub-benchmarks
- TableDrivenTests
- Concurrency is not parallelism
- Go Concurrency Patterns (video)
Step 4
Articles about Go tooling:
Go Concurrency Patterns:
- Advanced Go Concurrency Patterns
- Rethinking Classical Concurrency Patterns (presentation)
- Go Testing By Example (video)
Step 5
Articles about Go tooling: