Learn How To Code: Google's Go (golang) Programming Language

BY
Udemy

Acquire a comprehensive understanding of the essential concepts of Go programming, which is intended for both beginner and experienced developers.

Mode

Online

Fees

₹ 3099

Quick Facts

particular details
Medium of instructions English
Mode of learning Self study
Mode of Delivery Video and Text Based

Course overview

Learn How To Code: Google's Go (golang) Programming Language certification course is designed by Todd McLeod - College Professor and presented by Udemy. Learn How To Code: Google's Go (golang) Programming Language online course is the ultimate comprehensive resource for learning the Go Programming Language because it is rife with examples, hands-on exercises with solutions, and an amazing code collection that is best suited for both beginners and experienced developers looking to improve their skills in Google's Go programming language (Golang).

Learn How To Code: Google's Go (golang) Programming Language online classes by Udemy comprise 45 hours of thorough video lectures, 4 articles, and 85 downloaded resources that participants can use even when they are not connected to the internet. Participants will also obtain a certificate upon completion of this training, which will certify their knowledge and learning in Golang and help them land a better job.

The highlights

  • Certificate of completion
  • Self-paced course
  • English videos with multi-language subtitles
  • 45 hours of pre-recorded video content
  • 4 articles
  • 85 downloadable resources
  • Exercises
  • 30-day money-back guarantee 
  • Unlimited access
  • Accessible on mobile devices and TV

Program offerings

  • Certificate of completion
  • Self-paced course
  • English videos with multi-language subtitles
  • 45 hours of pre-recorded video content
  • 4 articles
  • 85 downloadable resources
  • Exercises
  • 30-day money-back guarantee
  • Unlimited access

Course and certificate fees

Fees information
₹ 3,099
certificate availability

Yes

certificate providing authority

Udemy

What you will learn

After completing the Learn How To Code: Google's Go (golang) Programming Language online certification, participants will develop a solid understanding of the essential concepts of Go programming (Golang) for software development. Participants will experiment with different shell/bash commands and learn about benchmarks, channels, and concurrency. Participants will be introduced to the methodologies for package management and control flow. Participants will also learn about the IDE, JSON, and Github repositories, as well as how to handle errors, tests, and documentation.

The syllabus

Introduction

  • Welcome!
  • Why go?
  • How to succeed
  • Why choose the Go programming language?
  • Hello World!

Course Overview

  • Course outline
  • Documentation
  • Miscellaneous resources

Your development environment

  • The terminal
  • Bash on windows
  • Shell / bash commands I
  • Shell / bash commands II
  • Installing Go
  • Go modules - introduction
  • Go workspace
  • Environment variables
  • Intro to IDE's
  • VS Code IDE
  • IDE's
  • Go commands
  • Github repos
  • Github explored
  • Package management
  • Go modules overview
  • Creating a go module
  • Adding a dependency
  • Upgrading dependencies

Variables, values, & type

  • Playground
  • Hello world
  • Introduction to packages
  • Short declaration operator
  • The var keyword
  • Exploring type
  • Zero value
  • The fmt package
  • Creating your own type
  • Conversion, not casting

Exercises - Ninja Level 1

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5
  • Quiz for "Variables, Values & Type"
  • Hands-on exercise #6

Programming fundamentals

  • Bool type
  • How computers work
  • Numeric types
  • String type
  • Numeral systems
  • Constants
  • Iota
  • Bit shifting

Exercises - Ninja Level 2

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5
  • Hands-on exercise #6
  • Quiz for Fundamentals of Programming

Control flow

  • Understanding control flow
  • Loop - init, condition, post
  • Loop - nesting loops
  • Loop - for statement
  • Loop - break & continue
  • Loop - printing ascii
  • Conditional - if statement
  • Conditional - if, else if, else
  • Loop, conditional, modulus
  • Conditional - switch statement
  • Conditional - switch statement documentation
  • Conditional logic operators

