Go (Golang)

Build clear, fast services with Go fundamentals, concurrency, testing, and HTTP.

Start course →

Syllabus

Getting started

  1. Why Go?
  2. The Go toolchain

Language basics

  1. Packages and main
  2. Variables and types
  3. Functions and returns

Control flow

  1. if and switch
  2. The for loop
  3. defer

Data structures

  1. Arrays and slices
  2. Maps
  3. Strings and runes

Structs and methods

  1. Structs
  2. Methods and interfaces
  3. Pointers

Errors and tests

  1. Error handling
  2. Unit testing
  3. Modules and packages

Concurrency

  1. Goroutines
  2. Channels
  3. Context and cancellation

Practical Go

  1. JSON
  2. HTTP servers
  3. Files and readers

Reliable programs

  1. Formatting and linting
  2. Race conditions

Revision and interview prep

  1. Go cheat sheet
  2. Exam and interview questions