Was habe ich lange für dieses Buch benötigt. Zusammen mit
Pro Spring 2.5 (leider nur eine sehr trockene Referenz und somit nicht wirklich einen Book review wert) lag es seit November auf dem "ToRead" Stapel (der jetzt immer noch vier Bücher zu den Themen JPA, Dojo, Grails und Refactoring enthält, langweilig wird mir also so schnell nicht). Und dabei tut man dem Buch sehr unrecht, wenn man es lange auf dem Stapel warten lässt. Joshua Bloch beschreibt in
seinem Buch mit extrem vielen Beispielen die sinnvolle als auch sinnlose Verwendung bestimmter Java Idiome. In der im letzten Jahr aktualisierten zweiten Auflage ist das ganze an Java 5 angepasst, also mit Generics, Enums und - dem für mich noch gar nicht bekanntem - Java Concurrency Framework auf Basis des Executor Frameworks (ich habe auf die Schnelle nur die
ein oder
andere Einführung gefunden, die ich aber noch nicht so toll fand - gute Links bitte in die Kommentare), um sich nicht mehr mit Threads auseinander setzen zu müssen - daran merkt man wohl, dass ich unbedingt noch
"Java Concurrency in Practice" lesen muss. Aber ich schweife ab. Zurück zum Buch. Anhand von circa 70 kurzen Artikeln zeigt Bloch gute und schlechte Ansätze, um die unterschiedlichsten Probleme zu lösen (Concurrenty, Serialisierung, Generics, Enums, Annotations).
Was man an dieser Stelle nicht erwarten sollte, ist eine Einführung. Das komplette Buch setzt 1-2 Jahre Softwareentwicklung in Java voraus (vor allem die Generics Teile sind keine leichte Kost), da man ansonsten schnell in Verständnisprobleme gerät. Ansonsten ist das Buch eigentlich Pflichtlektüre.