Gesamt |
|
Anspruch | |
Aufmachung | |
Bildqualität | |
Preis - Leistungs - Verhältnis | |
"Know-how ist blau - so lautet der Wahlspruch, dem sich die "Franzis Professional Series" verpflichtet hat. Passend dazu ist der Name Kannengiesser unwiderruflich mit PHP verbunden. Nicht umsonst sagt man: "Wer Kannengiesser nicht kennt, kennt PHP nicht". Des öfteren schreibt Matthias Kannengiesser Fachbücher zusammen mit seiner Schwester Selma-Caroline, hier jedoch gibt es ein Einzelwerk von Matthias im bekannten blauen Franzisstil.
"Objektorientierte Programmierung mit PHP5" ist ein 696 Seiten umfangreiches Werk, das (endlich einmal) als Hardcoverversion erscheint. Das stabile Buch beinhaltet 116 Abbildungen und eine CD-ROM, auf der sich einige nützliche Tools und Scripte befinden. Insgesamt ist das Werk in acht umfangreiche Kapitel unterteilt.
Kapitel 1: Softwareentwicklung
Bevor Kannengiesser in die Entwicklung geht, wird dem Leser erst einmal ein wenig zur Softwareentwicklung beigebracht. Anstatt direkt mit dem Programmieren zu beginnen und dann planlos den Überblick zu verlieren, wird dem Leser hier auf knapp siebzig Seiten einiges an Theorie nahe gelegt. Was ist eigentlich Abstraktion, was für Phasen gibt es bei der Softwareentwicklung, und was ist das V-Modell? Ein kurzer, aber wichtiger Überblick in die Welt der abstrakten Programmierung.
Kapitel 2: Prozedurale Programmierung
Kannengiesser hat schon lange erkannt, dass objektorientierte Programmierung (OOP) zwar sehr wichtig sein kann und dass der Trend immer mehr dorthin geht. In der Ausbildung, Universität oder auch in den Büchern aber ist OOP nur der kleinste Teil der Softwarelösung. Die wichtige Grundlage bleibt die strukturierte und prozedurale Programmierung. Hier setzt das Kapitel an und legt dem Leser noch einmal nahe, was man schon beherrschen sollte, bevor man sich an OOP wagt. Ein sehr wichtiges Kapitel, da OOP zu oft überschätzt wird, der Kern einer Programmierung bleibt eben das prozedurale Arbeiten.
Kapitel 3: Objektorientierte Programmierung
Aufbauend auf das vorherige Kapitel erklärt man hier zuerst einmal die Geschichte der OOP, was das eigentlich ist und welche Vorteile sich ergeben, wenn man objektorientiert arbeiten kann. Über die wichtigen Punkte Polymorphie und Vererbung geht es über die sieben Grundsätze direkt zu den Objekten und Klassen. Insgesamt ein leicht verständlicher Überblick, der dem Leser den Gedanken und den Sinn, besonders aber die Vorteile von OOP näher bringt.
Kapitel 4: PHP und OOP
Nach dem groben und allgemeinen Überblick geht es in diesem Kapitel ins Detail. Besonders die Unterschiede und Gemeinsamkeiten der beiden angesprochenen PHP-Generationen (PHP4 und PHP5) werden diskutiert. Knapp einhundertfünfzig Seiten sind hier mit vielen wichtigen und interessanten Themen gefüllt. Angefangen mit der Überladung von Klassen geht es über die Abstraktion bis hin zur Reflection API. Hier wird viel Wissen vermittelt, das auf dem gewohnt hohen Niveau von Kannengiesser präsentiert wird.
Kapitel 5: Entwurfmuster
Die so genannten "design patterns" sind wohl jedem Programmierer durchaus bekannt. Hier gibt es eine fünfzig Seiten kurze Erinnerung an die bekanntesten Muster und deren Aufbau. Kurz und bündig wird abgehandelt, was man wissen sollte - nichts Neues für den ausgebildeten Programmierer, aber Wiederholung schadet nicht.
Kapitel 6: Fehlerbehandlung und Exceptions
Fehler passieren, das ist nun einmal so. Allerdings sollte man sie frühzeitig erkennen und danach konsequent verhindern. Einige kleine Tipps und Strategien zur Behandlung und Vermeidung von Fehlern werden dem Leser vorgestellt. Fehlerbehandlung ist in den meisten Lehrbüchern nur am Rande erwähnt, Kannengiesser gönnt diesem Exkurs etwas mehr als fünfzig Seiten, die garantiert nicht schaden.
Kapitel 7: Qualitätssicherung und Dokumentation
Codekonventionen und Syntaxanalyse sind hier die Hauptthemen. Wie erstelle ich Projekte, die andere Programmierer verstehen und weiter bearbeiten können. Kein spannendes, aber ein hilfreiches Kapitel, wenn man seine Arbeit im Bereich der Qualitätssicherung optimieren möchte.
Kapitel 8: OOP Praxis
MySQLi und einige Anwendungsbeispiele werden in diesem Abschnitt vorgestellt. Ob nun dynamische Banner oder ein Captcha - die Beispiele verdeutlichen die Möglichkeiten und animieren zum Ausprobieren.
Abschließend gibt es noch einige Kapitel über Zusatztools, UML und ähnliches. Wie so oft kommt hier auch die Sicherheit zu kurz. Die Ansätze sind interessant, aber Sicherheit sollte nicht so kurz und dann auch noch hinter den eigentlichen Themen besprochen werden. Gerade im Web 2.0 Zeitalter sind injections keine Seltenheit, für die Zukunft wäre etwas mehr Umfang und etwas mehr Aufmerksamkeit sehr wünschenswert.
Die beigelegte CD ist recht nett und hat einige Tools dabei, die man gebrauchen kann, allerdings könnte man die Ausgabe auch ein wenig überarbeiten. Die simple Ausgabe von Quelltext in einem Webseitendokument entspricht nicht mehr dem hohen Niveau des Buches.
Fazit:
Ein weiteres gutes Buch aus dem Hause Kannengiesser, dass wieder einmal eine Bereicherung für die "Professional Series" ist. Allerdings könnte man die Sicherheit mehr in den Mittelpunkt rücken und die CD-Inhalte einmal überarbeiten. Das Buch als Hardcover auf den Markt zu bringen ist sehr gut, da die instabilen Softcoverversionen bei so vielen Seiten nicht sinnvoll sind.