Review: Go Programming Blueprints – Solving Development Challenges with Golang

Go Programming Blueprints - Solving Development Challenges with Golang
Go Programming Blueprints – Solving Development Challenges with Golang by Mat Ryer
My rating: 4 of 5 stars

Updated post can be found on my new blog site.

Real world solutions in GO
This book is not a primer on GO Language (here I suggest “The GO Programming Language” by Donovan & Kernighan, Addison-Wesley) but it should be read just after learning the basic concepts of the language and its tool chain.
The author introduces and describes in details several important concepts about the GO way to program, to structure the code and to organize the projects.
The examples are clear and simple to be easily understood but, at the same time, they can be used in our own projects.
The first project is a web based chat application which introduces main web application concepts like HTML templates, requests routing, Websocket and Oauth protocols, JSON, images plus some GO specifics like how to use the channels to handle client server communication.
The second project is a WHOIS client which shows how to interact with a RESTful API and how to create a command line utility in GO.
The third and main project is a multi application system which analyze Twitter data streams to count specific tags, using a MongoDB as storage solution and a messaging system to decouple the applications and exposing a REST API for a web based client. With this project the author shows how to integrate a NoSQL database and a Queue Messaging system and how to create a REST API.
The book includes other projects with cover additional topics like how to interact with the file system.
All projects and their code are well described and, again, it is something we can really use in our projects.
Highly suggested.

View all my reviews

“Instant Mockito” review

I have recently read “Instant Mockito” by Marcin Grzejszczak. Good reading.

I use Mockito every day but, nevertheless, the book could give me hints and ideas on how to improve Mockito usage in my projects. For example, I discovered the @InjectMocks annotation and several special arguments matchers I did not know before.

I suggest the book to all experienced programmers.

The book is not a Mockito primer nor it is a tutorial on unit testing techniques. The author assumes you know already how (and why) to do unit testing. Beginners should better start with more introductive books.

Mockito methods are not documented in detail; you should refer to official Mockito documentation for a complete reference (all relevant links can be found at the end of the book).

The first part of the book explains what is Mockito, how to install it in projects based on Maven and other dependency managers and a shows quick start example. Short but the essential is in.

The second part is the most interesting (at least for me) with the section named “Top 8 features you need to know about” which is basically a Mockito showcase: the author describes, by examples, several use cases using almost all Mockito features.

Among them: void methods stubbing, method calls counting, exceptions handling, method arguments capture, legacy code spying and annotations usage.

The book ends with references to Mockito resources available on the Net: web sites, Twitter accounts, blogs, communities.

(Available from Packt Publishing)