Gesamt |
|
Anspruch | |
Preis - Leistungs - Verhältnis | |
Das Buch "C++ für Spieleprogrammierer" ist in der zweiten Auflage 462 Seiten stark, umfasst dreizehn Kapitel und ist ein handliches Softcover. Auch eine CD-ROM ist dabei, die neben den Codebeispielen auch die Entwicklungsumgebung "Visual C++ 6.0 Autoren-Version" und die SDL beinhaltet. Die SDL ist eine Programmbibliothek, die in dem Buch für die Spieleentwicklung verwendet wird.
Alle Sachen in dem Buch sind standardmäßig nur für Windows gedacht, für die auch die Entwicklungsumgebung ist.
Das Buch ist anders als erwartet, denn es ist für Anfänger geeignet, die noch nie programmiert haben und fängt mit einer Einführung über das Programmieren und wie sich C++ entwickelt hat, an.
Im ersten Kapitel wird recht anschaulich vermittelt, wie man die Entwicklungsumgebung installiert und damit arbeitet, sowie der Aufbau eines einfachen "Hallo Welt"-Programms.
Das nächste Kapitel zeigt, wie man Variablen und Konstanten definiert, umwandelt und mit ihnen arbeitet. Dies passiert recht ausführlich, so dass dem Kapitel angehängte Übungen kein Problem sind.
Das dritte Kapitel beinhaltet, nachdem Bool?sche Operationen erklärt wurden, alle gängigen Schleifen wie if, else, else if, switch und for. Zusätzlich ist in dem Kapitel noch die Rechenoperation Modul enthalten, die etwas aus dem Zusammenhang fällt.
Das vierte Kapitel befasst sich mit der Verwendung und dem Aufbau von Funktionen. Es wird erklärt, wo der Unterschied zwischen lokalen und globalen Variablen liegt, der - falsch verwendet - später oft zu Fehlern führen kann. Ebenso wird anhand von Beispielen und Übungen erklärt, wie man Funktionen überschreiben kann.
Das fünfte Kapitel erklärt die Verwendung von Arrays und mehrdimensionalen Arrays.
Das sechste beschreibt Pointer und Referenzen recht anschaulich anhand von Beispielen und wägt ab, wann man was verwendet.
Im siebten Kapitel werden Klassen erklärt und die wichtigsten Punkte der objektorientierten Programmierung. Dieses Kapitel behandelt die Objetktorientierung aber deutlich zu kurz, als dass man später in größeren Projekten ohne weitere Literatur auskommen würde.
Mit dem achten Kapitel ist man dann so weit, dass man, wie es der Autor nennt, die fortgeschrittenen Themen behandeln kann. Darunter versteht der Autor Templates, Ein- und Ausgabe in separaten Dateien und das Abfangen von Fehlern durch try und catch.
Das neunte Kapitel behandelt die STL, eine Standardbibliothek, die jede Menge Lösungen für wiederkehrende Probleme bietet. Als Beispiel wurden hier Vektoren, Listen und Maps behandelt und anhand von Beispielen dargestellt, wie man sie verwendet.
Das zehnte Kapitel handelt von der Fensterprogrammierung unter Windows und wie man damit grafische Benutzeroberflächen erstellt.
Im elften Kapitel werden dann noch Themen behandelt, die der Autor für wichtig erachtet, aber in den vorherigen Kapiteln noch nicht einbringen konnte. Diese sind unter anderem this-Zeiger, Überladen von Operationen, Standardwerte für Funktionsparameter und friend-Klassen.
Im vorletzten Kapitel wird endlich ein komplettes Spiel programmiert. Man sollte sich aber jetzt keinen 3D-Egoshooter vorstellen, sondern ein typisches Arcadespiel, wie man es aus der Zeit des Commodore 16 und 64 kennt. Man steuert ein Raumschiff nach rechts und links, während man durch Meteoriten fliegt, die man abschießen kann und ein Leben verliert, wenn man einen Meteoriten rammt. Dies geschieht unter Verwendung der SDL, einer Bibliothek, die jede Menge Klassen enthält, die für Grafiken und Sounds benötigt wird.
Zu guter letzt hat das Buch noch ein Kapitel, wie man nach dem Buch weiter machen und wie man Kontakt mit der Szene der Spielentwickler aufnehmen kann.
Zusammenfassend kann man sagen, dass das Buch sehr gut für Anfänger geeignet ist, die C++ lernen wollen und sich über den Gedanken, dass man Spiele entwickelt, motivieren können. Man sollte aber nicht davon ausgehen, dass man danach mehr machen kann als vielleicht ein einfaches "Jump & Run"-Spiel. Das ist wahrscheinlich auch der Hauptkritikpunkt zu diesem Buch. Der Titel ist so formuliert, dass der erfahrene Programmierer sich mehr verspricht und der unerfahrene durch den Titel abgeschreckt wird. Trotzdem handelt es sich um ein gutes Einführungsbuch zu einem fairen Preis.