The Way to Go: A Thorough Introduction to the Go Programming Language (英语) 平装 – 2012年3月7日
This book provides the reader with a comprehensive overview of the new open source programming language Go (in its first stable and maintained release Go 1) from Google.
The language is devised with Java / C#-like syntax so as to feel familiar to the bulk of programmers today, but Go code is much cleaner and simpler to read, thus increasing the productivity of developers.
You will see how Go: simplifies programming with slices, maps, structs and interfaces
incorporates functional programming
makes error-handling easy and secure
simplifies concurrent and parallel programming with goroutines and channels
And you will learn how to: make use of Go's excellent standard library
program Go the idiomatic way using patterns and best practices in over 225 working examples and 135 exercises
This book focuses on the aspects that the reader needs to take part in the coming software revolution using Go. "
|5 星 (0%)|
|4 星 (0%)|
|3 星 (0%)|
|2 星 (0%)|
|1 星 (0%)|
While this is a solid introduction to Go it is not an introduction to programming and assumes you already know how to program. I think that's good, because I do already and I'm sick of reading books that insist on spending 100 pages explaining how we can output "Hello World" to the console. If you need someone to explain what a loop is and do fizzbuzz problems, read another book. This is an introduction to Go, not programming.
Even with much less nonsense than most Go books, you can still skip to 3.5 without missing much unless you're really acutely interested in the history of C, Ruby, Go or don't know how to install a package or which IDE to use. Personal preference aside, it's understandable though why that was included to give background to people that haven't coded in C and don't know why and by how much it blows scripting languages like Ruby out of the water and how C/C++ has atrocious to non-existent web functionality. So a fast, systems level language with internet functionality is where Go comes in. Hugo versus Jekyll benchmarks are a pretty clear indicator of the divide in speed without using any complicated benchmarks.
I'm not getting all the negative reviews about the language. There are some minor grammatical errors, but not much worse than most of the other technical books I read from people who are obviously speakers of Hindi, German, Norwegian or various other languages put out by O'Reilly and all the major IT/programming book publishers. It could use more polish in the copy editing, but it's nothing that's egregious.
I also don't get the "It's boring" or "It's difficult" critiques. It's boring, yes but it still reads easier than the Go documentation and is far more comprehensive than the golang.org tutorial. It's not something you read on the beach for leisure with lots of pictures and an exciting storyline, it's a professional book. It's concise, and ably expresses major concepts in Go. The way people talk about it, you'd think people expected a centerfold or a car chase scene or something. None of the other Go books out now are any more interesting or better. Several just paraphrase the Go docs. If you don't believe me, read the Go docs (which are way more disorganized, boring, and way more confusing). But if those docs do it for you, great. If they don't, buy this.
This is a good, if slightly disorganized, book. And the kindle version is only $3. Recommended.
With that said, this book does not have 4 times the depth. The other book is much easier to read, and in many cases it is shorter simply because the writing is more clear and concise. While the other Intro does not have as much detail, in my opinion it is a much better high level book.
This book really deserves a lower rating, but on value I give it 4 stars.
The only thing that's missing are a large number of exercises and the ones that are there are hard to find since they're all scattered throughout the book. Luckily there are a large number of code examples which makes all the theory very clear.
Aside from that the book is extremely good. It has a thorough introduction to all of Go1, which is pretty amazing given Go1 was released March 28, and the book came out March 9. Of special interest is the chapter on goroutines, which, as a mostly-serial Perl coder till now, I found especially useful to understand the concepts behind Go's concurrency and parallelism.
As I said in the title, for $3.03, you just can't beat it.