Advanced Golang

Introduction

Course Introduction

Hi everyone, my name is Priyanka Yadav, and I'll be your instructor for this course. I currently work as a software engineer at LinkedIn.

In this article, we will delve into advanced concepts in Golang, an open-source programming language developed and maintained by Google. Golang continues to gain popularity within the software development community due to its simplicity, efficiency, and robust concurrency support.

Before you begin, please ensure you have a solid understanding of the foundational topics, including data types and variables, operators and control flow, functions, pointers, structs, methods, and interfaces. If you need a refresher on any of these topics, please check out the Golang Basics course.

The image shows a woman speaking, with a list of programming concepts like "Data Types," "Variables," and "Functions" displayed beside her.

This course is designed to simplify advanced Golang concepts using engaging animated illustrations. Each module is enhanced by interactive labs that reinforce the theoretical concepts with practical, hands-on experience.

Below is an example that demonstrates how to consume values from a channel while using a WaitGroup to synchronize Goroutines:

func consume(ch chan int, wg *sync.WaitGroup) {
    for val := range ch {
        fmt.Println("Received:", val)
    }
    fmt.Println("Exiting Consume")
    wg.Done()
}

The primary objectives of this course include:

  • Implementing concurrency using Goroutines and channels.
  • Organizing code efficiently with modules and packages.
  • Utilizing standard libraries and third-party packages.
  • Building RESTful APIs with Golang.
  • Establishing a CI/CD pipeline for streamlined project deployment.

The image shows a diagram with objectives related to programming concepts like modules, packages, and CI/CD pipelines, alongside a person speaking.

Note

If you encounter any difficulties or have questions as you progress, be sure to join our community channel. This is a great place to get assistance and share insights with fellow learners.

I hope you’re as excited as I am to embark on this journey into advanced Golang programming. Let’s get started!

Watch Video

Watch video content

Practice Lab

Practice lab