This book gives you all you need to use Go in your web applications. You’ll learn the basic concepts — language structures, the standard library, and Go tools — then tackle more advanced features like concurrency concepts, testing methodologies, and package structures.
Go is an open-source language from Google that’s a bit like C. Designed for programmer productivity, it’s got a clean syntax, and emphasizes concurrency.
This book gives you all you need to use Go in your web applications. You’ll learn the basic concepts — language structures, the standard library, and Go tools — then tackle more advanced features like concurrency concepts, testing methodologies, and package structures.
At each step, you’ll get advice for better coding in Go. You’ll see how to structure projects, how to use concurrency effectively, and best practices for testing—as well as many other hints and tips gleaned from real world experience of developing web applications with Go.
The Internet is a place of constant evolution and creation. Nearly every day, web developers have new tools available to add to their repertoire. In recent years, though, few have been as influential as the Go programming language. Originally created at Google to solve system administration problems, Go has evolved into a modern, powerful, and well-adopted language. To call Go just a language would be a disservice, however; Go is more than a language—it’s an entire ecosystem. From the tools that come with it, to the community of developers that build on it, Go is a force majeure in the web development world and it is here to stay.
So what is Go? Well, it’s a combination of a strongly typed programming language, and a collection of tools that make working with the language a pleasure. While many may consider a language to comprise merely the syntax, the tools provided to aid development are just as important—if not more so—than the language itself.
The topics covered in this book are targeted at web development. While Go wasn’t created as a “language for web development,” it was produced with such a powerful and diverse standard library that web developers have taken to the language in droves, with many organizations now having Go applications powering their services. In this book, we won’t be covering every aspect of the standard library; instead we'll be diving deeply into how to create fast, powerful, and maintainable web applications.
This book assumes at least a basic understanding of many programming and web development principles. If you’re unfamiliar with programming, or lack an understanding of how to program for the Web, you may find the concepts discussed in this book hard to grasp. If, however, you’re a seasoned web developer, I hope that by seeing Go in action you’ll be inspired to try building “the next big thing” in Go.
Mal does a great job balancing, on the one hand, the knowledge/assumptions of experienced devs with, on the other, how one does things in Golang. I also like that he points out where he's cutting a corner for the sake of education; when one is learning a language's idioms that kind of context is really, really valuable.
I just started reading this a few days ago, and I love it already. Very easy to follow. If you're new to programming or an experienced coder, you will get something out of this book!
mobi version causes the Kindle Reader on my Mac to crash.
Go is an open source language from googal that's a bit like c. Designed for programmer or productivity it's got a clean syntax and emphasized concurrency. The basic concept language structure the standered library and go tools then take less more advanced features like concurrency concept testing methodologies and package structure. At each step you'll get advice for better coding in go. You'll see how the structure project, how to use concurrency effectively, and best practice for testing as well as many valuable hints and tips gleaned from real world experience from developing web application with go.
Good balance of content for readers of various abilities and very good overall