Kamis, 23 April 2015

The Go Programming Language (Addison-Wesley Professional Computing Series),

The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

Is The Go Programming Language (Addison-Wesley Professional Computing Series), By Alan A. A. Donovan, Brian W. Kernighan book your favourite reading? Is fictions? Exactly how's regarding past history? Or is the most effective vendor novel your option to fulfil your downtime? Or even the politic or spiritual publications are you hunting for now? Right here we go we offer The Go Programming Language (Addison-Wesley Professional Computing Series), By Alan A. A. Donovan, Brian W. Kernighan book collections that you need. Great deals of numbers of books from lots of fields are offered. From fictions to science and religious can be browsed as well as discovered here. You may not stress not to locate your referred book to review. This The Go Programming Language (Addison-Wesley Professional Computing Series), By Alan A. A. Donovan, Brian W. Kernighan is among them.

The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan



The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

Read Online and Download Ebook The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

The Go Programming Language is the authoritative resource for any programmer who wants to learn Go. It shows how to write clear and idiomatic Go to solve real-world problems. The book does not assume prior knowledge of Go nor experience with any specific language, so you’ll find it accessible whether you’re most comfortable with JavaScript, Ruby, Python, Java, or C++.

  • The first chapter is a tutorial on the basic concepts of Go, introduced through programs for file I/O and text processing, simple graphics, and web clients and servers.
  • Early chapters cover the structural elements of Go programs: syntax, control flow, data types, and the organization of a program into packages, files, and functions. The examples illustrate many packages from the standard library and show how to create new ones of your own. Later chapters explain the package mechanism in more detail, and how to build, test, and maintain projects using the go tool.
  • The chapters on methods and interfaces introduce Go’s unconventional approach to object-oriented programming, in which methods can be declared on any type and interfaces are implicitly satisfied. They explain the key principles of encapsulation, composition, and substitutability using realistic examples.
  • Two chapters on concurrency present in-depth approaches to this increasingly important topic. The first, which covers the basic mechanisms of goroutines and channels, illustrates the style known as communicating sequential processes for which Go is renowned. The second covers more traditional aspects of concurrency with shared variables. These chapters provide a solid foundation for programmers encountering concurrency for the first time.
  • The final two chapters explore lower-level features of Go. One covers the art of metaprogramming using reflection. The other shows how to use the unsafe package to step outside the type system for special situations, and how to use the cgo tool to create Go bindings for C libraries.

The book features hundreds of interesting and practical examples of well-written Go code that cover the whole language, its most important packages, and a wide range of applications. Each chapter has exercises to test your understanding and explore extensions and alternatives. Source code is freely available for download from http://gopl.io/ and may be conveniently fetched, built, and installed using the go get command.

The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

  • Amazon Sales Rank: #5463 in Books
  • Published on: 2015-11-05
  • Original language: English
  • Number of items: 1
  • Dimensions: 9.00" h x 1.00" w x 7.40" l, .0 pounds
  • Binding: Paperback
  • 400 pages
The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

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).


The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

Where to Download The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

Most helpful customer reviews

