- Module 1: Take your first steps with Go.
- Install and configure Go on your local workstation.
- Install and configure Visual Studio Code and the Go extension.
- Explore the Go Playground.
- Create your first Go application.
- Module 2: Learn about the basic data types in Go and about how to declare variables, write functions, and use packages.
- Declare variables and constants
- Learn about the basic data types available in Go
- Write functions
- Create and use packages
- Module 3: Learn to use control flows in Go.
- Learn about simple and compound if statements.
- Learn about switch statements and their features.
- Learn about loop statements and how Go creates them by using the for keyword.
- Learn about essential error-handling functions like defer, panic, and recover.
- Module 4: Learn about structs, arrays, slices, and maps. Understand the difference between them and when to use one type over the other.
- The aggregate types in Go: arrays and slices.
- The differences between arrays and slices.
- Built-in functions to manipulate data.
- How to use key and value data structures by using maps.
- How to write complex custom data types with structs.
- Module 5: Understand how to handle errors and log helpful information in your Go programs.
- Go's approach to error handling.
- Error handling strategies.
- The log standard package for logging.
- Logging frameworks.
- Module 6: Learn about best practices for writing methods and interfaces in Go.
- How Go implements OOP principles such as encapsulation and composition.
- How to write methods and why you use them.
- How to write embedding and overloading methods.
- How to write and use interfaces, and why they differ from interfaces in other programming languages.
- Module 7: Understand more about concurrency, one of the most unique features in Go.
- How concurrency works in Go.
- The difference between concurrency and parallelism.
- How communication works in a concurrent program by using channels.
- How to write a program that runs faster by implementing concurrency.
- How to write dynamic programs that can use buffers to take advantage of concurrency when you want to launch a limited number of concurrent calls.
- Module 8: By using what you've learned about Go, write and test a complete program.
- How testing works in Go.
- How to wrap the core logic of a program into a package.
- How to expose the core logic through a Web API.
- How to write tests for your core logic package (by using test-driven development).
- How almost all concepts we've covered so far can work together.
In this module, you will:
In this module, you will:
In this module, you will:
In this module, you'll learn about:
In this module, you'll learn about:
In this module, you'll learn about:
In this module, you'll learn about:
In this module, you'll practice and learn about: