Gelesen: Ein Lehrbuch zu C und C++

Martin Kompf

Das Buch »C/C++ - Von den Grundlagen zur professionellen Programmierung« von Ulrich Kaiser eignet sich hervorragend zum Erlernen der Programmiersprachen C und C++.

Eine Programmiersprache lernt man erfahrungsgemäß am besten anhand konkreter Projekte mit Unterstützung eines guten Buches. Das über 1000 seitige Werk von Ulrich Kaiser »C/C++ - Von den Grundlagen zur professionellen Programmierung« aus dem aus dem Galieo Press Verlag vermag dabei nicht nur den Part des »guten Buches« zu übernehmen, sondern liefert die Übungsprojekte gleich auch noch mit. Dies geschiet in einer so systematischen und ausführlichen Art und Weise, dass wohl jeder Lernbegierige problemlos mithalten und optimalen Nutzen aus dem Buch ziehen kann. Der Autor verwendet dabei eine sehr angenehme, zum Mitdenken anregende Art der Wissensvermittlung fern ab von stumpfsinnigen »Klicken Sie hier, Öffnen Sie dort« Unterweisungen.

Die Zeile für Zeile besprochenen Beispielprojekte werden durch Übungsaufgaben ergänzt, ganz nebenbei lernt (oder wiederholt) der Leser hier Grundlagen der Arithmetik, Logik, Kombinatorik und Graphentheorie. Der erste (größere) Teil des Buches widmet sich dabei ausschließlich ANSI-C, wobei schon hier großer Wert auf das Design von Schnittstellen und die Trennung von anwendungsspezifischen Daten und wiederverwendbaren Algorithmen gelegt wird. Als Beispiel sei hier die detaillierte Darstellung der Programmierung sortierter Container, wie Listen, Bäume und Hashtabellen erwähnt. Anhand verschiedener Sortieralgorithmen, wie Bubble-, Shell-, Heap- und Quicksort wird die Bedeutung der Leistungsanalyse von Algorithmen demonstriert.

Die Einführung in die objektorientierte Programmierung mit C++ im zweiten Teil des Buches wird konsequenterweise unter Zuhilfenahme der Unified Modelling Language (UML) vorgenommen. Es schließen sich Kapitel über die Spezifika von C++, Vererbung, Zugriffsmechanismen, Templates und Exceptions an. Leider kommen diese Thamen dann zum Schluß doch etwas gedrängt, bei der heutzutage in der Softwareindustrie vorhandenen Bevorzugung objektorientierter Sprachen wäre es für kommende Neuauflagen des Buches sicher wünschenswert, den Schwerpunkt des Buches mehr auf C++ zu legen. Bieten sich doch gerade die im C-Teil ausführlich behandelten Container hervorragend für eine Implementierung als Template in C++ an! Auch wenn sicher das eigenhändige Programmieren grundlegender Algorithmen der beste Weg zum erfolgreichen Erlernen von Programmierspachen wie C und C++ ist, so sollte doch der Hinweis auf die zu C++ gehörende Standard Template Library (STL) und die Vielzahl der in ihr enthaltenen Lösungen für immer wiederkehrende Probleme in einem solchen Buch nicht fehlen.

Alles in allem ist das Buch ideal für den Programmierneuling und C/C++-Anfänger geeignet. Die beigefügte CD mit dem Cygwin GNU Compiler für Windows, allen Beispielprogrammen sowie die Möglichkeit, auf der Internetseite des Galileo Verlages mit dem Autor und anderen Lesern in Kontakt zu treten, runden das Bild von einem äußerst gelungenen und empfehlenswerten Buch ab.

Ulrich Kaiser: C/C++ - Von den Grundlagen zur professionellen Programmierung, Galileo Press, Bonn 2000, ISBN 3-934358-03-9