Go is a modern programming language built for the 21st century application development. Hardware and technology have advanced significantly over the past decade, and most of the other languages do not take advantage of these technical advancements. As we shall see throughout the book, Go allows us to build network applications that take advantage of concurrency and parallelism made available with multicore systems.
In this chapter, we will look at some of the topics required to work through rest of the book, such as:
- Go configuration—GOROOT, GOPATH, and so on.
- Go package management
- Project structure used throughout the book
- Container technology and how to use Docker
- Writing tests in Go