Flagship
go
Go
Types and interfaces, goroutines and production services
13 topics 5 sections Go 1.27 beginner → advanced
recommended path Go for backend engineering
milestone 1 of 5 0 of 30 done
Continue: Go fundamentals →
See the whole map All beginner intermediate advanced
show All Unread Read
01 · Basics
6 topics defer, panic and recover Understand defer evaluation and ordering, panic unwinding, and recover's strict boundaries without skipping cleanup or hiding failures. intermediate 13 min Error handling How Go treats errors as values, preserves causes through wrapping, and exposes stable failure contracts without string matching. intermediate 13 min Error wrapping Go error wrapping adds context without sacrificing the error identities, types, and fields that callers inspect with errors.Is and errors.As. intermediate 13 min Go fundamentals How packages, declarations, types, functions, and control flow turn Go source files into programs, with the scope and string rules beginners often miss. beginner 16 min Maps Go maps index values by key; comparability, zero values, sharing, unordered iteration, and concurrency boundaries determine whether their use is correct. intermediate 14 min Slices Slices are Go's dynamic views over contiguous elements; understanding length, capacity, backing arrays, and append prevents subtle sharing bugs. beginner 16 min
02 · Types and interfaces
7 topics Constraints and type sets Understand Go type-parameter declarations, constraints, type sets, and inference, including named types, generic methods, and comparable edge cases. intermediate 16 min Generics Use type parameters, constraints, and type sets to write reusable, type-safe Go, without common named-type, inference, and method mistakes. intermediate 17 min Interfaces Go interfaces describe behavior with method sets; understand implicit satisfaction, method sets, interface values, and typed nils to design reliable boundaries. intermediate 11 min Methods Go methods attach behavior to defined types; receiver semantics, method sets, method values, and promotion determine correct APIs and state changes. intermediate 14 min reflect.Type and reflect.Value Go reflection inspects types and values at runtime; understand Type, Value, Kind, settability, and nil boundaries to write safe dynamic code. advanced 15 min Reflection Inspect types and values at runtime with Go's reflect package; handle kinds, settable values, struct tags, nils, and dynamic calls without panics. advanced 12 min Structs Go structs group related fields into values; zero values, copying, comparability, embedding, and tags determine whether that value behaves as intended. beginner 17 min