Buchrezension: Gradle – Ein kompakter Einstieg in modernes Build-Management

Cover: Gradle – Ein kompakter Einstieg in modernes Build-Management

Joachim Baumann
Gradle
Ein kompakter Einstieg in modernes Build-Management

dpunkt.verlag
260 Seiten
€ 32,90
ISBN 978-3-86490-049-5

Das auf einer Groovy-DSL aufsetzende Build-System Gradle vereint laut Aussage des Herstellers die Flexibilität von Ant mit dem Abhängigkeitsmanagement und den Konventionen von Maven. Obwohl es sich als weiterer Evolutionsschritt beider „alter“ Build-Systeme versteht, möchte es doch nicht in Konkurrenz dazu gesehen werden. Verstärkte Aufmerksamkeit hat das relativ junge Gradle (Version 1.0 wurde im Sommer 2012 veröffentlicht, aktuell gibt es Version 1.10) erhalten, als Google es im Frühjahr 2013 auf der Google I/O zu dem neuen Build-System für sein mobiles Betriebssystem Android gekürt hat.

„Gradle – Ein kompakter Einstieg in modernes Build-Management“ ist das erste deutschsprachige Buch, welches sich mit dem Thema Gradle näher befasst. Es wurde im Juli 2013 veröffentlicht. Der Autor, Joachim Baumann, beschäftigt sich seit 17 Jahren mit objektorientierter Programmierung und der Wartung großer Softwaresysteme. Er schrieb ebenso das Buch „Groovy – Anwendungen und fortgeschrittene Techniken„.

Das Buch gliedert sich auf 260 Seiten grob in drei große Abschnitte: Grundlagen und Einführung in die Themen Build-Management und Gradle, erweiterte Details speziell zu Gradle und fortgeschrittene Themen (zum Beispiel Erweiterungen zu Gradle oder eigene Plugins). Durch diese Gliederung fällt es leicht sich zu orientieren. Leser, die zu den Themen Build-Management bzw. Installation von Gradle (was in den meisten Fällen auf das Entpacken eines ZIP-Archivs und das Setzen einer Umgebungsvariable hinausläuft) Vorkenntnisse besitzen, werden die ersten 25 Seiten wahrscheinlich schnell überfliegen, denn dann startet der eigentlich interessante Teil des Buches: „Unser erstes Projekt“. Ab hier wird der Leser an die Hand genommen. Mit einem kleinen Grüne-Wiese-Java-Projekt werden die ersten Schritte in Gradle veranschaulicht. Es kommen Tests hinzu, es wird der Aufruf verschiedenster Plugins (FindBugs, Sonar, …) gezeigt und wie das erstellte Projekt dank des Maven-Plugins in ein Repository geladen werden kann. Der zweite Abschnitt endet mit einem kleinen Web-Projekt. Nach diesen ca. 50 Seiten ist man in der Lage Gradle zu bedienen. Der Aufbau des zweiten Abschnitts ist gut strukturiert, und der Leser wird bewusst auch mal in die falsche Richtung geschickt und dann wieder auf den rechten Pfad gebracht (zum Beispiel durch das „Vergessen“ der Abhängigkeit zu einer Bibliothek, um ihm anschließend zu zeigen wie man Abhängigkeiten deklariert).

Der letzte und größte Abschnitt des Buches (eben die letzten ca. 140 Seiten) befasst sich mit fortgeschrittenen Aspekten des Gradle-Build-Managements. Kann man den ersten Abschnitt unter Vorraussetzung eigener Kenntnisse überfliegen, so sollte man den zweiten von vorn bis hinten durcharbeiten, da die Kapitel aufeinander aufbauen. Die Kapitel des dritten Abschnitts sind alle voneinander unabhängig. Somit kann der Leser sich genau einen oder mehrere der Aspekte herausgreifen. Diese Themen („Multiprojekt-Builds“, „Eigene Plug-Ins“ oder „Integration mit dem Build-Server“ um nur einige zu nennen) werden nicht zu langatmig ausgeführt. Dem Leser wird (meist wieder anhand eines kleinen, wachsenden Beispiels) ein erster Leitfaden an die Hand gegeben, der aber ausreicht um sich in das gewünschte Thema einzulesen, es zu verstehen und ggf. selbst durch weitere Recherche zu vertiefen.

Eines der potentiell interessantesten Kapitel für die anvisierte Zielgruppe „Entwickler, die Projekte auf einfache Weise bauen wollen, und Infrastrukturverantwortliche, die […] sich auch Gedanken über Software-Verteilung (Deployment) […] machen“ wird das Kapitel „Migration zu Gradle“, genauer „Maven“ sein. Viele der Leser des Buches arbeiten in Projekten, in denen Maven zu dem (führenden) Build-Werkzeug gehört. Das an dieser Stelle angesprochene Plugin wird seit Mai 2013 nicht mehr vom Entwickler unterstützt, vielmehr ist auf der Seite des Repositorys ein Hinweis zu lesen, dass die gesuchte Funktionalität zu diesem Zeitpunkt bereits in Gradle integriert war; mit dem aktuellen Gradle 1.10 durch den Aufruf:

gradle init

in früheren Versionen:

gradle setupBuild

„Gradle – Ein kompakter Einstieg in modernes Build-Management“ offeriert dem Leser genau das: einen Einstieg. Dieser gelingt auch sehr gut. Nach der Lektüre des Buches, und seien es auch nur ein paar Kapitel daraus, hat der Leser genug Informationen bekommen um die vorgestellten Konzepte zu verstehen und selbständig weiter zu recherchieren – u. a. auf der Gradle-Homepage, hier befindet sich ein sehr gutes Manual. Wer einen Einstieg in das Thema Build-Management mit Gradle sucht, dem kann dieses Buch wärmstens empfohlen werden.

Kommentare sind abgeschaltet.