Montag, 6. September 2010


Buch-Tipp

Java Cookbook

(Link zum Artikel: http://www.entwickler.de/jaxenter//000324)
  • Autor/in: Ian F. Darwin
  • Verlag: O’Reilly
  • Seiten: 2. Aufl., 829 Seiten
  • erschienen: 2004
  • Preis: EUR 43,50
  • ISBN: 0-596-00701-9

Haben Sie jemals ein Kochbuch von der ersten bis zur letzten Seite gelesen? Wahrscheinlich nicht, denn Kochbücher werden auf zwei Arten gebraucht: Entweder man – oder doch eher Frau – durchblättert es, bleibt bei einem Rezept hängen und nimmt sich vor, damit den Freundinnen und Freunden beim nächsten gemeinsamen Abend zu imponieren; oder aber man – tatsächlich Mann – sieht zuerst in den Kühlschrank, bemerkt, dass die Auswahl nicht gerade rosig ist, und versucht nun über das Stichwortverzeichnis des Kochbuches ein Rezept mit den zur Verfügung stehenden Zutaten zu finden. Gleiches gilt für das "Java Cookbook" von Ian F. Darwin, nunmehr in seiner zweiten Auflage bei O’Reilly erschienen: Entweder man durchschmökert es und stößt auf Probleme, die man noch nicht kannte, aber mit deren Lösung man bei der nächsten Kaffeepause sicherlich Eindruck schinden kann; oder man legt es sich neben den Rechner, und sollte eine schwierige oder gar scheinbar unlösbare Aufgabe zu bewältigen sein, so wirft man einen Blick in das überwältigende Stichwortverzeichnis des Buches – und wird meist fündig.

Auf knapp 800 Seiten, aufgeteilt in 26 Themenblöcke werden zahllose Kochrezepte anhand kleinerer Programme oder am Beispiel von Quellcodefragmenten vorgestellt und ausführlich erläutert. Hierbei folgen die Rezepte einem einfachen Schema: Erst die Problemstellung, dann ein Lösungsvorschlag und abschließend die Diskussion, sprich weiter und tiefer gehende Erläuterungen zu dem Problem und seiner Lösung. Zusätzlich sind meist Verweise auf andere Bereiche und Abschnitte gegeben, so dass das Buch einen hohen Vernetzungsgrad aufweist. Allein diese Tatsache zeigt, dass das Buch nicht für das lineare Lesen gedacht ist.

Das Themenspektrum des Buches ist erschlagend. Allein das Inhaltsverzeichnis füllt zehn Seiten, sodass hier nur ein kurzer Ausschnitt gegeben werden kann. Eine vollständige Darstellung findet sich hingegen auf der O’Reilly-Website – zusammen mit dem Index, sämtlichen Beispielcodes und einem Probekapitel zur neuen J2SE 1.5. Letzteres ist erst in der aktuellen, zweiten Auflage enthalten und gibt einen guten Einblick in die Neuerungen der J2SE, zum Beispiel eine Einführung in Generics. Des Weiteren wurde das Kapitel zu den regulären Ausdrücken überarbeitet, denn mit der Version 1.4 der J2SE sind diese Teil des Funktionsumfangs und müssen folglich nicht mehr über externe Bibliotheken – beispielsweise über die Apache Regular Expressions – eingebunden werden. Schließlich wurde das Kapitel zur Webprogrammierung vollständig aus dem Werk herausgenommen und leider nicht durch eine aktuelle Fassung ersetzt.

Alt und neu
Immerhin beschäftigen sich aber drei Kapitel mit der Netzwerkprogrammierung, ein weiteres mit E-Mail und auch der RMI ist ein eigenes Kapitel gewidmet. Weitere Themen sind JDBC und XML sowie Threading und Reflection. Themen wie GUI und IO werden ebenso erschöpfend abgedeckt, selbst der Zugriff auf den seriellen oder parallelen Port wird erläutert. Und auch unbequeme und oft vernachlässigte Aufgaben wie Lokalisierung und Installation finden hier ausdrückliche Erwähnung. Schließlich seien noch die Einstiegskapitel erwähnt: Sie beschäftigen sich mit den grundlegenden Sprachmerkmalen und Typen von Java – angefangen bei "Strings und Things" über Structuring Data with Java bis hin zu Object-oriented Techniques.

Das Niveau der einzelnen, so genannten "Recipes" variiert sehr stark: Teilweise werden triviale Aufgaben angesprochen (Beispiel "Wie kompiliere ich ein Java-Programm?"), aber die meisten Lösungen beziehen sich auf komplexere und vor allem bekannte Problemstellungen (wie etwa "Wie logge ich in eine Datei?"). Doch Wunder, sprich für jedes Problem eine Lösung, darf man auch von diesem Werk nicht erwarten. So wird beispielsweise durchaus erklärt, wie in Java externe Programme aufgerufen werden. Jedoch funktioniert die dort vorgestellte Lösung nur in manchen Fällen. Denn der Autor vermeidet es, die Ausgabedatenströme in eigenen Threads auszulesen. Dies führt, und zumindest darauf weist er hin, in einigen Fällen zum einem Pufferüberlauf.

Das Buch deckt nahezu alle Bereiche der Java-Programmierung ab und bietet dabei zahlreiche Best-Practice-Ansätze sowie konkrete Lösungen in Form von kleinen Helferklassen. Somit ist das "Java Cookbook" mehr als ein Kochbuch; es liefert gleichermaßen die notwendigen Utensilien für die eigene Kreation à la Java. Wer eine Sprache wie Java nicht nur theoretisch erlernen, sondern auch praktisch anwenden will, dem sei dieses umfangreiche und hilfreiche Buch wärmstens empfohlen.

von Martin Szugat

Kommentare