Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Microsoft

Take your first steps with Go

Microsoft via Microsoft Learn

Overview

  • Module 1: Take your first steps with Go.
  • In this module, you will:

    • 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.
  • In this module, you will:

    • 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.
  • In this module, you will:

    • 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.
  • In this module, you'll learn about:

    • 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.
  • In this module, you'll learn about:

    • 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.
  • In this module, you'll learn about:

    • 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.
  • In this module, you'll learn about:

    • 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.
  • In this module, you'll practice and learn about:

    • 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.

Syllabus

  • Module 1: Get started with Go
    • Introduction
    • What is Go?
    • Exercise - Install Go
    • Exercise - Explore the Go Playground
    • Exercise - Install Visual Studio Code and the Go extension
    • Exercise - Hello World
    • Knowledge check
    • Summary
  • Module 2: Understand how to use packages, variables, and functions in Go
    • Introduction
    • Declare and use variables
    • Learn about basic data types
    • Create functions
    • Learn about packages
    • Knowledge check
    • Summary
  • Module 3: Use control flows in Go
    • Introduction
    • Test conditions with if/else expressions
    • Control flow with switch statements
    • Loop through data with for expressions
    • Control with defer, panic, and recover functions
    • Exercise - Use control flows in Go
    • Solutions - Control flow exercises
    • Knowledge check
    • Summary
  • Module 4: Use data types and structs, arrays, slices, and maps in Go
    • Introduction
    • Exercise - Use arrays
    • Exercise - Explore slices
    • Exercise - Use maps
    • Exercise - Use structs
    • Challenge - Data types
    • Solution - Data types challenge
    • Knowledge check
    • Summary
  • Module 5: Implement error handling and logging in Go
    • Introduction
    • Learn how to handle errors in Go
    • Learn how to log in Go
    • Knowledge check
    • Summary
  • Module 6: Use methods and interfaces in Go
    • Introduction
    • Use methods in Go
    • Use interfaces in Go
    • Challenge - Methods and interfaces
    • Solution - Methods and interfaces
    • Knowledge check
    • Summary
  • Module 7: Learn how concurrency works in Go
    • Introduction
    • Learn about goroutines
    • Use channels as a communication mechanism
    • Learn about buffered channels
    • Challenge
    • Solution
    • Knowledge check
    • Summary
  • Module 8: Write and test a program in Go
    • Introduction
    • Outline the online bank project
    • Get started with writing tests
    • Write the bank core package
    • Write the bank API
    • Challenge - Complete the bank project functionality
    • Solution
    • Knowledge check
    • Summary

Reviews

Start your review of Take your first steps with Go

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.