Unlock Go’s unique perspective on program design, and start writing simple, maintainable, and testable Go code.
In Effective Go
you will learn how to:
- Write idiomatic and easy-to-maintain Go programs from scratch
- Test Go according to best practices
- Spot common Go anti-patterns
- Create practical Go packages and applications
- Design and organize Go code and programs
- Understand what makes Go different from other languages
is a practical guide to writing high-quality code that’s easy to test and maintain. The book is full of best practices to adopt and anti-patterns to dodge. It explores what makes Go so dramatically different from other languages, and how you can still leverage your existing skills into writing excellent Go code. Aimed at Go beginners looking to graduate to serious Go development, you’ll write and test command line applications, web API clients and servers, concurrent programs, and more.
about the technology
Writing well-designed Go code takes more than just porting across skills you’ve learned in other languages. You’ll need to understand Go’s unique way of working to ensure your programs don’t spiral out of control. This book is the perfect primer on Go’s hidden mechanics that will help you code more effective Go.
about the book
teaches you to write well-designed and maintainable code in Go. By concentrating on Go’s unique characteristics, you’ll learn how to stop fighting against the language and start delivering idiomatic code that’s simple, adaptable, and testable. You’ll learn how to deliver applications and how to extend code with robust testing. Easy to understand visualisations and step-by-step examples help explain Go’s complexities without oversimplification.
about the reader
For programmers who have learned the basics of Go.
about the author
has over 20 years of experience in software engineering. For the last four years, he has worked as a consultant for Go software architecture, focusing on best practices and testing. Inanc is also an open-source contributor to the official Go test package, and teaches Go through online courses, his blog, his Youtube channel, and GitHub repository with over 10,000 stars.