- Series: Addison-Wesley Professional Computing Series
- Paperback: 400 pages
- Publisher: Addison-Wesley Professional; 1 edition (November 5, 2015)
- Language: English
- ISBN-10: 9780134190440
- ISBN-13: 978-0134190440
- ASIN: 0134190440
- Product Dimensions: 7.4 x 1.2 x 9.1 inches
- Shipping Weight: 1.4 pounds (View shipping rates and policies)
- Average Customer Review: 156 customer reviews
- Amazon Best Sellers Rank: #9,120 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
The Go Programming Language (Addison-Wesley Professional Computing Series) 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
Frequently bought together
Customers who bought this item also bought
From the Publisher
About the Author
Alan A. A. Donovan is a member of Google’s Go team in New York. He holds computer science degrees from Cambridge and MIT and has been programming in industry since 1996. Since 2005, he has worked at Google on infrastructure projects and was the co-designer of its proprietary build system, Blaze. He has built many libraries and tools for static analysis of Go programs, including oracle, godoc -analysis, eg, and gorename.
Brian W. Kernighan is a professor in the Computer Science Department at Princeton University. He was a member of technical staff in the Computing Science Research Center at Bell Labs from 1969 until 2000, where he worked on languages and tools for Unix. He is the co-author of several books, including The C Programming Language, Second Edition (Prentice Hall, 1988), and The Practice of Programming (Addison-Wesley, 1999).
Try the Kindle edition and experience these great reading features:
Read reviews that mention
Showing 1-8 of 156 reviews
There was a problem filtering reviews right now. Please try again later.
I own both the print and kindle editions of this book.
The book itself is great but I am very disappointed in the Kindle edition.
This is the first time that I have attempted to read a text book on a Kindle and I found that navigation within the book was extremely cumbersome. To add insult to injury all of the online code examples are line wrapped because of the Kindle formatting and there are links to out of line versions that are correctly formatted (but in a horrible font). Honestly, is that the best that Kindle can do?
I would have been better off with a PDF file of the book.
Case in point: Go builds statically-bound executables. No more runtime dependency woes from mis-matched DLL / .so versions.
Another example: a radically different approach to polymorphism and encapsulation leading to an easier and cleaner object model than any other.
The more I learn about Go, the more I am convinced that it will eventually overtake C/C++ as the defacto standard for system level development - and may even challenge Java and the dynamic languages for business-critical applications.
But not just that: it also helps get people into better coding habits.
Golang is a language based on best practices, and I feel I not only learned a new language this past Summer, but I also learned more about being a good programmer in general.
I would definitely consider using this language in bigger projects in the future, and I have already adopted several practices they listed across other languages I use.
The only things I am not a fan of with this language are the ways it implements public vs private data members and interfaces. I feel the variable name casing should not determine public or private members, because it is less explicit. I also did try a few things out, after reading, and I came across some nasty bugs that were not the easiest to track, due to the implicit interface implementation -- things would go from implementing part of my interface and not another to getting changed and implementing them in reverse, even with only the parts in question being changed; I would much rather say "implements x, y, z", and the compiler would know EXACTLY what I'm trying to do.
I especially appreciated the way this book was organized: the very first chapter starts with several illustrative examples before even introducing the language itself. Then the next several chapters cover all of the basic & advanced features of the language. The final few chapters cover some of the other concerns of modern professional programmers beyond just the language itself: the build environment, packaging, testing, etc.
If you want to learn the Go programming language, or if you already know how to program in Go but want to improve your understanding of the language, then this is the first & only book you'll need.
My only complaint that I have for the book is that there are sections that feel a little glazed over to me. Topics are just briefly touched on and then they move on. However, this not impede the reader in learning the major portions and important features of the language.