Frage zu C++ Coding Standards von Sutter, Alexandrescu
-
Lohnt sich für dich nicht.
-
GPC! Kannst du "Modernes C++" empfehlen? Geht es da um die Standard-Lib? Wenn ja, wäre es für mich uninteressant. Oder geht es da eher um Patterns speziell für C++?
-
Es geht nur um Template Spielereien.
-
Wie wärs mit dem Buch zur Boost Library?
-
Artchi schrieb:
GPC! Kannst du "Modernes C++" empfehlen? Geht es da um die Standard-Lib? Wenn ja, wäre es für mich uninteressant. Oder geht es da eher um Patterns speziell für C++?
Nein, Modernes C++ Design befasst sich mit modernem C++ Design: Sprich generische Template-Meta-Programmierung.
-
Also ich hab mir C++ Coding Standards gerade ausgeliehen, ich finde fuer 200 Seiten ist 30 Euro ziemlich teuer. So ueberzeugt hat mich das Buch nicht, irgendwie fand ich das langweilig geschrieben.
-
C++ Coding Standards ist wirklich nur eine Liste von Standards die man einhalten sollte. Sicher ein paar Perlen dabei, generell aber eher nicht so interessant.
Lieber die Effective C++ oder Exceptional C++ serie aufgreifen.
-
Die Liste mit den Regeln steht ja online. Die durchzulesen sollte eigentlich reichen.
-
kingruedi schrieb:
Artchi schrieb:
GPC! Kannst du "Modernes C++" empfehlen? Geht es da um die Standard-Lib? Wenn ja, wäre es für mich uninteressant. Oder geht es da eher um Patterns speziell für C++?
Nein, Modernes C++ Design befasst sich mit modernem C++ Design: Sprich generische Template-Meta-Programmierung.
Template-Meta-Programmierung ist also Design???
-
volkard schrieb:
haste programming pearls schon?
Nein, aber das was ich gerade lese, hört sich sehr interessant an. Ist die deutsche Version zu empfehlen? Oder doch die Englische?
Artchi schrieb:
GPC! Kannst du "Modernes C++" empfehlen? Geht es da um die Standard-Lib? Wenn ja, wäre es für mich uninteressant. Oder geht es da eher um Patterns speziell für C++?
Kann ich, wenn du dich für geiles (Bibliotheks-Design) mit Templates interessiert. Ist aber echt harter Tobak, ich hatte auch öfters meine Verständnis - Probleme.
Lies dir bei Amazon einfach meine Rezension durch, ist die obere, längere von beiden.Shade Of Mine schrieb:
Lieber die Effective C++ oder Exceptional C++ serie aufgreifen.
Die Effektiv - Reihe hab ich ja, nur das erste Exceptional gibt's bei Amazon nicht
.
EDIT: Bei www.schweitzer-online.de/ gibt's die erste Ausgabe (auf Deutsch) auch nicht mehr. Haben die den Druck eingestellt?Jester schrieb:
Template-Meta-Programmierung ist also Design???
Ja, denn Alexandrescu verwendet Templates, um hochflexible und robuste Klassen zu erzeugen. Besonders genial finde ich den Smart - Pointer, den Small - Object Allocator und die Objekt - bzw. Abstrakte Fabrik.
-
weihnachtsgeschenk schrieb:
Wie wärs mit dem Buch zur Boost Library?
Ist ganz interessant. Auf der anderen Seite kann man sich die Informationen auch aus den Online-Dokumentationen und den Quelltexten selbst erarbeiten. Außerdem sollte man vorher schauen, ob auch alle Bibliotheken behandelt werden, die einen am Meisten interessieren. Ich z.B. finde es schade, dass Bibliotheken wie ProgramOptions, Serialization und MultiIndex nicht behandelt werden. Auch die großen Bibliotheken wie Spirit oder BGL sind nicht drin.
C++ Coding Standards ist wirklich nur eine Liste von Standards die man einhalten sollte. Sicher ein paar Perlen dabei, generell aber eher nicht so interessant.
Dem würde ich mich nicht anschließen. Neben der Liste und den Erklärungen sind imo besonders die Referenzen interessant. Da kann man schnell nach schauen, wo die Sachen ausführlich erklärt sind und muss nicht immer den gesamten Inhalt aller guten C++ Bücher auswendig kennen. Das Buch gehört imo neben den Klassikern wie (More) Effective C++ und (More) Exception C++ (Style) zu den Must-Haves.
Template-Meta-Programmierung ist also Design???
Ja. Zumindest, wenn man Design auch im Sinne von Copliens "Multi-Paradigm Design for C++" versteht. Also auch die "Solution Domain" (sprich u.A. die verwendete Implementationssprache) mit berücksichtigt. Außerdem geht es hier ja prinzipiell auch um die Idee der generischen Programmierung, die ja sprachunabhängig ist (Template-(Meta)-Programmierung ist ja nur die C++ Umsetzung).
Die Stärke von "Modern C++ Design" sind daher auch mehr die allgemeinen Techniken (die Ideen) und weniger die konkreten Beispiele. Ich würde sogar sagen: Loki ist Tod (boost ist einfach flexibler und reifer). Die Ideen dahinter aber für jeden ernsthaften C++ Programmierer höchst relevant.
Neben "Modern C++ Design" sollte man imo aber auch unbedingt "C++ Templates - The Complete Guide" lesen. Alexandrescu ist nicht so der Erklärbär, wenn es um die angewendeten Sprachfeatures geht. Da sind Josuttis und Vandervoorde einfach besser.
-
Ist das Buch zu Boost denn zu empfehlen, wenn man mal sehen will was boost so kann und wie man die Dinge anwendet?
Klar kann man auch die Doku lesen, aber ich hab lieber nen Buch in dem alles etwas kürzer formuliert ist und für die genaueren Infos kann man dann die Doku zur Hand nehmen.Und hat jdm. von euch Standard C++ IOStreams and Locales | ISBN: 0201183951? Ist das Buch zu empfehlen und was genau wird da drin behandelt?
-
User--- schrieb:
Ist das Buch zu Boost denn zu empfehlen, wenn man mal sehen will was boost so kann und wie man die Dinge anwendet?
Für die Bibliotheken die es behandelt, uneingeschränkt ja.
-
HumeSikkins schrieb:
Alexandrescu ist nicht so der Erklärbär, wenn es um die angewendeten Sprachfeatures geht. Da sind Josuttis und Vandervoorde einfach besser.
Das stimmt allerdings. Ich lese gerade Modernes C++-Design und tue mich da manchmal ein bisschen schwer ihn zu vestehen. Da kann sogar Stroustrup besser erklären, finde ich.
-
GPC schrieb:
...deutsche...oder englische...
kenne die deutsche nicht. aber ich kann mir kaum denken, daß ein übersetzer in der lage sein sollte, das gut rüberzubringen.
-
Also gut, dann die englische (seh grad dass die deutsche eh nur noch gebraucht gibt). Das mit dem Übersetzen ist in der Tat so ne Sache, damit haben se zum Beispiel Entwurfsmuster von Gamma verhunzt
Vllt. nehm ich mir noch die Coding Standards dazu, sozusagen als "nice to have"...Vielen Dank an alle.
-
HumeSikkins schrieb:
Template-Meta-Programmierung ist also Design???
Ja. Zumindest, wenn man Design auch im Sinne von Copliens "Multi-Paradigm Design for C++" versteht. Also auch die "Solution Domain" (sprich u.A. die verwendete Implementationssprache) mit berücksichtigt. Außerdem geht es hier ja prinzipiell auch um die Idee der generischen Programmierung, die ja sprachunabhängig ist (Template-(Meta)-Programmierung ist ja nur die C++ Umsetzung).
Das ist eigentlich garnicht der Punkt den ich meinte. Die Aussage klang so, als müsse modernes C++ Design mit template-meta-Programmierung zu tun haben, nach dem Motto: Was nicht mit template-meta arbeitet ist old-school.
Imho ist weder jegliches template-Meta-Programming gleich Design, noch ist Design (auch nicht modernes) gleich template-Meta-Programming. Also müssen die beiden doch was verschiedenes sein.
-
Ich glaube wir hatten nur ein anderes Verständnis für das Wort "ist" aus dem Satz "Template-Meta-Programmierung ist also Design???". Ich habe das "ist" mehr im Sinne von Teilmenge verstanden. Nach dem Motto: Template-Meta-Programmierung ist eine Form von Design, eine Design-Technik, etwas was ich im Zuge des Designs einer Lösung berücksichtigen kann. In diesem Sinne ist Alexandrescus Buch auch eindeutig ein Design-Buch.
Imho ist weder jegliches template-Meta-Programming gleich Design, noch ist Design (auch nicht modernes) gleich template-Meta-Programming. Also müssen die beiden doch was verschiedenes sein.
Da bin ich hundertprozentig deiner Meinung.