Programming in Go: Creating Applications for the 21st Century

· Addison-Wesley
3.6
16 reviews
Ebook
496
Pages
Eligible
15% price drop on Mar 28

About this ebook

Your Hands-On Guide to Go, the Revolutionary New Language Designed for Concurrency, Multicore Hardware, and Programmer Convenience

Today’s most exciting new programming language, Go, is designed from the ground up to help you easily leverage all the power of today’s multicore hardware. With this guide, pioneering Go programmer Mark Summerfield shows how to write code that takes full advantage of Go’s breakthrough features and idioms.

Both a tutorial and a language reference, Programming in Go brings together all the knowledge you need to evaluate Go, think in Go, and write high-performance software with Go. Summerfield presents multiple idiom comparisons showing exactly how Go improves upon older languages, calling special attention to Go’s key innovations. Along the way, he explains everything from the absolute basics through Go’s lock-free channel-based concurrency and its flexible and unusual duck-typing type-safe approach to object-orientation.

Throughout, Summerfield’s approach is thoroughly practical. Each chapter offers multiple live code examples designed to encourage experimentation and help you quickly develop mastery. Wherever possible, complete programs and packages are presented to provide realistic use cases, as well as exercises. Coverage includes

  • Quickly getting and installing Go, and building and running Go programs
  • Exploring Go’s syntax, features, and extensive standard library
  • Programming Boolean values, expressions, and numeric types
  • Creating, comparing, indexing, slicing, and formatting strings
  • Understanding Go’s highly efficient built-in collection types: slices and maps
  • Using Go as a procedural programming language
  • Discovering Go’s unusual and flexible approach to object orientation
  • Mastering Go’s unique, simple, and natural approach to fine-grained concurrency
  • Reading and writing binary, text, JSON, and XML files
  • Importing and using standard library packages, custom packages, and third-party packages
  • Creating, documenting, unit testing, and benchmarking custom packages

Ratings and reviews

3.6
16 reviews
Cameron Jacobson
June 6, 2013
I'm about half-way through. As I read this book, I feel like there's too much stream-of-consciousness writing going on here, and not enough thought has gone into organizing and separating out different ideas and treating them as such. Not impossible to comprehend, and I do intend to finish the book, but in my opinion there are far better sources of information on the Go programming language in the form of free tutorials online. This book is bad enough that I feel obliged to write a review.
2 people found this review helpful
Did you find this helpful?
Fernando Diaz (Fér)
April 16, 2015
Comprehensive and detailed explanations with code samples. Not for the impatient.
Did you find this helpful?
Anuj Thapliyal
February 12, 2014
Google Reader is erring out when trying to read chapter 2
1 person found this review helpful
Did you find this helpful?

About the author

Mark Summerfield, owner of Qtrac Ltd., is an independent trainer, consultant, technical editor, and writer specializing in Go, Python, C++, Qt, and PyQt. His books include Rapid GUI Programming with Python and Qt (Prentice Hall, 2007), C++ GUI Programming with Qt 4 (with Jasmin Blanchette, Prentice Hall, 2008), Programming in Python 3, Second Edition (Addison-Wesley, 2009), and Advanced Qt Programming (Prentice Hall, 2010).

Rate this ebook

Tell us what you think.

Reading information

Smartphones and tablets
Install the Google Play Books app for Android and iPad/iPhone. It syncs automatically with your account and allows you to read online or offline wherever you are.
Laptops and computers
You can listen to audiobooks purchased on Google Play using your computer's web browser.
eReaders and other devices
To read on e-ink devices like Kobo eReaders, you'll need to download a file and transfer it to your device. Follow the detailed Help Center instructions to transfer the files to supported eReaders.