Master Go (Golang) Programming:The Complete Go Bootcamp 2020
4.6 (173 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,870 students enrolled

Master Go (Golang) Programming:The Complete Go Bootcamp 2020

Learn Golang in a Unique and Interactive Way. Become a Professional Golang Programmer from Scratch.Go from Zero to Hero!
4.6 (173 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
1,869 students enrolled
Last updated 4/2020
English
English [Auto]
Current price: $139.99 Original price: $199.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 13 hours on-demand video
  • 87 articles
  • 27 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Become a professional Go Programmer and get hired.
  • You will MASTER all the Go key concepts starting from Scratch. No prior Go knowledge is required.
  • For each Go Key Concept you'll get an High-Quality Video, a Coding Section, a Quiz, Practice Exercises and Slides.
  • Build a COMPLETE understanding of Go from the ground. Write idiomatic, bug-free Go code using best practices.
  • Learn to work with Go control flow structures: if, for, break, continue, switch, goto, labels etc.
  • Master all the Go data structures in-depth: arrays, slices, strings, maps, structs.
  • Learn to work efficiently with Pointers.
  • Learn to work efficiently with Files.
  • Master the full power of Methods and Interfaces (Go OOP).
  • Understand Go concurrency in-depth: WaitGroups, Mutexes, Buffered and Unbuffered Channels, Select Statement and Patterns.
  • Build massively concurrent programs with Goroutines and Channels.
  • Hundreds of hands-on exercises with solutions and quizzes.
  • Go Packages and Modules In Depth
Course content
Expand all 209 lectures 14:31:17
+ Course Introduction
4 lectures 06:59
IMPORTANT. Please read!
01:04
How to Get Better and Faster Support? JOIN OUR ONLINE COMMUNITY!
00:27
+ Getting Started
10 lectures 48:00
The Go Playground. Your First Go Program
06:28
Setup the Programming Environment on Windows (Go, Git and VSCode)
08:19
Setup the Programming Environment on Linux (Go and VSCode)
03:12
Setup the Programming Environment on Mac (Go, Git and VSCode)
02:30
GOPATH and Code Organization
05:17
Go Application Structure
07:26
Coding - Go Application Structure
00:32
Test Your Knowledge: Getting Started with Go
6 questions
Compiling (go build) and Running Go Applications (go run)
08:25
Go Packages and Modules
00:20
Formatting Go Source Code (gofmt)
05:30
Test Your Knowledge: Formatting Code, Compiling and Running Go Applications
5 questions
+ Go Basics
30 lectures 02:24:09
Variables in Go
08:43
Coding - Variables and Declarations
01:28
Test Your Knowledge: Variables and Declarations
7 questions
Types and Zero Values
05:22
Coding - Types and Zero Values
00:40
Comments
03:08
Naming Conventions in Go
06:46
Coding - Comments and Naming Convention
00:44
Test Your Knowledge: Types, Zero Values, Comments and Conventions
5 questions
Package fmt
15:20
Coding - Package fmt
01:19
Test Your Knowledge: Package fmt
5 questions
Constants in Go
08:27
Constants Rules
03:38
Constant Expressions. Typed vs. Untyped Constants
07:50
IOTA
04:43
Coding - Constants and IOTA
01:28
Test Your Knowledge: Constants
6 questions
Go Data Types - Part 1
08:33
Go Data Types - Part 2
06:28
Coding - Go Data Types
01:32
Test Your Knowledge: Go Data Types
5 questions
Operations on Types: Arithmetic and Assignment Operators
09:39
Comparison and Logical Operators
06:40
Coding - Go Operators
00:57
Overflows
06:25
Converting Numeric Types
05:44
Converting Numbers to Strings and Strings to Numbers
07:54
Coding - Converting Types
01:05
Test Your Knowledge: Operators and Conversions
5 questions
Defined (Named) Types - part 1
02:41
Coding - Defined Types
00:27
Alias Declarations
03:34
Coding - Aliases
00:24
Test Your Knowledge: Defined Types and Aliases
5 questions
+ Coding Challenges - Go Basics
5 lectures 07:09
Declare Variables
01:27
Constant
01:40
Package fmt
01:03
Operators and Conversions
01:43
Named Types and Aliases
01:14
+ Program Flow Control in Go
19 lectures 01:04:37
If, Else If and Else Statements
07:42
Coding - If, Else If and Else
00:28
Command Line Arguments: os.Args
06:40
Coding - Command Line Arguments
00:14
Simple If Statement
08:53
Coding - Simple If
00:16
Test Your Knowledge: If, Else If and Else Statements
5 questions
For Loops
03:30
Where is the While Loop in Go?
02:53
Coding - For Loops
00:15
For and Continue Statements
02:23
For and Break Statements
03:18
Coding - For, Break and Continue
00:41
Test Your Knowledge: For Loops
5 questions
Label Statement
05:55
Goto
03:09
Coding - Labels and Goto Statements
00:41
Switch Statement
08:03
Test Your Knowledge: Label, Goto and Switch Statements
4 questions
Coding - Switch Statement
00:47
Coding - Scopes
00:31
Test Your Knowledge: Scopes
4 questions
+ Coding Challenges - Flow Control
1 lecture 01:31
Coding Challenge Exercises - Flow Control
01:31
+ Arrays in Go
6 lectures 24:56
Intro to Arrays
02:44
Declaring Arrays
05:37
Array Operations
07:51
Coding - Declaring Arrays and Operations
01:24
Arrays with Keyed Elements
06:55
Coding - Arrays with Keyed Elements
00:25
Test Your Knowledge: Arrays
5 questions
+ Slices in Go
12 lectures 55:08
Intro to Slices
01:44
Declaring Slices and Basic Slice Operations
07:37
Comparing Slices
06:03
Coding - Slice Basics
01:27
Appending to a Slice. Copying Slices
05:18
Test Your Knowledge: Slice Basics
5 questions
Slice Expressions
06:43
Coding - Slice Expressions
00:58
Slice Internals: Backing Array and Slice Header -part 1
06:01
Coding - Slice's Backing Array
01:00
Append, Length and Capacity In-Depth
08:33
Coding - Appending to Slices
00:57
Test Your Knowledge: Slice Expressions and Slice Header
5 questions
Requirements
  • A computer (Windows, Mac, or Linux) with an Internet connection. That's it!
  • No prior Go programming knowledge is required. You will learn everything from scratch!
  • PC Skills such as downloading and installing a program, opening a terminal and running basic commands etc
  • Your time and enthusiasm to learn.
Description

***Fully updated for 2020*** 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!


I am constantly updating the course to be the most comprehensive, yet straight-forward, Go Programming course on the market!

COURSE UPDATES:

  • Update: January, 2020 - NEW Section: Go Packages and Modules (2 hours of videos, complete list of commands and a Quiz)

  • Update: November, 2019 - NEW Section: Concurrency in Go  (2 hours of videos, coding sections, a Project and Quizzes)

  • Closed and Exclusive FB Learning Group Created: October 30, 2019

  • Course Launch: October 29, 2019


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 launched in October 2019 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!

By enrolling in this course now, you make the best investment in your career!


This course, taught by me, a Senior Software Engineer and Professional Trainer, is the only one you need in order to become a complete professional Go Programmer. After this course you'll have an in-depth knowledge of core and advanced Go.


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

5. You'll have access to my closed and exclusive online Group in order to provide you with improved, faster and better support for your course-related questions.  I am always available to guide you personally, and answer any questions you might have.


Why should you learn from me?

  • I'm a Practitioner and an Enthusiast. Welcome to the real world! I have almost 20 years experience as a Developer and Sysadmin. Since I've started with Programming and Networking in the early 2000s, I've been using or studying the technology almost on a daily basis. I also have a bunch of certifications in the area of Programming or Networking.

  • I'm an Educator and I  know how to make a Syllabus. I know exactly what is important and what is not. For the last 10 years I've trained thousands of people on Programming and Networking

  • You'll learn not only Go Programming, but also advanced concepts for real-word projects. After this course you'll MASTER all the Golang key concepts.


You'll have lifetime access and you can return and look for a specific  concept  anytime you want. And let's not forget, if you don't  like the course, you are covered by a 30 day money back guarantee, full refund, no questions asked!


The topics covered in this Complete Go (Golang) Programming Bootcamp are:

  • Installing Go, Git and VSCode  on Windows, Mac and Linux

  • Compiling and Running Go Programs

  • Using Go tools like go fmt to format and write idiomatic Go code

  • GOPATH and Go Application Structure

  • Go Packages and Modules In Depth

  • Publish Modules on GitHub

  • Declarations, Variables, Constants and Comments in Go

  • Constant Rules, Typed vs. Untyped Constans, IOTA

  • Math, Comparison and Logical Operators

  • Go Data Types in Depth, Zero Values, Dynamically vs. Statically Typed Languages

  • Converting Types

  • fmt Package: Println, Printf, Sprintf etc

  • Named (Defined) Types in Go

  • Alias Declarations

  • Flow Control: if, simple if statement, for, continue, break, switch, labels, goto

  • Scopes in Go

  • Strings, Runes, Bytes and UTF-8 in Go

  • strings Package

  • Arrays in Go

  • Slices in Go

  • Maps in Go

  • Structs in Go

  • User-defined Functions, Variadic and Anonymous Functions, Defer Statement

  • Working with Files in Go: os, io, ioutil, bufio packages

  • Error Handling

  • Pointers In Depth: Dereferencing and Address of Operators, Passing to Functions and Methods etc

  • Methods (Function Receivers) and Interfaces (Go OOP): Embedded Interfaces, Empty Interface, Type Assertions and Type Switches etc

  • Concurrency in Go

  • Goroutine Synchronization Using WaitGroups

  • Data Races, Go Race Detector and Mutexes

  • Goroutines and Channels

  • Buffered and Unbuffered Channels

  • Channel Select Statement

  • Course Bonuses


Every topic includes many live examples in Go, a coding section, tens of quizzes, slides and many practice exercises. 

At the end of this Go Programming Course, you'll also have acquired the prerequisite Go skills to move into specific branches: Network and Server Programming, Cloud and Infrastructure Programming, Large-Scale Software Development in general.

If you want to take ONE COURSE to master Go (Golang) Programming you should choose this one and you'll have no regrets!

Who this course is for:
  • Beginners with very basic programming experience.
  • Programmers switching languages to Go.
  • Programmers who know Go basics and want to master Golang.
  • This course should not be attended by senior Go programmers.