Go Application Development – Tips, Tricks, and Techniques

Go Application Development – Tips, Tricks, and Techniques

English | MP4 | AVC 1920×1080 | AAC 48KHz 2ch | 2h 05m | 421 MB

Develop powerful and efficient apps with Go. Get proven approaches to improve your application development processes.

Do you want to make your applications efficient? Do you want to move your Go coding skills to the next level? This course will help to you develop applications and services with Go efficiently and bring high quality to your work as a developer.

You will work practically with some interesting tools, frameworks, and techniques that you can use to leverage the benefits of working with Go to develop your applications. This course will highlight practical and proven techniques to improve particular aspects of Go programming.

You will focus on discovering new possibilities with Go programming. Each section will address common challenges that you might be facing in your coding tasks. We’ll cover specific techniques with clear instructions to carry out app development tasks with Go using practical examples. You will explore the tools available to measure and improve the code quality of your Go projects.

By the end of this course, you will be a Go expert and your efficiency and performance levels will have definitely improved, which will ultimately make your day-to-day life easy as a Go application developer.

In this course, we will provide you with tips and tricks by giving you simple and easy to follow examples that will improve your day-to-day life as a Go application developer.

What You Will Learn

  • Use different tips, tricks and techniques while developing an application using Go
  • Work with essential tools to improve your work within Go application development
  • Work with one of Go’s main features, that is, Concurrency using Goroutines and channels
  • Find out about data marshaling and unmarshaling techniques with JSON and other formats easily
  • Tackle the most common “plumbing” issues when building Go Microservices
  • Explore the tools available to measure and improve the code quality of Go projects such as gofmt, govet, and others
  • Build and package your application efficiently for a multitude of different platforms
Table of Contents

1 Course Overview
2 Setting Up VS Code
3 Common VS Code Commands
4 The Select Statement
5 Implementing Timeouts Using Select
6 Building Asynchronous Observers with Channels
7 Detecting Race Conditions
8 Using the Sync Package
9 Encoding and Decoding from Streams
10 Building Custom (Un)Marshalers
11 Unmarshaling into Interface{} Values
12 Alternative JSON Libraries
13 Generate JSON Types Automatically
14 Unit Testing in Go
15 Measuring Test Coverage
16 Using Mocks in Unit Tests
17 Using the CPU Profiler
18 Finding and Plugging Memory Leaks
19 How to Use the Delve Debugger
20 Consistent Formatting with gofmt
21 Finding Common Errors with govet
22 Checking Code Style with golint
23 Testing Complexity with gocyclo
24 Find Unchecked Errors with errcheck
25 Find Security Issues with gosec
26 Managing Dependencies with Go Modules
27 Cross-Compiling for Other Operating Systems
28 Building Minimal Docker Images Using the “scratch” Base Image
29 Automate Releases Using GoReleaser
30 Building a CI CD Pipeline for a Go Project