
Themenbereich: C++ Vandevoorde, David; Josuttis, Nicolai C++ Templates - The Complete Guide Mehr Infos zum Titel oder Bestellmöglichkeiten:
Eingetragen am: 17.05.2003 Hits: 7447 Erstellt von c++.de gut geeignet:- Profis in C++, die mehr über die Möglichkeiten generischer Programmierung erfahren wollen
- Leser, die sich das technische Rüstzeug anlesen wollen, um bei den aktuellen Trends der Sprache C++ auf dem Laufenden zu bleiben
- Leser, bei denen der ISO-Standard von C++ ohnehin bereits zur Bettlektüre gehört
weniger geeignet:- Einsteiger in C++
- Leser mit schlechten Englischkenntnissen
Ein Buch nur über C++-Templates? Dem einen oder anderen könnte das vielleicht übertrieben vorkommen, vor allem wenn man die Templates ausschließlich über die Datencontainer der STL kennt und betrachtet. Wer jedoch in jüngster Zeit aufmerksam die Artikel rund um C++ verfolgt wird bemerkt haben, daß die Templates inzwischen als eine Art eigene Sprache innerhalb von C++ benutzt werden und sich dadurch viele neue Sprachmittel eröffnen. Eventuell gibt's also rund um die Templates doch genug Geheimnisse und Möglichkeiten, so daß sich ein eigenes Buch lohnt - der Autor Vandevoorde war jedenfalls dieser Meinung.- Part I: The Basics
Der erste Teil widmet sich den bekannteren Dingen wie Funktionstemplates und Klassentemplates, knüpft also an bekannte Anwendungen an. Doch bereits nach kurzer Zeit stellen die Autoren Templates vor, die Parameter enthalten, die keine Typen sind, sondern z.B. int-Werte. Grundlegende Begriffe, Tipps um Probleme bei der Namensgebung zu vermeiden und Erklärungen, wie Templates übersetzt werden, runden diesen Teil ab. Bis hierhin befindet sich der Leser noch auf weitgehend bekanntem Terrain. - Part II: Templates in Depth
Die vorhergehenden Grundlagen werden nun auf komplexere Themen erweitert, unter anderem gehen die Autoren darauf ein, wie sich virtuelle Methoden bei Templates verhalten, welche Arten von Template-Parametern es gibt, wie mehrfache Templates (also Templates als Template-Parameter) aufgelöst werden, oder wie sich friend-Funktionen vor dem Hintergrund von Templates verhalten. Der Namensauflösung ist ein eigenes Kapitel gewidmet, ebenso wie (und wann) Templates instantiiert werden. Besonders knifflig sind auch die Abschnitte über Spezialisierung und Überladung von Templates, oder wie Argumente aufgelöst und konvertiert werden. Ein Ausblick auf künftige Möglichkeiten und Erweiterungen rundet diesen Teil ab. - Part III: Templates and Design
Auf diesen etwas über 100 Seiten dreht sich der Inhalt vorwiegend um die die Anwendungsmöglichkeiten von Templates in Programmen, während die bisherigen Kapitel überwiegend eher die technische Realisierung in den Vordergrund stellten. Schwerpunkte sind dabei die Themen Traits und Policy Klassen [ein in den Anwendungen immer noch junges Thema, man könnte das so zusammenfassen: Modellierung bestimmter Verhaltensweisen von Klassen, die Verhaltensweise der Klasse wird dabei durch Templates festgelegt]. Aber auch die Vererbung im Zusammenhang mit Templates wird erwähnt, und ein Kapitel darf natürlich ebenso wenig fehlen: die sogenannte Template-Metaprogrammierung, eine Möglichkeit Algorithmen bereits während der Compilierung auszuführen. - Part IV: Advanced Applications
Es spricht für den Humor der Autoren, daß sie nach dem Part III einen Abschnitt anhängen, der sich als "Advanced" bezeichnet. Dabei war eigentlich Part III bereits "Advanced" genug. Aber die Kapitel behandeln konkrete Realisierungen mit Hilfe von Templates, wie zum Beispiel die Möglichkeit der Typerkennung mit Hilfe von Templates, sogenannte Smart Pointer mit und ohne Referenzzählung, Speicherung von Daten in Tupeln, und wie man Funktionsobjekte und Callback-Funktionen effektiv mit Hilfe von Templates realisiert. Letztlich ein weiterer Teil für den Praktiker. - Appendix
Im Anhang erklären die Autoren noch einmal speziell die "One-Definition-Rule" und die Auflösung von Templates bei Überladungen - Themen, die einem Compilerbauer sicherlich schlaflose Nächte bereiten können. Für den Anwender hilfreich, denn nur damit versteht man, welche Funktion letztlich in welchem Falle aufgerufen wird. Man kann das gut zusammenfassen: ja, das Buch ist anspruchsvoll. Aber der Leser wird zwei Lerneffekte haben: zum einen weiß er so ziemlich alles über den technischen Background von Templates, den ein Entwickler kennen muß. Und zum anderen bekommt er wertvolle Designtipps geliefert, um künftig Programme noch effektiver zu designen. Trotzdem das Buch zur Zeit nur in englischer Sprache vorliegt, ist es dennoch gut verständlich geschrieben.Leider ist das Buch reichlich teuer - genau genommen treibt einem der Preis sogar das Wasser in die Augen. Dennoch wird der Leser hier eine geballte Ladung an Informationen finden, die in dieser Form so kompakt nirgendwo geliefert werden. Homepage des Buchtitels Inhaltsverzeichnis Diese Daten stammen aus der Datenbank von Amazon.de: Amazon-Verkaufsrang: 2612 Seiten: 552 ISBN-10: 0-2017-3484-2 ISBN-13: 978-0-2017-3484-3 Verlag: Addison-Wesley Longman, Amsterdam Preis: EUR 48,95 Preis gebraucht (ab): EUR 36,90 Mehr Infos zum Titel oder Bestellmöglichkeiten: |