Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ Microsoft AZ-900
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Personal Transformation Life Purpose Meditation CBT Emotional Intelligence
Web Development JavaScript React CSS Angular PHP Node.Js WordPress Vue JS
Google Flutter Android Development iOS Development React Native Swift Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
Microsoft Power BI SQL Tableau Business Analysis Data Modeling Business Intelligence MySQL Data Analysis Blockchain
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Business Plan Startup Online Business Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Programming Languages Go Programming Language

Go: The Complete Developer's Guide (Golang)

Master the fundamentals and advanced features of the Go Programming Language (Golang)
Bestseller
Rating: 4.6 out of 54.6 (18,072 ratings)
65,737 students
Created by Stephen Grider
Last updated 4/2021
English
English [Auto], French [Auto], 
30-Day Money-Back Guarantee

What you'll 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
Curated for the Udemy for Business collection

Course content

8 sections • 83 lectures • 8h 53m total length

  • How to Get Help
    00:19
  • Link to Completed Code
    00:03
  • Join Our Community!
    00:07
  • Environment Setup
    Preview02:55
  • VSCode Installation
    Preview02:46
  • Go Support in VSCode
    Preview03:22

  • Preview03: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

  • 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
  • Even and Odd
    1 question

  • 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

  • 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

  • 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
  • Interfaces
    1 question
  • Hard Mode Interfaces
    1 question

  • 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

  • Bonus!
    00:16

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 this course is for:

  • Anyone who wants to understand the fundamental features of Go

Featured review

Cris Lawrence
Cris Lawrence
108 courses
11 reviews
Rating: 5.0 out of 56 months ago
Good intro for a seasoned programmer who is just not acquainted with Go. We don't get bogged down with questions like "What is a variable". A programming newbie might find the course a bit challenging however. Explanations of gotchas were good and thorough but knowing similar issues in other languages made my understanding much easier.

Instructor

Stephen Grider
Engineering Architect
Stephen Grider
  • 4.7 Instructor Rating
  • 293,519 Reviews
  • 775,567 Students
  • 29 Courses

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.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.