Go Application Development – Tips, Tricks, and Techniques [Video]
This is the code repository for Go Application Development – Tips, Tricks, and Techniques [Video], published by Packt. It contains all the supporting project files necessary to work through the video course from start to finish.
About the Video Course
The goal of this course is to help you develop applications and services with Go efficiently and in high quality. For this, we will start by showing how to effectively edit Go code with Visual Studio Code.
Next, we will move on to two common tasks when building Go programs: handling concurrency and encoding/decoding data into formats like JSON.
After that, we will take a look at various methods that you can use to improve the software quality in your Go project. You will learn how to use the unit testing framework, the build-in memory and CPU profilers and the Delve debugger. Furthermore, you will learn about various tools that you can use for static code analysis to increase your code quality even more. Finally, you will learn how you can effectively build and distribute your Go applications for a variety of deployment targets.
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
Instructions and Navigation
Assumed Knowledge
To fully benefit from the coverage included in this course, you will need:
To fully benefit from the coverage included in this course, you will need:
● Prior working knowledge of the Go language (beginner level)
● Familiarity with Git and GitHub (or similar) for source control
● (Optional) Experience with Docker and building container images
Technical Requirements
This course has the following software requirements:
This course has the following software requirements:
● An editor like Atom, Sublime Text or Visual Studio Code
● Go, version 1.11
● Docker
● Git
This course has been tested on the following system configuration:
● OS: macOS
● Processor: 3,1 GHz Intel Core i5
● Memory: 16GB
● Hard Disk Space: 250GiB