Special offers now — see discounted courses.
day
:
hour
:
min
:
sec
See special offers
Go Essentials: Concurrency, Connectivity, and High-Performance Apps

Go Essentials: Concurrency, Connectivity, and High-Performance Apps

1h 46mBeginner2022-04-20

Authors

Miki Tebeka

Miki Tebeka

CEO at 353Solutions

Course details

Go is an open-source programming language created by Google, prized for its concurrency and connectivity. Using Go, developers can build modern applications that can save companies money on backend resources. This course is designed to help developers be productive with Go, starting with the essentials of the syntax. Learn the basics of Go basic types such as numbers and strings; working with conditionals and loops; creating object-oriented code with structs and methods; and handling errors. Instructor Miki Tebeka also emphasizes the concurrency features such as goroutines and channels, and connectivity features for networking with APIs and databases. For the final project, Mika shows you how to build a highly concurrent server that combines everything you've learned into one elegant solution powered by Go.

Skills covered

GoGoogleEssential TrainingProgramming LanguagesSoftware Development

Concepts

0. Introduction

  • 01 - Go for modern applications
  • 02 - What you should know

1. Getting Started

  • 03 - Setting up your work environment
  • 04 - Anatomy of a Go program
  • 05 - The Go tool

2. Go Basics

  • 06 - Numbers and assignments
  • 07 - Conditionals
  • 08 - For loops
  • 09 - Challenge - FizzBuzz
  • 10 - Solution - FizzBuzz
  • 11 - Strings
  • 12 - Challenge - Even-ended numbers
  • 13 - Solution - Even-ended numbers
  • 14 - Slices
  • 15 - Challenge - Find the maximal value
  • 16 - Solution - Find the maximal value
  • 17 - Maps
  • 18 - Challenge - Maps
  • 19 - Solution - Maps

3. Functions

  • 20 - Defining a function
  • 21 - Parameter passing
  • 22 - Error return
  • 23 - Defer
  • 24 - Challenge - Write a function
  • 25 - Solution - Write a function

4. Object-Oriented

  • 26 - Structs
  • 27 - Methods
  • 28 - Creating structs with New function
  • 29 - Challenge - Structs
  • 30 - Solution - Structs
  • 31 - Interfaces
  • 32 - Challenge - Interfaces
  • 33 - Solution - Interfaces
  • 34 - Generics

5. Error Handling

  • 35 - pkg errors
  • 36 - Panic and recover
  • 37 - Challenge - Server kill
  • 38 - Solution - Server kill

6. Concurrency

  • 39 - Goroutines
  • 40 - Channels
  • 41 - Challenge - Channels
  • 42 - Solution - Channels
  • 43 - Select
  • 44 - Context
  • 45 - Challenge - Download size
  • 46 - Solution - Download size

7. Project Management

  • 47 - Manage requirements
  • 48 - Testing
  • 49 - testify
  • 50 - Challenge - Testing
  • 51 - Solution - Testing
  • 52 - Benchmarking and profiling

8. Networking

  • 53 - JSON
  • 54 - HTTP calls
  • 55 - Timeouts & Size Limit
  • 56 - Challenge - Call the GitHub API
  • 57 - Solution - Call the GitHub API
  • 58 - HTTP server
  • 59 - Challenge - Key-value database
  • 60 - Solution - Key-value database

Conclusion

  • 61 - Next steps

Related courses

Related learn paths

About us

LyndaKade is a leading learning platform that helps people learn business, software, technology, and creative skills to achieve personal and professional goals.

Phone numberAparat ChannelTelegram SupportTelegram ChannelInstagram Page

All rights to this site belong to LyndaKade.

Terms of Service|Privacy Policy

نماد الکترونیک enamad در صورت اتصال با آی‌پی داخل کشور، نمایش داده خواهد شد.
logo-samandehi - لوگو ساماندهی
zarinpal
zibal