- Welcome!
- Why go?
- How to succeed
Learn How To Code: Google's Go (golang) Programming Language
Acquire a comprehensive understanding of the essential concepts of Go programming, which is intended for both beginner ...Read more
Online
₹ 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
certificate availability
Yes
certificate providing authority
Udemy
Who it is for
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
- 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