Skip to main content
CourseFlix

Go (Golang) Programming The Complete Go Bootcamp 2023

17h 49m 29s
English
Free

Fully updated for 2021. This Go Programming course covers every major topic, including Pointers, Methods, and Interfaces (Go OOP), Concurrency In-Depth (Goroutines, Channels, Mutexes, WaitGroups), Go Packages and Modules, and many more! This course IS NOT like any other Go Programming course you can take online. At the end of this course, you will MASTER all the Golang key concepts starting from scratch and you'll be in the top Go Programmers.

This is a brand new Go Programming course just updated and is a perfect match for both beginners and experienced developers!

Welcome to this practical Go Programming course for learning Go, the language created to solve "Google-size" problems.

Go (Golang) will be one of the most in-demand programming languages across the job market in the near future! Go is on a Trajectory to Become the Next Enterprise Programming Language. Cutting-Edge Technologies and Software are already written in Go, for example, Docker, Kubernetes, Terraform, or Ethereum. In addition to Google, Golang is used by Uber, Netflix, Medium, Pinterest, Slack, SoundCloud, Dropbox and so many more!

Why this Go Programming course?

This Go (Golang) course is a unique experience on Udemy. There are many other Go courses you can choose from, but this course is completely different.

For every Go language key concept, you'll get NOT ONLY a video but also:

1. Tens of Quizzes

2. Practice Exercises and Challenges

3. Coding Section Full of Examples

4. Slides with main points

About the Author: udemy

udemy thumbnail

Udemy is a global online marketplace for teaching and learning. It connects students with instructors who share skills in many fields.

Who Uses Udemy

Millions of learners use Udemy to gain skills for work and personal growth. Companies, governments, and nonprofits also use Udemy to train their teams.

What Udemy Offers

Udemy provides a curated set of business and technical courses. These courses help teams build practical skills and support ongoing learning at work.

Watch Online 155 lessons

