Buchtipp: Effective Java (Second Edition)

Heute gibt es mal wieder einen kurzen Buchtipp. Und zwar kann ich euch das Buch „Effective Java“ von Joshua Bloch nur ans Herz legen! Es bietet eine Fülle an sehr gut erklärten Abschnitten (76 an der Zahl) zu diversen Java Features, Problemen und Ideen. Es wird erklärt wie man effektiven, sauberen und sicheren Code erstellt und ihn auch wartbar hält.

Erich Pawlik meint dazu:

Professionelle Java-Entwickler sind immer noch mit einer permanenten Flut von neuen Frameworks und Weiterentwicklungen bestehender Frameworks konfrontiert. Entsprechend haben auch die meisten Java-Bücher eine Halbwertzeit von maximal 2 Jahren. Joshua Bloch’s „Effective Java“ ist da eine Ausnahme. Die erste Auflage von 2001 ist auch heute noch wertvoll und die um die neuen Sprachelemente von Java 5 erweiterte zweite Auflage kann die Nützlichkeit des Buchs nochmals um 10 Jahre zu verlängern.

Effective Java stellt in 76 kurzen Abschnitten so ziemlich alles zusammen, was man über guten Java-Code wissen sollte. Die Abschnitte beginnen jeweils mit einer Regel, die an Beispielen und Gegenbeispielen erläutert wird. Bloch macht allerdings nicht den Fehler, zu meinen, dass ein paar Code-Beispiele die Mühe ersparen, eine gründliche Analyse der Hintergründe aufzuschreiben. So kann man auch vieles über die feinen Punkte der Java-Sprachspezifikation lernen.

Die zweite Auflage enthält neues Material in erster Linie zu Generics, Enums und Annotations. Besonders die Behandlung der Generics – ein Minenfeld, so wie die in Java umgesetzt sind – ist meines Erachtens absolut lesenswert. Man lernt nicht nur, was zu tun und zu lassen ist, sondern auch, warum bestimmte Entscheidungen bei der Definition der Sprache getroffen wurden. Gerade bei einer mittlerweile recht komplizierten Sprache wie Java ist man durch ein solches Verständnis der Hintergründe besser vor bösen Überraschungen gefeit.

In gewisser Hinsicht ist das Buch etwas „altmodisch“. Bloch hält auch angesichts des momentanen Trends zu dynamische Sprachen und schnellen Lösungen alte Werte hoch wie Typsicherheit, defensive Programmierung und Respekt vor den Schwierigkeiten, ein korrektes Programm zu schreiben. In einer Welt, wo zunehmend mehr Dinge von der Qualität von Software* abhängen, hat das sicher seinen Platz.

Ich denke, auch für die zweite Auflage gilt das, was James Gosling, der Vater von Java, zur ersten Auflage schrieb: „Some might think that I don’t need any Java books, but I need this one.“ Was natürlich erst recht für den normalsterblichen Java-Entwickler gilt.

Ich kann es ebenfalls nur weiterempfehlen! Natürlich nur an Javabegeisterte ;).

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert