


Buy anything from 5,000+ international stores. One checkout price. No surprise fees. Join 2M+ shoppers on Desertcart.
Desertcart purchases this item on your behalf and handles shipping, customs, and support to New Zealand.
Go Programming Language, The (Addison-Wesley Professional Computing Series): 9780134190440: Computer Science Books @ desertcart.com Review: The best programming language book I read for a while - I like GO because It implements cleanly such modern features as abstract data type, data encapsulation, object composition, interface, package, CSP model (Tony Hoare) concurrent programing, multi-value-return function, deferred function calls, garbage collection, exporting names by capitalization, simple but effective exception handling and memory model. It is a static type language. Higher abstract data types such as map (hash table), string, array and slice are built in to simplify memory management. Its syntax is succinct (only 25 keywords). Yet using it correctly can lead to powerful program constructs. Little redundancies are built into the language. As such, there are not many alternate ways to do one thing which leads to codes that are easy to understand and maintain. The designers deliberately choose to implement features to support object composition instead of inheritance, to handle exception where it happens instead of the throw and catch clauses, to use simple "struct literals" to initialize abstract data type instead of constructor functions, and "type" expression to help users consistently define user types, interface (abstract) type as a standard protocols to call different concrete-objects methods (the correct way to implement polymorphism). It does not have default arithmetic type conversion, and function name overloading, which together with class inheritance (function overwrite), constructor functions, throw-and-catch exception handling are the sources of needlessly programing complexity. Importantly, both procedure (functions and data structures) and object-oriented (objects and methods) methodologies can be used. There are just enough features that help make GO a pleasant language to write. All features are careful designed to work well together which facilitate a program model that is quite powerful, but simple to learn, reason, write, and support. The book is well written by a GO expert programmer and a computer pioneer and noted author of programing books. Concepts are coherently and timely presented. Examples are usually not code fragments, but complete programs which can be compiled and run. Programs of complex concepts are presented in multiple versions from simpler to more elaborated ones. Like the efficient design of GO, the book is never overwritten. It is the most enjoyable programing book I have read in a long while. Review: A Fantastic Read - This book is not only one of the best books I've read on Go, but also one of the best programming books I've read in general. It is easy to understand and well edited. I thought the first chapter was really entertaining, explaining the origins of go (Plan 9, etc.), and the pacing from there is really great for my tastes. It's not overly verbose (there are a few sentences that are short but pack a punch that I re-read a few times just to make sure I understood them) and it's not trying to teach you how to program. I am a gopher by way of .NET Core (among others), and this helped me immensely. It explains *why* golang is the way it is as well as nearly all aspects of the language. I have been programming professionally for > 15 years but I became a golang dev in a "trial by fire" manner. I took over a full-stack Angular/go project that was written by a brand new developer, so there were a ton of terrible practices / bugs and it was already in production (as it turns out, in the real world things are sometimes less than ideal!). I read the docs, did the "Tour of Go" (which is really nice, by the way) and "Go by Example" (also recommend), and hit the ground running. Go is a simple language to learn, so I was able to squash bugs and ship new features immediately; but this book really helped flesh out the gaps in my knowledge. If you have some experience programming but are new to Go (or want to dig deeper), this is the one to get. If you are new to programming, I would approach this with some trepidation. I don't think it's completely out of the question for a brand new programmer, but you might have to do some googling along the way to help you with concepts that maybe aren't explained in detail in this book because it's assumed they are already known.



