O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Advanced Go Programming in 7 Days

Video Description

Amaze yourself by the skills you gain in a week with Golang advanced programming concepts

About This Video

  • Unique approach that will help you gain a solid foundation in advanced concepts with hands-on practice each day
  • Make your applications more robust and resilient by mastering Golang
  • Covers some essential and complex concepts in a practical way to help you take your app development to the next level

In Detail

Go is a modern, open source, statically typed language that resembles C. It is particularly useful in developing cloud-native applications as it’s convenient, occupies a low footprint, and deploys fast.

Go greatly simplifies the development of modern applications. With its vast ecosystem of tools and libraries, it's easy to create an efficient software pipeline that satisfies business requirements.

This course will elevate your knowledge of Go by teaching you the advanced concepts of the language. You'll also understand how you can utilize them in practice. It starts by introducing familiar features of the language before delving into more details.

You’ll master the art of programming with Go, which includes understanding the Go language, writing idiomatic yet readable code, building web applications, microservices, command-line applications, and more.

By the end of the course, you'll be ready to engineer efficient Go solutions that can move mountains.

The code bundle for this video course is available athttps://github.com/PacktPublishing/Advanced-Go-Programming-in-7-Days/

Downloading the example code for this course: You can download the example code files for all Packt video courses you have purchased from your account at http://www.PacktPub.com. If you purchased this course elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.

Table of Contents

  1. Chapter 1 : Challenging the Aspects of Go
    1. The Course Overview 00:01:57
    2. Installation 00:02:16
    3. Programming with Go 00:02:59
    4. Efficient Handling of Input and Output 00:05:44
    5. Error Handling Techniques 00:04:58
    6. Source Code Organization and Packages 00:03:26
    7. Daily Task: Write a Process Monitor 00:01:11
  2. Chapter 2 : Advanced Language Concepts
    1. Exercise Review 00:01:49
    2. Go Type System 00:04:30
    3. All about Strings and Runes 00:02:53
    4. Function Declarations and Calls 00:01:58
    5. Pointers and Structs 00:04:39
    6. Interfaces and Type Modeling 00:03:58
    7. Container Types 00:01:40
    8. Channels 00:02:35
    9. Reflection 00:02:51
    10. Goroutines 00:02:13
    11. Daily Task –Implement a Markdown Parser 00:02:28
  3. Chapter 3 : Mastering the Art of Writing Libraries
    1. Exercise Review 00:01:58
    2. Aspects of Library Development 00:01:42
    3. Writing Algorithms and Data Structures Like Trees and Sets 00:03:22
    4. Writing a GitHub API Library 00:05:34
    5. Writing a Blockchain SDK 00:03:51
    6. Daily Task: Write a Logging Library 00:01:25
  4. Chapter 4 : Mastering the Art of Writing Command Line Applications
    1. Exercise Review 00:02:11
    2. Aspects of Command-Line Application Development 00:00:50
    3. Writing a File Search Tool 00:05:55
    4. Writing a Curl Tool 00:07:48
    5. Writing a Key-Value Database 00:06:21
    6. Daily Task – Write a Stack Overflow Search Tool 00:01:15
  5. Chapter 5 : Mastering the Art of Writing Server-Level Code
    1. Task Overview 00:01:28
    2. Aspects of Server-Side Application 00:00:54
    3. Building a TCP Server 00:02:53
    4. Building a UDP Servers 00:01:53
    5. Develop a Web Framework 00:03:56
    6. Daily Task – Writing an CORS Anywhere Server 00:01:13
  6. Chapter 6 : Developing Microservices – I
    1. Task Overview 00:02:08
    2. Aspects of Microservice-Based Application 00:02:02
    3. Domain-Driven Design 00:10:14
    4. Issue Tracker Microservice – Databases 00:06:45
    5. Issue Tracker Microservice – Authorization 00:11:13
    6. Daily Task – Implement a Paginator 00:01:16
  7. Chapter 7 : Developing Microservices – II
    1. Task Overview 00:03:10
    2. API Gateways 00:06:58
    3. Microservice Communication Patterns – RPCs 00:08:38
    4. Microservice Communications Patterns: Message Queues 00:12:09
    5. 12 Factor Apps 00:08:20
    6. Daily Task – Issue Tracker Microservice 00:02:50