Friday, December 27, 2013

Book Review: Gradle: Beyond the Basics

Gradle: Beyond the Basics is the "sequel" to Building and Testing with Gradle. According to the Gradle Books page, a third book in this series will be a "set of recipes that uses as the demonstrative tool for enterprise build automation." I have not read the first book, but did read the short Gradle: Beyond the Basics and review that here.

Gradle: Beyond the Basics, as its name implies, assumes that the reader is already aware of "Gradle basics." The book provides no introduction to Gradle and assumes at least minimal knowledge of some related languages and tools as well (Groovy, Ant, Maven).

Gradle: Beyond the Basics is a very short book of four chapters and 67 pages of substantive content (not counting 8 pages of cover, Table of Contents, and Preface or the 3 pages of Afterword, advertisements, biography, and colophon). The subjects covered in the book are covered well with a lucid and easily understood writing style. The combination of the short length of the book and of the easy reading style make this book a quick read.

As its subtitle ("Customizing Next-Generation Builds") suggests, Gradle: Beyond the Basics focuses on customizing Gradle builds. The "Table of Contents" listed on the O'Reilly page on Gradle: Beyond the Basics summarizes the specific covered areas of this customization: file operations, custom plug-ins, build hooks (and Rules), and dependency management.

I particularly liked Chapter 2 of the book Gradle: Beyond the Basics and the way it demonstrated writing a plugin by first starting with added functionality in the main build and then refactoring that code into a plugin. I also especially appreciated the Liquibase-based examples used in this chapter.

Although I have not read the first book (Building and Testing with Gradle), the reviews of that book and its advertised length (116 pages) make me think these two books would have worked better as a single book. I'm guessing that the reasons they were written as two separate books are those expressed on the Gradle Books page (different aims) and to enable quicker publication of the first one.

Although I found Gradle: Beyond the Basics to be interesting and a useful read, I find it difficult to recommend purchase of it at a list price over $20 (USD) because of the amount of information covered and because some of the topics that are covered are also covered well in the Gradle User Guide (PDF). That stated, the book does have some low-level details that I have not seen in the User Guide and even subjects covered in the User Guide are covered with different perspective and approach in the book. The Marketplace currently has other options for purchasing the book for under $10 (plus shipping and handling) and this might be more appealing for purchasing this short book. The ebook/Kindle version of Gradle: Beyond the Basics might also be a cost effective choice.

No comments: