homepage heftinhalt header
Software 3/98

Bjarne Is Back

Obwohl sich die Programmiersprache C++ in den letzten Jahren zum de-facto Industriestandard entwickelt hat, war C++ selbst nicht wirklich standardisiert. Compiler- und Bibliothekenhersteller hatten es schwer: In der Praxis stellten sich immer neue Facetten, Probleme und Anforderungen dieser Sprache heraus und machten eine schnellebige Evolution notwendig.

Das Resultat waren unvollständige oder abweichende Implementationen. Auch der Erfinder von C++ selbst, Bjarne Stroustrup, hatte anscheinend seine Probleme damit: Obwohl er bei der Standardisierung an vorderster Front mitwirkte, und an der Verbesserung und Erweiterung von C++ maßgeblich beteiligt war, erschien das vorletzte Update seines Standardwerks "Die Programmiersprache C++" 1993 und war daher seit langem überholt. Zeitgenössische Information mußte man bei anderen Autoren suchen, oft mehreren. Jetzt aber wird alles gut: Bjarne Stroustrup veröffentlichte Mitte 1997 die "Version 3.0" seines Standardwerkes, das jetzt auch auf Deutsch erschienen ist. Die Chancen stehen nicht schlecht, daß die Anschaffung langlebiger ist als die vorhergehenden: 1997 wird als das Jahr in Geschichte eingehen, in dem C++ "endgültig wirklich" standardisiert wurde. Stroustrup selbst erklärt zwar, daß es dann noch bis März 1998 dauern würde, bis alle ISO-Formulare ausgefüllt und unterschrieben sind, aber die technische Seite ist durch und eingefroren. Dieser letzte Stand der Dinge ist es auch, der in der neuen Ausgabe "Die Programmiersprache C++" beschrieben wird. Jetzt haben die Compilerbauer eine solide Basis, um sich auf die Verbesserung ihrer C++-Produkte zu konzentrieren und den Wettbewerb in Richtung Zuverlässigkeit und Vollständigkeit zu verlagern.

Abgesehen davon wird die neue deutsche Ausgabe einen netten Nebeneffekt haben: Standardisierung der deutschsprachigen Fachterminologie. Im Augenblick herrscht noch babylonische Sprachverwirrung, die den Dialog sehr erschwert. Nachdem das amerikanische Englisch im deutschsprachigen Raum als die lingua franca der Software-Entwicklung nach und nach aus der Mode kommt, herrscht bei den Bezeichnungen für member functions, run-time type information, template und dergleichen das totale Chaos. So gesehen könnte "Die Programmiersprache C++" einen ähnlichen Einfluß auf die Normierung der Fachsprache haben, wie Martin Luthers Bibelübersetzung auf die deutsche Sprache im allgemeinen. Addison-Wesley, Stroustrups Verleger, war sich dieser Verantwortung anscheinend bewußt und hat einen Mann vom Fach als Übersetzer engagiert, der sich wirklich Mühe gegeben hat (abgesehen von der Stilblüte "aufdringliche Klassen"). Gute Nachrichten also für Fachjournalisten, Autoren, Vortragende und ihr Publikum.