0:00 0:00
#Lesson TitleDuration
1Why Go Programming? Why now? 02:25
2The Go Playground. Your First Go Program 07:59
3Setup the Programming Environment on Windows (Go, Git and VSCode) 09:40
4Code Organization 04:00
5The Structure of a Go Application 07:29
6Compiling (go build) and Running Go Applications (go run) 08:26
7Formatting Go Source Code (gofmt) 05:31
8Variables in Go 08:44
9Multiple Declarations 06:39
10Types and Zero Values 05:23
11Comments 03:09
12Naming Conventions in Go 06:47
13Package fmt 15:21
14Constants in Go 08:28
15Constant Rules 03:40
16Constant Expressions. Typed vs. Untyped Constants 07:51
17IOTA 04:44
18Go Data Types - Part 1 08:34
19Go Data Types - Part 2 06:29
20Operations on Types: Arithmetic and Assignment Operators 09:40
21Comparison and Logical Operators 06:41
22Overflows 06:26
23Converting Numeric Types 05:46
24Converting Numbers to Strings and Strings to Numbers 07:55
25Defined (Named) Types - part 1 02:42
26Defined (Named) Types - part 2 05:49
27Alias Declarations 03:45
28If, Else If and Else Statements 07:43
29Command Line Arguments: os.Args 06:41
30Simple If Statement 08:54
31For Loops 03:31
32Where is the While Loop in Go? 02:54
33For and Continue Statements 02:24
34For and Break Statements 03:19
35Label Statement 05:56
36Goto 03:10
37Switch Statement 08:05
38Scopes in Go 08:15
39Intro to Arrays 02:45
40Declaring Arrays 05:38
41Array Operations 07:52
42Arrays with Keyed Elements 06:56
43Intro to Slices 01:45
44Declaring Slices and Basic Slice Operations 07:38
45Comparing Slices 06:04
46Appending to a Slice. Copying Slices 05:19
47Slice Expressions 06:44
48Slice Internals: Backing Array and Slice Header -part 1 06:02
49Slice Internals: Backing Array and Slice Header - part 2 08:47
50Append, Length and Capacity In-Depth 08:34
51Intro to Strings 08:14
52Intro to Runes, Bytes and Unicode Code Points 03:06
53Coding Runes and Strings. Decoding Strings Byte by Byte and Rune by Rune 06:51
54String Length in Bytes and Runes 03:14
55Slicing Strings 03:48
56Strings Package Part1: Contains, ContainsAny, Count, ToLower, ToUpper, EqualFold 07:53
57Strings Package Part2. Manipulating Strings: Repeat, Replace, Split, Join, Field 10:05
58Intro to Maps 03:23
59Declaring Maps, Working with Maps 14:29
60Comparing Maps 03:30
61Map Header. Cloning Maps 05:03
62Open, Close, Rename, Move, Remove Files 13:46
63Writing Bytes to File: os.Write and ioutil.WriteFile 06:42
64Writing to Files using a Buffered Writer (bufio Package) 07:08
65Reading n Bytes from a File. Reading a File using a Buffered Reader 06:26
66Reading a File Line by Line Using a Scanner 06:26
67Scanning for User Input. Reading From Stdin 05:43
68Organizing Data with Structs 01:51
69Creating Structs 08:49
70Retrieving and Updating Struct Fields 05:40
71Anonymous Structs and Anonymous Struct Fields 05:56
72Embedded Structs 05:36
73Intro to Functions 02:31
74Function Parameters, Arguments and Return Values 09:19
75Variadic Functions - Part 1 04:37
76Variadic Functions - Part 2 08:03
77Defer Statement 04:24
78Anonymous Functions 04:46
79Computer Memory and Pointers 03:43
80Declaring Pointers. Address of and Dereferencing Operators 11:09
81Pointer to Pointer. Comparing Pointers 05:43
82Passing and Returning Pointers From Functions - Part 1 05:02
83Passing Pointers to Functions. Passing by Value vs. Passing by Pointer - Part 2 13:57
84Receiver Functions (Methods) 07:53
85Methods with a Pointer Receiver 10:20
86Intro to Interfaces 05:44
87Implementing Interfaces 07:25
88Interface Dynamic Type and Polymorphism 04:16
89Type Assertions and Type Switches 06:54
90Embedded Interfaces 05:07
91Empty Interface 07:17
92Concurrency vs. Parallelism 03:50
93Intro to Goroutines 04:11
94Spawning Goroutines. The go Keyword 08:29
95WaitGroups 04:09
96Project: URL Checker and Page Downloader 12:17
97Project Refactoring Using WaitGroups : URL Checker and Page Downloader 04:54
98Data Race 07:08
99Go Race Detector 04:04
100Mutexes 04:48
101Intro to Channels 09:41
102Goroutines and Channels 05:01
103Goroutines, Channels and Anonymous Function 02:58
104Project Refactoring Using Channels: URL Checker and Page Downloader 08:03
105Project Refactoring Using Channels and Anonymous Function 07:39
106Unbuffered Channels 04:16
107Buffered Channels 08:53
108Select Statement 06:51
109Go Packages Overview 02:39
110Creating a Package 09:44
111GOPATH and Packages In Depth 07:40
112Exporting Names. Private vs. Private Access 05:46
113Import Statement and Scopes 09:04
114The Init function 04:28
115Go Modules Overview 04:07
116Importing and Using Go Modules 08:39
117Creating Your Own Go Module 05:21
118Publish the Module on GitHub. Semantic Versioning 10:59
119Releasing a Bug Fix and a Minor Update 08:15
120Releasing a Major Update 06:38
121Using Multi-Version Dependency 02:31
122Installing Ubuntu in a VM 13:22
123Things to Do After Installing Ubuntu 10:17
124Terminals, Consoles, Shells and Command 09:34
125Linux Command Structure 06:56
126Getting Help, Man Pages (man, type, help, apropos) 11:10
127Mastering the Terminal: The TAB Key 06:43
128Mastering the Terminal: Keyboard Shortcuts 04:59
129Mastering the Terminal: The Bash History 08:41
130root vs. Non-privileged Users. Getting root Access (sudo, su, passwd) 11:25
131Intro to The Linux Files System 05:29
132The Filesystem Hierarchy Standard (FHS) 09:40
133Absolute vs. Relative Paths. Walking through the File System (pwd, cd, tree) 13:11
134The LS Command In Depth (ls) 08:23
135Understanding File Timestamps: atime, mtime, ctime (stat, touch, date) 09:45
136Sorting Files by Timestamp 01:55
137File Types in Linux (ls -F, file) 08:23
138Viewing Files - Part 1 (cat) 04:29
139Viewing Files - Part 2 (less, more) 03:51
140Viewing Files - Part 3 (tail, head, watch) 06:19
141Creating Files and Directories (touch, mkdir) 07:11
142Copying Files and Directories (cp) 06:21
143Moving and Renaming Files and Directories (mv) 07:47
144Removing Files and Directories (rm, shred) 09:29
145Working With Pipes in Linux (|, wc) 08:08
146Command Redirection (>, >>, 2> &>, cut, tee) 14:32
147Finding Files and Directories - Part 1 (locate, which) 10:12
148Finding Files and Directories - Part 2 (find) 11:44
149Find and Exec 04:25
150Searching for String Patterns in Text Files (grep) 12:33
151Searching for Strings in Binary Files (strings) 03:40
152Comparing Files (cmp, diff, sha256) 09:55
153Compressing and Archiving Files and Directories (tar, gzip) 14:16
154Hard Links and the Inode Structure 09:30
155Working With Symlinks. Symlinks vs. Hard Links 05:23

