Go: The Complete Developer's Guide (Golang)
4.7 (253 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,191 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Go: The Complete Developer's Guide (Golang) to your Wishlist.

Add to Wishlist

Go: The Complete Developer's Guide (Golang)

Master the fundamentals and advanced features of the Go Programming Language (Golang)
4.7 (253 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,191 students enrolled
Created by Stephen Grider
Last updated 9/2017
English
English [Auto-generated]
Current price: $10 Original price: $85 Discount: 88% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 9 hours on-demand video
  • 3 Articles
  • Full lifetime access
  • Access on mobile and TV
  • Assignments
  • Certificate of Completion
What Will I Learn?
  • Build massively concurrent programs with Go Routines and Channels
  • Learn the advanced features of Go
  • Understand the differences between commonly used data structures
  • Prove your knowledge with dozens of included quiz questions
  • Apply Interfaces to dramatically simplify complex programs
  • Use types to future-proof your code and reduce the difficulty of refactors
View Curriculum
Requirements
  • Solid experience with another programming language - Javascript, Python, Ruby, Java, or similar
Description

Go is an open source programming language created by Google.  As one of the fastest growing languages in terms of popularity, its a great time to pick up the basics of Go!

This course is designed to get you up and running as fast as possible with Go.  We'll quickly cover the basics, then dive into some of the more advanced features of the language.  Don't be tricked by other courses that only teach you for-loops and if-statements!  This is the only course on Udemy that will teach you how to use the full power of Go's concurrency model and interface type systems.

Go is designed to be easy to pick up, but tough to master.  Through multiple projects, quizzes, and assignments, you'll quickly start to master the language's quirks and oddities.  Go is like any other language - you have to write code to learn it!  This course will give you ample opportunities to strike out on your own and start working on your own programs.

In this course you will:

  • Understand the basic syntax and control structures of the language
  • Apply Go's concurrency model to build massively parallel systems
  • Grasp the purpose of types, which is especially important if you're coming from a dynamically typed language like Javascript or Ruby
  • Organize code through the use of packages
  • Use the Go runtime to build and compile projects
  • Get insight into critical design decisions in the language
  • Gain a sense of when to use basic language features


Go is one of the fastest-growing programming languages released in the last ten years.  Get job-ready with Go today by enrolling now!

Who is the target audience?
  • Anyone who wants to understand the fundamental features of Go
Students Who Viewed This Course Also Viewed
Curriculum For This Course
81 Lectures
08:52:42
+
Getting Started
5 Lectures 09:26
How to Get Help
00:19

Link to Completed Code
00:04



+
A Simple Start
6 Lectures 23:27

Five Important Questions
06:17

Go Packages
06:10

Import Statements
03:58

File Organization
03:34

Test Your Knowledge: Packages
4 questions

How to Access Course Diagrams
00:17
+
Deeper Into Go
24 Lectures 02:59:50
Project Overview
02:31

New Project Folder
01:55

Variable Declarations
10:40

Test Your Knowledge: Variable Assignment
9 questions

Functions and Return Types
07:42

Test Your Knowledge: Functions
5 questions

Slices and For Loops
10:49

Test Your Knowledge: Slices and For Loops
5 questions

OO Approach vs Go Approach
04:33

Custom Type Declarations
06:40

Receiver Functions
06:16

Test Your Knowledge: Functions with Receivers
4 questions

Creating a New Deck
10:57

Slice Range Syntax
05:56

Multiple Return Values
08:11

Test Your Knowledge: Multiple Return Values
5 questions

Byte Slices
06:59

Deck to String
07:26

Joining a Slice of Strings
06:36

Saving Data to the Hard Drive
07:02

Reading From the Hard Drive
11:18

Error Handling
07:52

Shuffling a Deck
09:42

Random Number Generation
10:30

Testing With Go
03:40

Writing Useful Tests
12:03

Asserting Elements in a Slice
04:23

Testing File IO
09:52

Project Review
06:17

Get a handle on slices and for loops with this assignment.
Even and Odd
1 question
+
Organizing Data With Structs
12 Lectures 01:10:30
Structs in Go
04:43

Defining Structs
03:54

Declaring Structs
04:51

Updating Struct Values
05:36

Embedding Structs
06:30

Structs with Receiver Functions
07:26

Pass By Value
05:52

Structs with Pointers
03:12

Pointer Operations
10:13

Pointer Shortcut
06:26

Gotchas With Pointers
04:09

Test Your Knowledge: Pointers
9 questions

Reference vs Value Types
07:38

Test Your Knowledge: Value vs Reference Types
6 questions
+
Maps
4 Lectures 21:52
What's a Map?
05:47

Manipulating Maps
04:55

Iterating Over Maps
05:16

Differences Between Maps and Structs
05:54

Test Your Knowledge: Maps
4 questions
+
Interfaces
16 Lectures 01:45:35
Purpose of Interfaces
09:25

Problems Without Interfaces
10:14

Interfaces in Practice
09:16

Rules of Interfaces
07:48

Extra Interface Notes
06:58

The HTTP Package
07:59

Reading the Docs
05:35

More Interface Syntax
03:13

Interface Review
01:53

The Reader Interface
08:17

More on the Reader Interface
07:23

Working with the Read Function
05:38

The Writer Interface
04:15

The io.Copy Function
05:12

The Implementation of io.Copy
04:33

A Custom Writer
07:56

Test Your Knowledge: Interfaces
8 questions

Test your knowledge of creating interfaces!
Interfaces
1 question

Get more practice with interfaces implemented by the standard library.
Hard Mode Interfaces
1 question
+
Channels and Go Routines
14 Lectures 01:30:29
Website Status Checker
05:28

Printing Site Status
04:32

Serial Link Checking
03:27

Go Routines
07:12

Theory of Go Routines
08:41

Channels
06:09

Channel Implementation
09:16

Blocking Channels
09:55

Receiving Messages
03:32

Repeating Routines
06:45

Alternative Loop Syntax
03:58

Sleeping a Routine
06:14

Function Literals
04:48

Channels Gotcha!
10:32

Channels and Go Routines
6 questions
About the Instructor
Stephen Grider
4.7 Average rating
47,604 Reviews
110,645 Students
13 Courses
Engineering Architect

Stephen Grider has been building complex Javascript front ends for top corporations in the San Francisco Bay Area. With an innate ability to simplify complex topics, Stephen has been mentoring engineers beginning their careers in software development for years, and has now expanded that experience onto Udemy, authoring the highest rated React course. He teaches on Udemy to share the knowledge he has gained with other software engineers. Invest in yourself by learning from Stephen's published courses.