Exercises - Ninja Level 3

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5
  • Hands-on exercise #6
  • Hands-on exercise #7
  • Hands-on exercise #8
  • Hands-on exercise #9
  • Hands-on exercise #10

Grouping data

  • Array
  • Slice - composite literal
  • Slice - for range
  • Slice - slicing a slice
  • Slice - append to a slice
  • Slice - deleting from a slice
  • Slice - make
  • Slice - multi-dimensional slice
  • Map - introduction
  • Map - add element & range
  • Map - delete

Exercises - Ninja Level 4

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5
  • Hands-on exercise #6
  • Hands-on exercise #7
  • Hands-on exercise #8
  • Hands-on exercise #9
  • Hands-on exercise #10

Structs

  • Struct
  • Embedded structs
  • Reading documentation
  • Anonymous structs
  • Housekeeping

Exercises - Ninja Level 5

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4

Functions

  • Syntax
  • Variadic parameter
  • Unfurling a slice
  • Defer
  • Methods
  • Interfaces & polymorphism
  • Anonymous func
  • func expression
  • Returning a func
  • Callback
  • Closure
  • Recursion
  • Section Overview
  • Intro To Functions
  • Func Returns
  • Variadic Functions
  • Variadic Arguments
  • Func Expressions
  • Closure
  • Callbacks
  • Callback Example
  • Recursion
  • Defer
  • Pass By Value
  • Reference Types
  • Anonymous Self-Executing Functions
  • Bool Expressions
  • Exercises - Part I
  • Exercises - Part II
  • Section Review

Exercises - Ninja Level 6

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5
  • Hands-on exercise #6
  • Hands-on exercise #7
  • Hands-on exercise #8
  • Hands-on exercise #9
  • Hands-on exercise #10

Pointers

  • What are pointers?
  • When to use pointers
  • Method sets

Exercises - Ninja Level 7

  • Hands-on exercise #1
  • Hands-on exercise #2

Application

  • JSON documentation
  • JSON marshal
  • JSON unmarshal
  • Writer interface
  • Sort
  • Sort custom
  • bcrypt

Exercises - Ninja Level 8

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5

Concurrency

  • Concurrency vs parallelism
  • WaitGroup
  • Method sets revisited
  • Documentation
  • Race condition
  • Mutex
  • Atomic
  • Concurrency & WaitGroup
  • Parallelism
  • Race Conditions
  • Mutex
  • Atomicity
  • Review & Channels Preview

Exercises - Ninja Level 9

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5
  • Hands-on exercise #6

Channels

  • Understanding channels
  • Directional channels
  • Using channels
  • Range
  • Select
  • Comma ok idiom
  • Fan in
  • Fan out
  • Context
  • Channels - Introduction
  • Range Clause
  • N-to-1
  • Semaphores - Part 1
  • Semaphores - Part 2
  • 1-to-N
  • Channels as Arguments & Returns
  • Channel Direction

Exercises - Ninja Level 10

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5
  • Hands-on exercise #6
  • Hands-on exercise #7

Error handling

  • Understanding
  • Checking errors
  • Printing and logging
  • Recover
  • Errors with info

Exercises - Ninja Level 11

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3
  • Hands-on exercise #4
  • Hands-on exercise #5

Writing documentation

  • Introduction
  • go doc
  • godoc
  • godoc.org
  • Writing documentation

Exercises - Ninja Level 12

  • Hands-on exercise #1

Testing & benchmarking

  • Introduction
  • Table tests
  • Example tests
  • Golint
  • Benchmark
  • Coverage
  • Benchmark examples
  • Review

Exercises - Ninja Level 13

  • Hands-on exercise #1
  • Hands-on exercise #2
  • Hands-on exercise #3

Farewell

  • Congratulations
  • Congratulations
  • Bonus lecture

Repetition leads to mastery

  • The original course

Installing Go

  • Section Overview
  • The Terminal
  • Installation Insights
  • Go Workspace
  • Environment Variables
  • Windows - Configuring Path Variables
  • Mac - Configuring Path Variables
  • IMPORTANT - REGARDING LINUX VIDEOS THAT FOLLOW
  • Linux - Machine Setup
  • Linux - Machine Configuration
  • Linux - Configuring Path Variables
  • Testing Your Installation
  • Section Review