| ASIN | 0134190440 |
| Best Sellers Rank | #113,476 in Books ( See Top 100 in Books ) #32 in Computer Programming Languages #95 in Programming Languages (Books) |
| Customer Reviews | 4.7 4.7 out of 5 stars (1,486) |
| Dimensions | 9.1 x 7.3 x 1 inches |
| Edition | 1st |
| ISBN-10 | 9780134190440 |
| ISBN-13 | 978-0134190440 |
| Item Weight | 1.48 pounds |
| Language | English |
| Part of series | Addison-Wesley Professional Computing |
| Print length | 400 pages |
| Publication date | October 26, 2015 |
| Publisher | Addison-Wesley Professional |
C**M
The best programming language book I read for a while
I like GO because It implements cleanly such modern features as abstract data type, data encapsulation, object composition, interface, package, CSP model (Tony Hoare) concurrent programing, multi-value-return function, deferred function calls, garbage collection, exporting names by capitalization, simple but effective exception handling and memory model. It is a static type language. Higher abstract data types such as map (hash table), string, array and slice are built in to simplify memory management. Its syntax is succinct (only 25 keywords). Yet using it correctly can lead to powerful program constructs. Little redundancies are built into the language. As such, there are not many alternate ways to do one thing which leads to codes that are easy to understand and maintain. The designers deliberately choose to implement features to support object composition instead of inheritance, to handle exception where it happens instead of the throw and catch clauses, to use simple "struct literals" to initialize abstract data type instead of constructor functions, and "type" expression to help users consistently define user types, interface (abstract) type as a standard protocols to call different concrete-objects methods (the correct way to implement polymorphism). It does not have default arithmetic type conversion, and function name overloading, which together with class inheritance (function overwrite), constructor functions, throw-and-catch exception handling are the sources of needlessly programing complexity. Importantly, both procedure (functions and data structures) and object-oriented (objects and methods) methodologies can be used. There are just enough features that help make GO a pleasant language to write. All features are careful designed to work well together which facilitate a program model that is quite powerful, but simple to learn, reason, write, and support. The book is well written by a GO expert programmer and a computer pioneer and noted author of programing books. Concepts are coherently and timely presented. Examples are usually not code fragments, but complete programs which can be compiled and run. Programs of complex concepts are presented in multiple versions from simpler to more elaborated ones. Like the efficient design of GO, the book is never overwritten. It is the most enjoyable programing book I have read in a long while.
D**.
A Fantastic Read
This book is not only one of the best books I've read on Go, but also one of the best programming books I've read in general. It is easy to understand and well edited. I thought the first chapter was really entertaining, explaining the origins of go (Plan 9, etc.), and the pacing from there is really great for my tastes. It's not overly verbose (there are a few sentences that are short but pack a punch that I re-read a few times just to make sure I understood them) and it's not trying to teach you how to program. I am a gopher by way of .NET Core (among others), and this helped me immensely. It explains *why* golang is the way it is as well as nearly all aspects of the language. I have been programming professionally for > 15 years but I became a golang dev in a "trial by fire" manner. I took over a full-stack Angular/go project that was written by a brand new developer, so there were a ton of terrible practices / bugs and it was already in production (as it turns out, in the real world things are sometimes less than ideal!). I read the docs, did the "Tour of Go" (which is really nice, by the way) and "Go by Example" (also recommend), and hit the ground running. Go is a simple language to learn, so I was able to squash bugs and ship new features immediately; but this book really helped flesh out the gaps in my knowledge. If you have some experience programming but are new to Go (or want to dig deeper), this is the one to get. If you are new to programming, I would approach this with some trepidation. I don't think it's completely out of the question for a brand new programmer, but you might have to do some googling along the way to help you with concepts that maybe aren't explained in detail in this book because it's assumed they are already known.
C**Y
Naturally captures the motivations that informed the language designers
If you want to learn the Go programming language using a printed book, you can't really go wrong with this one. People (of a certain age!) who grew up with K&R being a gold standard for language documentation, will certainly recognize the same qualities in this text. Other than an overly long introductory chapter, it is brief, to the point, and accurate. It uses realistic, and complete, examples to illustrate the design philosophy behind the language. All the code is easily downloadable using standard Go tools, so it is easy to try things out as you learn. It is probably worth noting that the book is very slightly dated (mine is a 2015 first printing; I only needed to learn Go for real a full five years after I purchased it!). Go has obviously evolved since the publication of the book. Most notably it now has a real module system. Many small tweaks have also been made to the language and platform. For example, error wrapping, and allowing for the embedding of interfaces with overlapping methods. Obviously, these are not in the book, but for a working programmer I believe it still remains a complete introduction to the language. Understanding the new changes in the context of the information in the book actually gave me a much better appreciation for how the language designers (and community) think about programming in Go.
T**M
Over the past years I've read many programming books. I must admin that this one really stands out! After completing the book you will have good understand of go language. However, note that this book will not cover all subject in depth so more advanced go programmers may not find this book very interesting. Examples are not trivial but rather interesting ones. Apart from letting you understand go better, they also give you interesting programming challenges, which could be used in other programming languages. I was really enjoying this book and highly recommend that book to any one who wants to start his adventure with go.
J**N
A very clearly written book with good examples explaining the language, emphasizing the simplicity and utility of the language. Only thing would have liked is a second edition with Generics added !
A**U
Excelente livro, traz explicacões claras sobre a linguagem. Não conhecia Go e tive de aprender para uso profissional, ajudou muito na curva de aprendizado.
V**K
Good starting point! Recommend if you are starting with the language!
M**T
J'adore ce livre de Go, il est très bien, je l'ai feuilleté pas en entier, mais il est très bien, il y a beaucoup d'exemples, le livre est joli et assez conséquent, c'est un bon achat si vous voulez apprendre le Go, c'est un peu la référence.
Trustpilot
1 week ago
2 weeks ago