Buchbesprechung: C++ Schnelleinstieg
Das kompakte Lehrbuch von Philipp Hasper verspricht eine rasche einfache Einarbeitung in das Programmieren mit C++ – sogar ohne Vorkenntnisse.
![Buchbesprechung: C++ Schnelleinstieg](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/3/1/7/2/8/8/7/shutterstock_1019942575-8962d13e9fdcae63.jpeg)
(Bild: voyata/Shutterstock.com)
- Tam Hanna
Philipp Hasper
C++ Schnelleinstieg
Programmieren lernen in 14 Tagen – Einfach und ohne Vorkenntnisse
mitp, August 2021
304 Seiten, ab 12,99 € (Buch, eBook)
ISBN: 978-3-7475-0322-5
Wer nach einem C++-Lehrbuch sucht, findet sich einer unbefriedigenden Situation gegenüber – zwar gibt es diverse Bücher, aber nur wenige davon sind auf die Bedürfnisse von Einsteigern oder Entwicklerinnen und Entwicklern ausgerichtet, die sich einfach weiterbilden wollen. Der bei mitp neu erschienene C++-Schnelleinstieg von Philipp Hasper mag auf den ersten Blick wie eine Neuauflage der während des Dotcom-Booms populären "For Dummies"-Reihe erscheinen, das Buch verdient aber auch aus dem Blickwinkel C++-Interessierter mit Vorkenntnissen eine genauere Begutachtung.
Es gibt viele Gründe, die mit anderen Programmiersprachen aufgewachsene Developer zu C++ führen mögen: Es kann das Interesse an Embedded-Entwicklung sein oder auch die Anforderung, für Systeme zu programmieren, die sich nur mit C++ erreichen lassen.
Mit 306 Seiten ist das mitp-Buch nicht allzu umfangreich und beschränkt sich ausschließlich auf den Einsatz von C++ unter Windows. Daher startet auch das erste Kapitel mit dem Einrichten von Visual Studio 2019, das die bevorzugte IDE für sämtliche Applikationen im Lehrbuch ist.
(Bild: mitp)
Das zweite Kapitel widmet sich der Kernzielgruppe der Anfänger. Für den Geschmack des Rezensenten ist es etwas lang geraten, beschreibt dafür aber ausführlich sowohl die Arbeit mit Streams als auch die Grundlagen von Variablen und weiteren Vorzügen von C++, die JavaScript-Entwicklern und Nutzern anderer Skriptsprachen nicht unbedingt vertraut sein dürften.
Anschließend lässt Hasper grundlegende Überlegungen zur Arbeit mit den verschiedenen Selektionen und Iterationen folgen, und geht auch auf den Umgang mit Funktionen ein – zunächst noch außerhalb von Klassen.
Am Ende der meisten Kapitel präsentiert der Autor zudem interessante Aufgaben, die das Überprüfen der erlernten Programmiertricks ermöglichen. In einigen Fällen zeigt Hasper außerdem auf dem Kopf stehende Textpassagen, die Antworten auf kleine Knobelfragen geben.
Objektorientierung, aber erst später
Über die Frage, an welcher Stelle man objektorientierte Programmierung am besten erstmals vorstellt, lässt sich trefflich diskutieren. Der C++ Schnelleinstieg folgt dabei einer weit verbreiteten Methode: vor ersten Experimenten mit OOP, die übrigens mit dem Besprechen von Enum
und Struct
beginnen, platziert der Autor noch ein eher allgemeines Kapitel mit Informationen zur Standardbibliothek, den darin enthaltenen Containern und verschiedenen Hinweisen zur String-Verarbeitung in C++.
Die anschließende Besprechung der OOP präsentiert sich pragmatisch und ohne didaktische Experimente. Als Erstes folgen Grundlagen der Arbeit mit Klassen, danach Überlegungen zur Sichtbarkeit und zur Realisierung virtueller und sonstiger Methoden. Lohn der Mühen ist eine solide Einführung in die Grundlagen von OOP. Daran anknüpfend geht der Autor auf den vcpkg-Paketmanager ein, der in der Welt von Visual Studio das vergleichsweise bequeme Erweitern von C++-Bibliotheken ermöglicht. Erstes Übungsbeispiel ist die nana-Bibliothek, die das grundlegende Realisieren von Windows-GUI-Applikationen in einer an AWT (Abstract Window Toolkit) erinnernden Programmierweise ermöglicht.
Nach den Gehversuchen mit grafischen Benutzerschnittstellen folgen kurze Überlegungen zur Zeigerarithmetik, Binärkodierung und weiteren eher technischen Bereichen. Hier bringt der Autor Gedanken zu der in C++ möglichen Fehlerverarbeitung durch Exceptions unter – ein Thema, dem häufig nicht die wünschenswerte Aufmerksamkeit gewidmet wird.
Liebe zum Detail beweist Hasper in den darauffolgenden Ausführungen, die sowohl fortgeschrittene OOP-Methoden als auch die grundlegende Netzwerkkommunikation unter Einsatz der httplib präsentieren. Anschließend folgen noch Überlegungen zum Debugger und zum Parallelisieren von C++-Programmen.
Einfach nachvollziehbarer Einstieg in C++
Wer sich beispielsweise im Rahmen einer Konferenz detaillierter mit modernem C++ beschäftigt hat, dürfte schnell zur Überzeugung gelangen, dass aktuellen Versionen des Programmiersprachenstandards so viel Komplexität innewohnt, dass C++ Quereinsteigern allzu viele Hürden in den Weg legt.
Der Autor des C++ Schnelleinstiegs richtet sein Lehrbuch daher konsequent an den Common Sense Basics aus – der englische Ausdruck beschreibt die Ausrichtung des Werks unmissverständlich und lässt sich kaum übersetzen. Während viele andere C++-Lehrbücher ihr Heil in der Erklärung jedes noch so obskuren Details suchen, fokussiert sich Hasper auf alles Wichtige, das Entwicklerinnen und Entwickler bei der alltäglichen Arbeit brauchen. Haben sie bisher mit Sprachen wie JavaScript oder C# Erfahrung gesammelt, findet sich hier ein hilfreicher Wegweiser durch den Dschungel des modernen C++.
Tam Hanna
befasst sich seit dem Jahr 2004 mit Handcomputern und Elektronik. Derzeit liegt sein Fokus auf interdisziplinären Anwendungen von Informationstechnologie.
(map)