
Explore go's static, strong typing, explicit or inferred variables, fast compilation, and built-in concurrency, then set up modules and packages with go mod and run your first program.
Learn about constants, variables, and basic data types in Go, including int, int8/16/32/64, unsigned ints, float32/64, string and boolean, default values, type inference, and constants.
Learn Go functions, parameters, and returns, including multiple values and error handling, then compare if/else, switch, and conditional switch for robust control flow.
Explore arrays, slices, maps, and loops in Go, covering memory layout, indexing, capacity, and the append and delete operations.
Explore how strings relate to runes and bytes in Go, examine UTF-8 encoding, and learn to index, iterate, and build strings efficiently.
Define structs with named fields and attach methods to compute miles left. Use an interface with a miles left method to generalize gas and electric engines.
Learn how pointers in Go store memory addresses, use the star syntax to dereference, handle nil pointers, and employ ampersand and new to allocate memory efficiently.
Learn to use go routines to run tasks concurrently and achieve parallel execution on multi-core CPUs, while using wait groups and mutexes or a read-write mutex to safely share data.
Explore channels and goroutines in Go, including unbuffered and buffered channels, blocking behavior, deadlocks, range iteration, closing channels, and select statements for concurrent patterns.
Learn how go generics enable a single sum slices function for int, float32, and float64 via type parameters and inference, with json unmarshalling and generic structs.
This is a comprehensive course for learning Golang for experienced developers. We cover everything you need in detail, while assuming you don't need a 15 minute video on print statements. This course is meant to get you started in Go as quick as possible and in a fun and entertaining way. This course does not skimp on content, it just presents it in a concise way in order to not waste your time and get you up and running with Go in no time!
Learn about:
- The main philosophy of Go, its general design and its strongly/statically types properties
- How to use constants vs variables
- The basic data types like ints, floats and strings
- Creating and using functions
- If, else if and else statements
- Switch statements
- While loops and for loops
- The difference between arrays and slices
- How strings, runes and bytes all relate to each other and how to use them
- Using interfaces to make your code more flexible
- What structs are in Golang and how to best use them
- Memory management and pointers
- Parallelism and concurrency with Goroutines
- How to use channels with Goroutines
- Using generics to make your functions and structs more flexible
- Building and API from scratch
- Middleware and auth in APIs
- Installing and importing external packages