Practical techniques for building concurrent, cloud-native, and high performance Go applications—all accelerated with productivity-boosting AI tools.
Go in Practice, Second Edition is full of tips, tricks, best practices, and expert insights into how to get things done with Go. It builds on your existing knowledge of the Go language, introducing specific strategies you can use to maximize your productivity in day-to-day dev work.
Go in Practice, Second Edition has been extensively revised by author Nathan Kozyra to cover the latest version of Go, along with new dev techniques, including productivity-boosting AI tools. It follows an instantly-familiar cookbook-style Problem/Solution/Discussion format, building on what you already know about Go with advanced or little-known techniques for concurrency, logging and caching, microservices, testing, deployment, and more.
You’ve mastered the basics of Go—now what? To build production-quality Go applications, you’ll need to handle concurrency, networking, file access, native communication protocols like gRPC and TCP/REST, and a host of other practical issues. Following a friendly cookbook format, this book gives you instantly-useful solutions to the problems you’ll see on the job.
Go in Practice, Second Edition delivers dozens of practical techniques for writing and maintaining Go applications following a handy problem/solution/discussion format. This up-to-date revision covers the latest Go innovations, including generics, panics and other error handling tools, and modern concurrency patterns, along with advanced features like reflection and code generation. You’ll also love the tips for integrating AI code completion into your development process.
For intermediate developers with previous experience in Go.
Если вы уже перелопатили туториалы по Go, знаете, что такое горутины и каналы, но до сих пор не очень понимаете, как из этого всего собрать что-то настоящее — эта книга точно для вас. «Go in Practice» — это не сухое руководство по синтаксису, а скорее сборник рецептов и практических советов от разработчиков, которые сами прошли через всё это.
Авторы — Nathan Kozyra, Matt Butcher и Matt Farina — не грузят теорией. Вместо этого они сразу показывают, как решать реальные задачи: от написания CLI-утилит и веб-серверов до работы с ошибками, тестирования и даже развёртывания в облаке. Чувствуется, что они сами сталкивались с этими проблемами и теперь делятся рабочими решениями, а не академическими идеалами.
Что особенно цепляет:
Про ошибки и паники. Глава про обработку ошибок — одна из лучших. Объясняют, чем panic отличается от error, когда что использовать, и как не стрелять себе в ногу. После неё перестаёшь бояться recover().
Кому может не подойти:
В целом, «Go in Practice» читается как долгий разговор с опытным коллегой, который не умничает, а показывает фишки и делится лайфхаками. После неё хочется сесть и наконец-то дописать тот проект, который откладывал полгода.
Отличное дополнение к официальной документации и всяким Go by Example. Рекомендую 👌