Related courses

  • Introduction to industry REST microservices in Golang (Go) thumbnail

    Introduction to industry REST microservices in Golang (Go)

    Sources: udemy
    In this course I'm doing the very same I've been doing for the past 6 years: Analysis, design and development of high-performance microservices in Go. This is not an introduction…
    15 hours 45 minutes 33 seconds
  • Backend Master Class [Golang + PostgreSQL + Kubernetes] thumbnail

    Backend Master Class [Golang + PostgreSQL + Kubernetes]

    Sources: udemy
    This course is designed with a lot of details, so that everyone, even with very little programming experience can understand and do it by themselves. I strongly
    18 hours 51 minutes 54 seconds
  • Golang + Lambda Masterclass [EARLY-ACCESS] thumbnail

    Golang + Lambda Masterclass [EARLY-ACCESS]

    Sources: Gourav Kumar
    This course teaches you everything you need to create production-ready Golang + Lambda Microservices, REST APIs, and Event-Driven serverless applications on AWS cloud like a…
    1 hour 41 minutes 25 seconds
  • Golang: How to Build a Blockchain in Go Guide thumbnail

    Golang: How to Build a Blockchain in Go Guide

    Sources: udemy
    Learn how to build a blockchain from scratch with Go Programming Language (Golang). With the emergence of Facebook's cryptocurrency, Libra, companies like Amazon, Microsoft, and…
    5 hours 24 minutes 9 seconds
  • Master Go thumbnail

    Master Go

    Sources: appliedgo.com (Christoph Berger)
    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…
    6 hours 32 minutes 20 seconds
  • Ardan Labs Live Bytes (Ultimate Go Syntax LIVE) thumbnail

    Ardan Labs Live Bytes (Ultimate Go Syntax LIVE)

    Sources: ardanlabs.com
    Recording of live translation Ultimate Go Syntax LIVE (March 2020 year) using Zoom. Recording of live translation Ultimate Go Syntax LIVE (March 2020 year) using Zoom.
    1 hour 48 minutes 40 seconds