Skip to main content

Master Go

6h 32m 20s
English
Paid

Course description

A few years ago, I discovered Go and immediately fell in love with this language. I loved how the incredibly clean design of the language, as well as the awesome toolchain, suddenly made coding a breeze. Still, every language able to produce production-level code has some inherent complexity, and soon I found myself dragging pieces of information together, from various tutorials, blogs, forums, books, and other parts of the internet. You bet that these information bits were often incomplete, targeted at a different level than I needed, or even contradicted each other.


Read more about the course

I really wished I had everything in one place, carefully collected and assembled into a sane curriculum, presented in a pleasant way, with consistent style, easy to digest.

And so I built Master Go, to give you the course that I wish I had. A course designed to be efficient, intuitive, and complete.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 85 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Welcome!

All Course Lessons (85)

#Lesson TitleDurationAccess
1
Welcome! Demo
05:29
2
Intro to section 1
01:12
3
Installing Git
00:54
4
Installing Go
03:49
5
Installing Visual Studio Code
05:24
6
Get the code
02:09
7
Your First Go Program
04:24
8
Go Documentation on golang.org
06:24
9
The Go Playground
02:49
10
Intro to section 2
00:47
11
Variables
05:08
12
Control Structures 1 - if
02:22
13
Control Structures 2 - switch
01:48
14
Control Structures 3 - for
04:55
15
A Quick Intro to Using Libraries
04:38
16
Input and Output 1 - Printing
03:15
17
Input and Output 2 - Scanning
04:08
18
Input and Output 3 - Command Line
01:46
19
Input and Output 4 - Flags
03:51
20
Exercise: Build Your First Little Commandline Tool!
02:09
21
Strings 1 - Basics
05:38
22
Strings 2 - Unicode
04:40
23
Strings 3 - Literals
01:58
24
Numeric Data Types 1 - Integers and Booleans
06:57
25
Numeric Data Types 2 - Floating Point Numbers
04:02
26
Numeric Data Types 3 - Floating Point Tips
05:46
27
Numeric Data Types 4 - Complex Numbers
02:24
28
Constants
07:27
29
Pointers
05:57
30
Functions 1 - Declaring Functions
04:26
31
Functions 2 - Function Behavior (recursion, deferred functions, scope)
04:19
32
Functions 3 - Function Values and Closures
06:31
33
Functions 4 - Functions and Pointers
02:34
34
Error Handling
08:54
35
Error Inspection
06:39
36
Packages and Libraries 1 - Using Third-Party Packages
04:34
37
Packages and Libraries 2 - Creating Custom Packages
05:37
38
Packages and Libraries 3 - Publish Your Package
05:14
39
Packages and Libraries 4 - Sub-Packages
03:16
40
Modules 1 - Definition
02:06
41
Modules 2 - Creating a Module
03:06
42
Modules 3 - Add Version Information
02:34
43
Modules 4 - Using Modules
06:01
44
Modules 5 - Local Development
07:20
45
Modules 6 - Dependency Maintenance
08:22
46
Modules 8 - How Go Selects a Module Version
08:25
47
Exercise: Bank Account
06:46
48
Intro to section 3
00:46
49
Arrays
05:19
50
Slices
06:38
51
Pass-By-Value Semantics seem to break! (Or do they?)
02:20
52
Byte Slices and Strings
03:42
53
Maps
07:31
54
Type Declarations
03:28
55
Type Aliases
04:28
56
Struct Basics
07:20
57
Struct embedding and anonymous fields
03:09
58
Struct field tags and JSON
02:38
59
Methods
08:36
60
Method Sets
02:46
61
Interfaces 1 - Representing Behavior
07:44
62
Interfaces 2 - Interfaces as Parameters
05:36
63
Interfaces 4 - Internals (and a gotcha)
01:33
64
Generics 1 - Type Parameters
05:36
65
Generics 2 - Type Constraints
07:06
66
Generics 3 - Generic Interface Functions
05:52
67
Exercise: write a Web service - part 1: the Web server
03:29
68
Exercise: write a Web service - part 2: routing
02:03
69
Exercise: write a Web service - part 3: handling requests
03:13
70
Exercise: write a Web service - part 4: the data store
05:38
71
Intro to section 4
01:09
72
Compiling with go run, go build, and go install
04:38
73
Conditional compilation
05:37
74
The Go Module Proxy and the Go Sum DB
05:41
75
Configuring Proxy and Sum Servers
05:15
76
Formatting your code with go fmt
02:26
77
Testing with go test
08:24
78
Testing - Good test design, and how to verify test coverage
03:27
79
Testing - Subtests, parallel tests, and table-driven tests
06:41
80
Testing - Fuzzing
12:27
81
Testing - Benchmarking with go test
04:31
82
Documentation - Create documentation from code
03:29
83
Documentation - godoc and go doc
02:46
84
Intro to section 5
00:32
85
Reflection
09:52

Unlock unlimited learning

Get instant access to all 84 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Beyond Effective Go: Part 1 - Achieving High-Performance Code

Beyond Effective Go: Part 1 - Achieving High-Performance Code

Sources: Corey Scott
Delve into the world of Go and create fast, reliable code with the book series Beyond Effective Go. Tips and techniques for experienced developers.
Working with Microservices in Go (Golang)

Working with Microservices in Go (Golang)

Sources: udemy
For a long time, web applications were usually a single application that handled everything—in other words, a monolithic application. This monolith handled user authentication, ...
10 hours 51 minutes 24 seconds
Complete Microservices with Go

Complete Microservices with Go

Sources: udemy
Create a microservices system from scratch using Go, Docker, and Kubernetes. Gain fundamental knowledge and readiness for real-world projects.
18 hours 31 minutes 16 seconds
Web hook service application over SSH

Web hook service application over SSH

Sources: Anthony GG
Let's create a terminal application and a server that generate a unique link to be used as a webhook URL and directly forward responses to...
3 hours 16 minutes 6 seconds
Testing with Go

Testing with Go

Sources: usegolang.com
Learn how to test real, complex software written in Go. Large or small, perfect abstractions or global state galore; it doesn't matter what your code looks like, you CAN learn t...
33 hours 16 minutes 48 seconds