30 of 32 people found the following review helpful. Thorough coverage; excellent examples; but maybe not essential By D. Golden [Disclaimer: I was provided with a free review copy by the publisher.]TL;DRIf you're looking to buy a comprehensive text on Go, "The Go Programming Language" is an excellent choice. But with so many free e-book introductions to Go, do you really need it? Maybe, but maybe not.OVERVIEWThe authors "assume that you have programmed in one or more other languages" and thus "won't spell out everything as if for a total beginner". Yet the book weighs in at a hefty 380 pages (over 100 pages more than my venerable 1988 K&R 2nd edition).Is it better than the free 50-page "Little Go Book", or the free 160-page "Introduction to Programming in Go" or even the freely-available 80-page Go Language Specification itself? Yes, certainly. But is it two or three or four times as good? I don't think so.So is "The Go Programming Language" worth the cost to read in both dollars *and* time? It depends on how you learn, how much you already know, and whether, for you, the good parts outweigh the bad.THE GOOD PARTSChapter 1 ("Tutorial") sets the stage for much of what is excellent about this book: fabulous examples. Beyond the obligatory "Hello World", it presents a quick look at several simplified "real world" examples, including command line text filtering, image generation/animation, URL fetching and serving a web page.The rest of the book follows this same pattern. Chapters typically present several different code examples, most of which do real things rather than just consist of toy code. They include exercises (which I didn't do), that would be good for a course or for someone who learns best by doing structured exercises. The examples are enough to serve as a starting "cookbook" for many real-world tasks.I also found the explanations of struct embedding and composition to be excellent. Some concepts gelled much better for me than they had from other texts and even from my own coding to date. I had the same experience in the chapter on concurrency with channels. I was pleased that things so idiosyncratic to Go were some of the best parts of the book.THE BAD PARTSSadly, the book's coverage of the standard library is haphazard. On the one hand, the many real world code examples gave opportunities to introduce parts of the standard library naturally throughout. Unfortunately, that also means there's no comprehensive coverage of the standard library itself, which is surprising given that it's one of great strengths of the language.The most glaring example of this ad hoc approach was finding a section on text and HTML templating oddly dropped in at the end of Chapter 4 ("Composite Types"). It was as if they really wanted to cover those packages and -- without a chapter dedicated to the standard library -- had nowhere else to put it.As mentioned previously, the book is long and rather dense. It's not a quick read. Worse, the authors have a habit of burying important points or cautions in the middle of a wall of text and code examples. The lack of cutesy caution icons or call-out boxes for these tidbits (as would be found in more informally-styled books) really hurts skim-ability.THE MIXED PARTSAs great as the examples were, I found some aspects disturbing. First, in some cases, implementation details were omitted from the text -- the reader is expected to download the source to see the full example. I would have preferred complete, if less ambitious, examples instead.In other cases -- particularly in the sections on concurrency -- the examples are presented in a progression of one or more complete "wrong" examples of how not to do things before an example of the "right" way to do things. This approach is a good teaching method, but it adds substantially to the length of the text -- you have to grok a lot more code to parse out the differences between the examples.The other interesting observation I had was that in many cases, the examples omit error handling for brevity. Since the verbosity of Go code error handling is a frequent criticism of the language, omitting it seemed somehow disingenuous.SUMMARYIf you have the money and patience and you like deep dives and real, working examples and exercises, this book is an excellent choice. If you prefer to skim or dabble, or just want a handy reference text, there are probably better options.

8 of 9 people found the following review helpful. The Best Go Book Availabe By John H. Let me start by saying that I had high expectations for this book because of the authors pedigree. I must say that all of those expectations were met. I received a digital copy of this book for review, and halfway through the book I purchased a hard copy becaue this is the reference book to have for Go.The book is laid out in a typical programming language way. You start with basic concepts and get more advanced as you progress through the book. The book does not assume you have any knowledge of Go, but it does assume you have some basic programming or computer science background. Each chapter has numerous real world examples, and as the book progresses these examples are iteratively improved upon as you learn new concepts. I really enjoyed this setup and revisiting those samples each time really helps solidify the knowledge you gained earlier. Similarly, the exercises at the end of each chapter are challenging and really force you to grasp the chapter's content. Almost all of them consist of improvements to previous samples using the knowledge you gained. Some of the examples in the early parts of the book reference multiple different future sections. I found this could be a little overwhelming at times. I wanted to skip ahead to learn those new features, but knew I needed to start from the beginning. These "in coming chapters" sections really added up in the first few chapters, and that was one of my only complaints with the book.Full source code is provided for every exercise and sample. And there is a LOT of code included. With just this book and the code samples you should be armed to really get working with Go. Throughout the book and the samples they authors point out how to write idiomatic Go code, and common pitfalls you might run into when developing in Go. With such a young language it's wonderful to have a guide on how to "do things the right way".One of the attractions to the go language was the concurrency patterns and options available through goroutines. The book does a masterful job of explaining this feature and how to best use it in your code. It does a great job of explaining the potential dangers involved in concurrent programming and how to avoid them with Go. At the end of the chapter they have a nice comparison between traditional threading and goroutines that does a good job of driving home the benefits and the shortcomings of goroutines.The last few chapters of the book focus on more advanced topics like testing, reflection, C interop, and package setup. These advanced topics are explained clearly and concisely. Throughout the book there are very few wasted words, each chapter felt just long enough and full of relevant information.Ultimately this might be one of the best programming language books I've read. If you are interested in learning Go or work with it every day, this would be the one book I would say is a must have.

6 of 6 people found the following review helpful. Only Go book you need to buy By Varun Every programming language has one book that become the de-facto book. C has K&R and other programming languages has their own. This book is for Go what is K&R for C. If you ever want to buy a Go programming language book, this book should be the one. I have been programming in Go from almost an year and I also find some new tricks from the book. Also I use this book as a reference when I need to brush up some concept.

See all 73 customer reviews... The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan


The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan PDF
The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan iBooks
The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan ePub
The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan rtf
The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan AZW
The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan Kindle

The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan
The Go Programming Language (Addison-Wesley Professional Computing Series), by Alan A. A. Donovan, Brian W. Kernighan

Tidak ada komentar:

Posting Komentar