das für mich immer noch beste Buch über objektorientierte
Programmierung, sehr gut durchdacht und präzise formuliert.
Gerade weil hier mit Eiffel als Beispielsprache gearbeitet wird,
und nicht mit C++, kommt die objektorientierte Denkweise viel besser zum
Ausdruck. Auch wenn man gezwungen ist, in C++ zu arbeiten, hilft es,
in Eiffel zu denken und in C++ zu programmieren. Das gleiche gilt
für Java: Eiffel ist vom Sprachentwurf an vielen Stellen besser
durchdacht als Java.
Die deutsche Üersetzung der amerikanischen Originalausgabe:
Design Patterns.
Der augenblickliche Bestseller im Bereich Objektorientierter
Entwurf.
Dieses Buch ist ein Rezeptbuch für die Komposition
komplexer objektorientierter Software aus Standardstrukturen,
den sogenannten Entwurfsmustern. Entwurfsmuster beschreiben
das Zusammenspiel von Klassen und Objekten,
ohne im Detail auf den inneren
Aufbau einer Klasse einzugehen.
Dieses Buch enthält einen Katalog der wichtigsten Muster
einschließlich typischer Anwendungsfälle und Beispiele
in C++. Die Muster selbst sind aber programmiersprachunabhänging
anwendbar.
Ein, wie der Titel verspricht, sehr praxisorientiertes
Buch über die wesentlichen Punkte der Objektorientieung
für die Softwareentwicklung. Es wird nicht nur
Java behandelt, sondern auch andere OO-Sprachen angesprochen
und es werden Bezüge zum Enwurf und zu vielen SW-Engineering
Themen hergestellt.
Dieses
Buch steht auch im Web zur Verfügung.
Die Java-Sprachreferenz vom Erfinder persönlich.
Bei Fragen nach der Bedeutung von bestimmten
Java-Konstrukten ist dies die Quelle für die genaue
Antwort.
Nicht unbedingt als Lehrbuch für den Einstieg in Java
geeignet.
Eine Einführung in die Programmierung mit der Intention Objektorientierung von der ersten Stunde an.
In diesem Buch wird mit der extra für die Lehre entwickelte und frei zugängliche Umgebung BlueJ gearbeitet.
Dieses Buch beginnt mit einer sehr elementaren Einführung in die (OO-)Programmierung mit sehr anschaulichen und ausführlichen
ersten Beispielen. Insbesondere für Studierende, die sich mit der Programmierung schwer tun, kann dieses Buch und die BlueJ-Entwicklungsumgebung
sehr hilfreich sein.
In BlueJ werden die Zusammenhänge zwischen Klassen mit einer einfachen UML-ähnlichen Notation visualisiert.
Es können wie in einem interpretativ arbeitenden System Objekte erzeugt, verändert und Objektzustände visualisiert werden.
Dieses Buch gibt es auch in einer deutschen Übersetzung: Java lernen mit BlueJ.
Eine einfache und praktisch orientierte Einführung in
die Programmierung mit Java mit Behandlung der
Java-Basisklassen, der Applet-Programmierung, der
Erzeugung graphischer Benutzungsoberflächen und der
Netzwerk-Programmierung.
Alle Beispiele sind auf einer beiliegenden CD mit JDK
für NT und Solaris und Java Workshop vorhanden.
Das Buch bietet eine informelle Einführung in Java, es
ist nicht als Java Referenz konzipiert.
Dieses Buch ist auch im WWW zugreifbar unter
"http://java.sun.com/docs/books/tutorial/",
hier sind auch die Aktualisierungen für das aktuelle JDK zu
finden.
In diesem Buch werden insbesondere die Techniken
und Probleme bei dem Arbeiten mit generischen
Klassen ausführlich an Beispielen diskutiert.
Der Stil des Buches ist typisch amerikanisch, viele Worte, alles ganz easy
und sehr informell. Mit etwas mehr Präzision, Abstraktion und Methodik könnte
vieles kürzer und pregnanter beschrieben werden.
Behandelt auch Java 1.5 (J2SE 5.0)
Dieses Buch gibt es auch in einer deutschen Übersetzung,
erschienen bei Addison-Wesley, Bonn.
Zum Buch gibt es eine Webseite.
Ein schrecklich dickes Buch mit einer
Versionsnummer im Titel ist eigentlich immer mit Vorsicht zu
genießen. Aber Ausnahmen bestätigen die Regel.
Die mit Java
mitgelieferten Packete, z.B. für Container, IO, XML, Swing,
Servlets und vieles mehr, gewinnen eine immer größere
Bedeutung. Dieses Buch enthält für viele Packete eine kurze
Einführung, so dass man sich nicht für jedes Spezialgebiet ein
extra Buch besorgen muss, sondern hiermit auf vielen Gebieten einen ersten Einstieg
bekommen kann und das zu einem
annehmbaren Preis. Es gibt diese Buch auch
online
beim Verlag. Aktuelle Informationen und Aufgaben und downloads gibt es beim
Autor.
Viele gute Tipps für fortgeschrittene Java-Entwickler.
Eine sehr ausführliche Einführung in die
GUI-Programmierung mit den Java Swing Klassen,
die seit JKD 1.2 zum Java Kern dazugehören.
Eine gute Einführung in die Sprache Java und in das AWT mit einer
Sprachreferenz, 440 Seiten, mit 39,-DM einigermaßen
preiswert.
Vorsicht: der Übersetzer war sehr fleißig, er hat zu Teil
auch die String-Konstanten des HTTP-Protokolls in den Beispielen
mit übersetzt, das ist etwas zu eifrig.
die Quellen
der im Buch verwendeten Beispiele als .tar.gz file
Die 2. Auflage des Nutshell Buches in der Originalausgabe.
Hier sind die Erweiterungen der Java Sprache, z.B. geschachtelte
Klassen, und Änderungen und Erweiterungen im AWT, wie das
neue Event-Handling und neue Pakete beschrieben.
die Quellen
der im Buch verwendeten Beispiele als .tar.gz file
Ein etwas anderes Java-Buch.
Die Autoren, die schon einige populäre Bücher
über funktionale Programmierung geschrieben haben,
zeigen in diesem kleinen Buch, dass objektorientierte
und funktionale Programmierung harmonisch miteinander
kombinierbar sind. Sie demonstrieren an einigen einfachen
Beispielen, wie die zum Teil eleganten Techniken
der funktionalen Programmierung in Java umgesetzt werden
können. Dabei kommen Sie auf natürliche Art zu einigen
Programmstrukturen, die in dem Entwurfsmuster-Buch von Gamma
als Kompositum, Dekorierer, Besucher und Fabrik als Muster
wieder auftauchen.
Dieses Buch ist auch von der Form ungewöhnlich: Das gesamte Buch
besteht aus einem Frage- und Antwortdialog, in dem Java
Beispiele durchgesprochen und schrittweise weiterentwickelt
werden. Man wird zwischendurch immer wieder aufgefordert,
das Lesen zu unterbrechen, etwas anderes zu machen oder mit
den Beispielen am Rechner zu experimentieren.
Am Ende hat man auf sehr spielerische Art eine ganze Reihe
fundamentaler OOP-Techniken gelernt.
Ein Buch über Algorithmen und Datenstrukturen
mit Java als Implementierungssprache.
Die Autoren sind seit vielen Jahren
in der Ausbildung im Bereich Algorithmen
und Datenstrukturen tätig. Sie haben das
Buch aus dem Stoff für einen einführenden
Kurs über Algorithmen und Datenstrukturen
und einer vertiefenden Veranstaltung zusammengestellt.
Es werden die Basis-Datenstrukturen Keller, Schlange, Liste,
Baum, Verzeichnis, Menge und Graph und natürlich Suchen
und Sortieren behandelt.
Bei allen Algorithmen wird eine Komplexitätsanlyse
durchgeführt.
Die Java Beispiele und Applets
sind über das
WWW verfügbar.
Dieses 400 Seiten starke Buch gibt eine Einführung
in die Netzwerkprogrammierung mit Java. In den ersten
Kapiteln werden die grundlegenden Konzepte des Internets
und des WWWs beschrieben. In den folgenden Kapiteln
werden die Java-Klassen zur Netzwerkprogrammierung
im einzelnen besprochen: sockets für clients und server,
URL-Verbindungen, Protokoll-handler, remote method invocation
und servlets. Alle Kapitel enthalten einfache aber typische
und anschauliche Beispiele für die Verwendung der
Java-Klassen. Die 2. Auflage ist auf JDK 1.2 und JDK 1.3
aktualisiert worden.
Eine Einführung in die Java Virtual Machine
mit einem JVM Assembler Jasmin.
Dieses Buch beschreibt auf eine anschauliche
Art die Funktionsweise, die Vor- und Nachteile der Java VM. Die Komponenten
der Java VM, der Instruktionssatz für Arithmetik, Kontrollfluss
Ausnahmen und Threads werden behandelt.
Außerdem wird die Struktur und
das Laden und Validieren der class files beschrieben.
Interessant für Personen, die mehr über die interne
Arbeitsweise und das Sicherheitskozept
von Java-Programmen wissen möchten, und
die andere Sprachen auf der Java VM ausführen wollen.
Die Beispiele und der Assembler werden auf einer
Diskette mitgeliefert.
Eine Einführung in das Programmieren von nebenläufigen Anwendungen. Bevor auf die Java-spezifischen Eigenschaften von Threads und Synchronisation eingegangen wird, werden die prinzipiellen Methoden der nebenläufigen Programmierung entwickelt. Diese werden dann in Beispielen in Java realisiert. Es werden typische Beispiele wie das Warten auf Bedingungen, Semaphore, Erzeuger-Verbraucher, in Java in kleinen, ausführbaren Programmen realisiert. Im zweiten Teil werden Kommunikationsarten und insbesondere die socket-Programmierung behandelt. Auf diese beiden Gebiete aufbauend werden anschließend Strategien zur Parallelisierung und Verteilung von Programmen entwickelt einschließlich der Java Remote Method Invocation (RMI).
Im letzten Teil wird etwas über den Tellerrand von Java geblickt: Es werden POSIX Threads, die PVM Architektur und CORBA behandelt.
Die Beispiele und eine HTML-Version des Buches sind auf der beiliegenden CD enthalten.
Im Gegensatz zu anderen Thread-Büchern stehen hier die Methoden und die Konzepte der parallelen Programmierung im Mittelpunkt. Die Umsetzung in den Beispielen in Java macht das Buch aber auch zu einem praktisch sehr gut verwendbaren Werk.
Bis jetzt mein Lieblingsbuch Java Thread Programmierung.
Eine gute Quelle für Informationen über die Verarbeitung von XML mit Java.
In vielen Projekten wird diese Technik, XML und Java, serverseiting
als die einzige wahre Technik angesehen, auch wenn man vor
lauter spitzen Klammern die wichtigen Sachen nicht mehr sieht.
Dieses Buch, über 1200 Seite stark,
enthält eine Einführung in die Sprache Java, ein umfangreiches
Kapitel über Grafik-Programmierung und über Netzwerk-Programmierung,
Client/Server, in Java. Die 2. Hälfte enthält eine Sprachreferenz und
eine Beschreibung der Java Klassen des Entwicklungssystems.
Es enthält viele gute und gut dokumentierte Beispiele.
Das Buch hat nicht den Anspruch, eine Einführung in die objektorientierte
Programmierung zu geben, es ist nicht als erstes OOP-Buch geeignet, aber für
Fortgeschrittene zu empfehlen, die sich mit Java
beschäftigen wollen. Diese ist die stark erweiterte und auf Java 2
aktualisierte Version des Programmierhandbuchs von 1996.
Eine HTML-Version des kompleten Buchs und alle Beispiele in Quellform
befinden sich auf der beiliegenden CD
Das Standardwerk über C++ von dem Erfinder persönlich.
Leider überdecken die Details, Zeiger, Konversion, Destruktoren, ...,
das eigentliche objektorientierte Vorgehen.
Ein Buch von einem alten C++-Hasen.
| Letzte Änderung: 08.06.2010 | © Prof. Dr. Uwe Schmidt |