An Büchern zu Java mangelt es sicherlich nicht, aber dieses Buch hebt sich von der Masse ab. Dieser Wälzer, der zweite Band zu Core Java 1.1, Sun Microsystems "offizielles" Handbuch zur Java-Programmierung, erläutert fortgeschrittene Java-Funktionen, die sonst nirgendwo besprochen werden, eingeschlossen hervorragendes Material zur Java-Netzwerkprogrammierung. Die ausgezeichneten Auszüge von Beispiel-Codes helfen bei der Lösung einer Vielzahl verschiedener Probleme, die beim täglichen Entwickeln auftreten. Die Autoren beginnen mit der Darstellung von Java Streams, einem Thema, das oft zu kurz kommt, da Java-Sicherheit normalerweise innerhalb der Browser preemptiv zum Dateizugriff ist. Trotzdem sind Streams wichtig für Java und werden in vielen der Java-Klassen verwendet. Die Serialisierung von Objekten wird in Einzelheiten beschrieben, um persistente Objekte erstellen zu können. Die inneren Abläufe der Objektserialisierung werden erörtert, einschließlich späterer Probleme beim Nachladen von Objekten. Threading und Multitasking sind jedem kompetenten Java-Programmierer natürlich ein Begriff, aber Core Java 1.1: Band 2 geht noch einen Schritt weiter und diskutiert Schwierigkeiten bei der Synchronisation von Threads. Die Autoren erklären, wie die Monitoren in Java funktionieren, damit der Zugriff auf den Speicher und andere Ressourcen synchronisiert werden kann. Sie erläutern zudem die Nutzung von Timern, die Threads verwenden, um zusätzliche Hilfe beim Threading zu leisten. Der vielleicht wichtigste Teil des Buches ist die Darstellung von Javas Networking-Fähigkeiten, angefangen mit der eingebauten Unterstützung für Sockets und URLs bis hin zur Fähigkeit, auf Internet-Services einer höheren Stufe wie HTTP und Gopher zuzugreifen. Die explosionsartige Ausbreitung der Java Networking Software erscheint in einem anderen Licht, wenn man betrachtet, daß Javas mächtige Klassen die grundlegende Internet Entwicklung relativ einfach gestalten -- weit einfacher als mit C++ (Java Networking gibt einem außerdem die Möglichkeit, Java Streams auch in anderen Kontexten anzuwenden). Die Autoren zeigen sogar, wie man CGI-Skripts in Java aufruft, indem man einen cleveren Codeexzerpt benutzt, der bemerkenswert einfach, aber keinesfalls offensichtlich ist. Die Einführungen in die Java Database Connectivity (JDBC), Remote Method Invocation (RMI) und CORBA sind gut ausgearbeitet. Außergewöhnlich ist das Material zur Arbeit mit Bildern mit dem AWT-Toolkit. Dieser Teil enthält Informationen darüber, wie man Bildfilter erstellt, wie man mit Speicherpuffern anstatt am Bildschirm arbeitet und wie man Bilddaten in die Zwischenablage des Systems kopiert, damit sie von anderen Programmen genutzt werden können. Core Java 1.1: Band 2 beinhaltet zudem ein umfangreiches Kapitel mit Einzelheiten zum JavaBeans-Komponentenmodell. Da die momentan erhältlichen Java Tools immer noch keine automatische Beans-Erstellung unterstützen, zahlt es sich auf jeden Fall aus, dieses Material zu lesen. Abschließende Kapitel zu Sicherheit (einschließlich Java Core Signing), Internationalisierung und Nativen Codes (mit einfachen Beispielen, die das Java Native Interface (JNI) verwenden, um C/C++ Code aufzurufen) machen dieses Handbuch noch weit ausführlicher. Kurz, es ist ein Buch voller nützlicher Informationen für jeden Java-Programmierer, das einem je nach Projekt Stunden mühevoller Experimentierarbeit ersparen kann. |