Inhaltlich hat das Buch die Vorzüge eines zukünftigen Klassikers: Tiefe, Vollständigkeit und Präzision (beachten Sie, daß C++ seit 1980 Bjarne Stroustrups Lebensinhalt ist), und ist nicht einfach eine Erweiterung der vorigen Auflage, sondern praktisch komplett neu geschrieben worden. Der didaktische Teil, auch der älteren, und in früheren Ausgaben behandelten Techniken und Sprachkonstrukte, wurde verfeinert und verbessert; ganz neu dazu gekommen ist eine sehr gute und ausführliche Besprechung der Standardbibliothek (inklusive STL - Standard Template Library), Namensbereiche und Laufzeit-Typinformation. Dort, wo der neue Standard bestehende Merkmale der Sprache erweitert oder ändert (Ausnahmebehandlung, Details in den Bibliotheken) wird darauf ausdrücklich hingewiesen. Der Referenzteil wurde abgespeckt und ist weniger ausführlich, was heutzutage, im Zeitalter der hyper-gelinkten Online-Hilfen ohnehin nur mehr wenig Sinn machen würde. Dafür wird jedes Kapitel mit einem eigenen Abschnitt "Ratschläge" beendet. Der bedeutendste Unterschied ist der didaktische Ansatz: Alle Sprachkonstrukte werden im Zusammenhang und in ihrer jeweiligen freien Wildbahn, also in der Art und Weise, wie sie bestimmte Programmiertechniken unterstützen und erleichtern, besprochen. Das macht Programmieren in C++ zu wesentlich mehr als einer bloßen Beschreibung einer neuen internationalen Norm - es ist ein komplettes Lehrbuch. Was freilich fehlt, ist jeder Hinweis auf Plattformen oder bestimmte Programmierumgebungen (Visual C++, Borland, Metroworks, etc.) - keine Screenshots, keine API-Funktionen, keine Wizards. In der Epoche der zweifelhaften 1000-seitigen Komplettangebote ("C++ und MFC und objektorientierte Programmierung für Einsteiger und Fortgeschrittene und Profis") sicher kein Marketingargument, aber dafür hat man ein verständliches, liebevoll gemachtes und vor allem vollständiges Buch vom Schöpfer von C++ über eine schwierige, aber sicher lohnende Materie.


Die Programmiersprache C++ von Bjarne Stroustrup.
Addison Wesley Verlag, 1997. ISBN

Für den Fall, daß Sie ihre Aufmerksamkeit erst jetzt auf diesen Kanal geschalten haben, ein paar Worte über C++ und Bjarne Stroustrup

Stroustrup wurde 1950 in Dänemark geboren, studierte Mathematik und Informatik und zog 1979 in die USA. Heute arbeitet er bei AT&T Labs, ist ein AT&T Bell Laboratories Fellow und gehört damit zum selben Clan wie Brian Kernighan, Dennis Ritchie (Programmiersprache C) und Ken Thompson (UNIX).

1979, also noch bevor sich die Idee von der objektorientierten Programmierung durchzusetzen begann, bastelte Stroustrup an eigenen objekt-orientierten Erweiterungen der Programmiersprache C ("C with Classes"). Das war zunächst nur für den eigenen Gebrauch gedacht, aber Stroustrup fand bald heraus, daß er einer großen Sache auf der Spur war und beschloß, sich auf die Weiterentwicklung zu konzentrieren. Der Rest ist Geschichte: 1983 gab es eine erste Version von C++ für den internen Gebrauch bei AT&T, 1985 kam eine erste öffentliche Release heraus, wenig später im selben Jahr erschien die erste Auflage von "Die Programmiersprache C++". Ab da rückte C++ mehr und mehr in das Blickfeld der Programmierwelt und in einem immer breiter werdenden Diskurs wurde C++ zu einer ausgereiften Programmiersprache und Bjarne Stroustrup zum Bestsellerautor und Superstar. Heute hat C++ seinen Vorgänger C als die Programmiersprache Nummer Eins weitestgehend verdrängt. Egal, welchen Computer Sie am Schreibtisch stehen haben, die Chancen sind gut, daß die Programme, die Sie darauf laufen lassen, wenigstens teilweise in C++ geschrieben sind. Freuen Sie sich auf eine Zukunft, in der auch Waschmaschinen, Autoradios, Marsroboter, Bankomaten, Faxgeräte, Wählämter und Münzfernsprecher C++ im Bauch haben.

Hier ist so viel von Standards die Rede, Zeit die Aussprache von Bjarne Stroustrups Namen zu standardisieren. Lassen wir den Meister selbst sprechen, ich zitiere aus seiner FAQ: "Das kann für Nicht-Skandinavier zum Problem werden. Der beste Rat, den ich dazu gehört habe, war: "sagen Sie es ein paar Mal auf Norwegisch, dann stopfen Sie sich eine Kartoffel in die Gurgel und sagen Sie's noch mal. [...] Vor- und Nachname werden in zwei Silben ausgesprochen: Bjar-ne Strou-strup oder etwa: Bjarni Strovstruup..."

Solche und andere wertvolle Hinweise finden Sie auf Bjarne Stroustrups umfangreicher Home Page bei http://www.research.att.com/~bs/


index heftinhalt footer