Your Development Environment

  • Section Overview
  • Go Editors
  • WebStorm & Atom.io
  • Creating Your First Project
  • Hello World with Webstorm
  • The Go Command & Documentation
  • Understanding Github
  • Using Github
  • Section Review

Computer Fundamentals

  • Section Ov02:03
  • How Computers Work - Part I
  • How Computers Work - Part II
  • Github Update Command
  • Numeral Systems
  • Binary Numbering System
  • Hexadecimal Numbering System
  • Text Encoding
  • Coding Scheme Programs
  • Format Printing
  • Section Review

Language Fundamentals

  • Section Overview
  • Packages
  • Go Commands
  • Variables
  • Scope
  • Scope II
  • Closure
  • Blank Identifier
  • Constants
  • Constants II
  • Words of Encouragement
  • Pointers
  • Using Pointers
  • Remainder
  • Section Review

Control Flow

  • Section Overview
  • For Loop
  • Nested Loops
  • Conditions, Break, & Continue
  • Documentation & Terminology
  • Rune
  • String Type
  • Switch Statements
  • If Statements
  • Exercise Solutions
  • Section Review

Data Structures - Array

  • Data Structures Overview
  • Array
  • Array Examples

Data Structures - Slice

  • Slices
  • Slice Examples
  • More Slice Examples
  • Creating A Slice
  • Incrementing A Slice Item
  • Section Review

Data Structures - Map

  • Maps Introduction
  • Map Examples - Part I
  • Map Examples - Part II
  • Map Examples - Part III
  • Map Documentation
  • Map Range Loop
  • GitHub Pull
  • Hash Tables
  • Hashing Words
  • Hashing Words II
  • Build A Hash Table
  • Finished Hash Algorithm

Data Structures - Struct

  • Structs Introduction
  • OOP in Go
  • User-Defined Types
  • Composition
  • JSON Marshal
  • JSON Unmarshal
  • JSON Encode
  • JSON Decode

Interfaces

  • Interfaces
  • Code Substitutability
  • Bill Kennedy
  • Donovan & Kernighan
  • Sort Package
  • Sort Solution
  • Sort Reverse
  • Sort Slice Int
  • Empty Interface
  • Method Sets
  • Conversion vs Assertion

Applied Concurrency

  • Incrementor With Channels
  • Deadlock Challenge
  • Factorial Challenge
  • Pipeline Pattern
  • Factorial Challenge Redux
  • Factorial Challenge Redux Solution
  • Fan Out / Fan In Pattern - Overview
  • Fan In Pattern
  • Fan Out / Fan In - Example

Concurrency Challenges

  • Fan Out / Fan In - Challenge
  • Fan Out / Fan In - Solution
  • Fan Out / Fan In - Challenge: Factorial
  • Fan Out / Fan In - Solution: Factorial
  • Deadlock Challenge
  • Deadlock Solution
  • Incrementor Challenge Revisited
  • Incrementor Solution

Concurrency Resources

  • Additional Resources

Error Handling

  • An Introduction to Error Handling in Go
  • Improving Your Code with Golint
  • Handling Errors & Logging Errors to a File
  • Four Common Ways to Handle Errors
  • Custom Errors - Creating Values of Type error
  • Idiomatic Error Handling
  • Providing Context with Errors
  • Providing Even More Context with Errors
  • Error Handling Review & Resources

Instructors

Mr Todd McLeod

Mr Todd McLeod
Professor
Freelancer

Other Bachelors

Articles

Popular Articles

Latest Articles

Trending Courses

Popular Courses

Popular Platforms

Learn more about the Courses

Download the Careers360 App on your Android phone

Regular exam updates, QnA, Predictors, College Applications & E-books now on your Mobile

Careers360 App
150M+ Students
30,000+ Colleges
500+ Exams
1500+ E-books