Mô tả

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!

Bạn sẽ học được gì

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

Yêu cầu

  • Solid experience with another programming language - Javascript, Python, Ruby, Java, or similar

Nội dung khoá học

8 sections

Getting Started

7 lectures
How to Get Help
00:19
Course Resources
00:39
Join Our Community!
00:07
Environment Setup
02:55
VSCode Installation
02:46
Go Support in VSCode
03:22
Gopls, undeclared name, type and module errors in VSCode
00:31

A Simple Start

7 lectures
Boring Ol' Hello World
03:11
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:15

Deeper Into Go

33 lectures
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
Creating a go.mod File
00:20
Testing With Go
03:40
Errorf call has arguments but no formatting directives
00:19
Writing Useful Tests
12:03
Asserting Elements in a Slice
04:23
Testing File IO
09:52
Project Review
06:17
Assignment: Even or Odd?
03:17
Even or Odd Solution
04:50

Organizing Data With Structs

14 lectures
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

5 lectures
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

21 lectures
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
Assignment: Interfaces
02:07
Interfaces Solution
07:56
Assignment: Hard Mode Interfaces
05:13
Hard Mode Interfaces Solution
08:11

Channels and Go Routines

15 lectures
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

Extras

1 lectures
Bonus!
00:33

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.