https://github.com/ardanlabs/gotraining
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. Although it borrows ideas from existing languages, it has a unique and simple nature that make Go programs different in character from programs written in other languages. It balances the capabilities of a low-level systems language with some high-level features you see in modern languages today. This creates a programming environment that allows you to be incredibly productive, performant and fully in control; in Go, you can write less code and do so much more.
Ultimate Go is a 2 day class for any intermediate-level developer who has some experience with other programming languages and wants to learn Go. This class provides an intensive, comprehensive and idiomatic view of the language. We focus on both the specification and implementation of the language, including topics ranging from language syntax, Go’s type system, concurrency, channels, testing and more. We believe this class is perfect for anyone who wants a jump start in learning Go or who wants a more thorough understanding of the language and its internals.
- Language Syntax
- Arrays, Slices and Maps
- Methods, Interfaces and Embedding
- Packaging and Exporting
- Using Pointers
- Composition
- Error Handling
- Concurrency, Race Conditions and Channels
- Concurrency Patterns
- Testing and Debugging
- Standard Library
- Reflection
- HTTP