Modernes C++ Design von Andrei Alexandrescu
Das Buch beschreibt folgende Dinge:
- Policy-Based-Design
- Typlisten
- Simulation partieller Template-Spezialisierung
- Visitor-Pattern
- Smart-Pointer
- Multi-Methoden
- Funktoren (generalisiert)
- Multi-Thread-Erwägungen für die Komponenten
Die Ideen sind enorm interessant und spannend. Trotz der sehr abstrakten Herangehensweise der Template-Meta-Programmierung bekommt man stets Ideen für den praktischen Einsatz. Selten genutzte C++-Sprach-Eigenschaften werden kurz erklärt. Da das Buch komplett neue Herangehensweisen erfindet, ist es auf keinen Fall leicht ersetzbar. Die deutsche Übersetzung enthält jedoch leider häufiger Fehler im Code. Das Ergebnis des Buches ist eine interessante Bibliothek namens Loki. Viele Prinzipien finden sich auch in Boost und C++0x wieder, so sind "variadic templates" auch schon mit Typlisten erreichbar. Die 400 Seiten hat man beim hohen Spannungsgrad schnell gelesen!