YoVDO

Go Essential Training

Offered By: LinkedIn Learning

Tags

Go Courses Programming Languages Courses Concurrency Courses Channels Courses Goroutines Courses Struct Courses

Course Description

Overview

Write more efficient, reliable applications with Go. Learn Go basics, including programming with Go basic types, structs and functions, concurrency, and networking.

Syllabus

Introduction
  • Go for modern applications
  • What you should know
1. Getting Started
  • Setting up your work environment
  • Anatomy of a Go program
  • The Go tool
2. Go Basics
  • Numbers and assignments
  • Conditionals
  • For loops
  • Challenge: FizzBuzz
  • Solution: FizzBuzz
  • Strings
  • Challenge: Even-ended numbers
  • Solution: Even-ended numbers
  • Slices
  • Challenge: Find the maximal value
  • Solution: Find the maximal value
  • Maps
  • Challenge: Maps
  • Solution: Maps
3. Functions
  • Defining a function
  • Parameter passing
  • Error return
  • Defer
  • Challenge: Write a function
  • Solution: Write a function
4. Object-Oriented
  • Structs
  • Methods
  • Creating structs with New function
  • Challenge: Structs
  • Solution: Structs
  • Interfaces
  • Challenge: Interfaces
  • Solution: Interfaces
  • Generics
5. Error Handling
  • pkg/errors
  • Panic and recover
  • Challenge: Server kill
  • Solution: Server kill
6. Concurrency
  • Goroutines
  • Channels
  • Challenge: Channels
  • Solution: Channels
  • Select
  • Context
  • Challenge: Download size
  • Solution: Download size
7. Project Management
  • Manage requirements
  • Testing
  • testify
  • Challenge: Testing
  • Solution: Testing
  • Benchmarking and profiling
8. Networking
  • JSON
  • HTTP calls
  • Timeouts & Size Limit
  • Challenge: Call the GitHub API
  • Solution: Call the GitHub API
  • HTTP server
  • Challenge: Key-value database
  • Solution: Key-value database
Conclusion
  • Next steps

Taught by

Miki Tebeka

Related Courses

Programming Languages
University of Virginia via Udacity
Compilers
Stanford University via Coursera
Programming Languages, Part A
University of Washington via Coursera
CSCI 1730 - Introduction to Programming Languages
Brown University via Independent
Intro to Java Programming
San Jose State University via Udacity