Those looking to dive into programming in Go have two new books to consider: “Programming in Go: Creating Applications for the 21st Century” by Mark Summerfield, and its companion “The Go Programming Language Phrasebook” by David Chisnall. Both are developers who have authored other books on programming.
Go is the work of an internal Google project that began in 2007. Three years ago it went open source, with ongoing development from the original Google team and other contributors. It seeks to be a computer language built for the 21st century, focusing on efficiency for large-scale applications.
Go is an open source programming environment that makes it easy to build simple, reliable, and efficient software.
Given its ambitious mission, author Summerfield has written the book for those with programming experience in other languages that wish to also add Go to their repertoire.
Those coming to Go should have some experience with C, C++, Java, Python, or another similar language. This is not one of those books that someone can pick up and expect to start coding with no background. However, those with a strong background will be able to pick it up and get started on a series of projects right away.
Given this, the several examples of live code are highly useful. This is the strongest feature of both the main text and phrasebook (although there are less in the latter). Yet in both there are plenty of snippets that will help readers code in their own examples or variations to be sure they have mastered the specific lesson or project they are working on.
The phrasebook is a useful supplement, providing with it many hints and tricks for those who may need additional guidance with variables, strings, or arrays and slices. There are also several screen shots of snippets of code to further explain the lessons.
In a release, publisher informIT said the book would be useful for:
01. Quickly getting and installing Go, and building and running Go programs
02. Exploring Go’s syntax, features, and extensive standard library
03. Programming Boolean values, expressions, and numeric types
04. Creating, comparing, indexing, slicing, and formatting strings
05. Understanding Go’s highly efficient built-in collection types: slices and maps
06. Using Go as a procedural programming language
07. Discovering Go’s unusual and flexible approach to object orientation
08. Mastering Go’s unique, simple, and natural approach to fine-grained concurrency
09. Reading and writing binary, text, JSON, and XML files
10. Importing and using standard library packages, custom packages, and third-party packages
11. Creating, documenting, unit testing, and benchmarking custom packages
Programming with Go is for those that want to be on the verge of something new. As a new programming language, it carries the excitement of pioneering a different concept, yet the uncertainty of how it will turn out in the future.