Go has rapidly become the preferred language for building web services. Plenty of tutorials are available to teach Go's syntax to developers with experience in other programming languages, but tutorials aren't enough. They don't teach Go's idioms, so developers end up recreating patterns that don't make sense in a Go context. This practical guide provides the essential background you need to write clear and idiomatic Go.
No matter your level of experience, you'll learn how to think like a Go developer. Author Jon Bodner introduces the design patterns experienced Go developers have adopted and explores the rationale for using them. This updated edition also shows you how Go's generics support fits into the language.
This book helps you:
Write idiomatic code in Go and design a Go project
Understand the reasons behind Go's design decisions
Set up a Go development environment for a solo developer or team
Learn how and when to use reflection, unsafe, and cgo
Discover how Go's features allow the language to run efficiently
Know which Go features you should use sparingly or not at all
Use Go's tools to improve performance, optimize memory usage, and reduce garbage collection