Im Moment verwende ich Google C ++ Style Guide in meinem C ++ - Code und war ziemlich zufrieden damit.
Kürzlich wurde mir gesagt, dass dieser Leitfaden sehr schlecht ist: Er wird intern von Google verwendet (das wusste ich), ist veraltet und wirbt für einige sehr schlechte Praktiken. Also möchte ich einen anderen Codierungsstil verwenden.
Welche guten und fairen C ++ - Styleguides gibt es? Ich schreibe Code sowohl für gcc als auch für Visual Studio und verwende viele der C ++ 11-Funktionen.
Was mir an Google C ++ Style Guide sehr gut gefallen hat, waren die Einrückung, das Leerzeichen und die Namenskonventionen (insbesondere die Benennung aller Klassen, Typen - einschließlich Typedefs, Typaliase und Vorlagenaliase - mit Großbuchstaben).
Ich weiß, dass jede Antwort subjektiv ist (ich hoffe, dass dies auf dieser Site in Ordnung ist), und ich würde mich über jede Meinung freuen, aber ich bin gespannt, welche Führer heutzutage verwendet werden.
quelle
Antworten:
Sie können die Richtlinie aus diesem Buch für die allgemeine Verwendung verwenden:
http://www.amazon.com/Coding-Standards-Rules-Guidelines-Practices/dp/0321113586
von Herb Sutter und Andrei Alexandrescu. Es berücksichtigt zwar nicht C ++ 11, aber ich denke, es wird eine neue Ausgabe geben.
Es wird jedoch nicht die Anzahl der Leerzeichen anstelle von Tabulatoren oder die Art der zu erzwingenden esoterischen Notation beantwortet. Dies ist jedoch nicht das Wichtigste. Meistens ist es der Schlüssel, nur um eine gewisse Konstanz zu erreichen.
quelle
Die C ++ - Kernrichtlinien sind eine Reihe von bewährten Richtlinien, Regeln und bewährten Methoden für die Codierung in C ++. Sie finden sie hier: https://github.com/isocpp/CppCoreGuidelines
Sie werden unter anderem von Bjarne Stroustrup und Herb Sutter geschrieben .
quelle
Die Kritik an Googles C ++ - Stilrichtlinie (und ich stimme einigen zu) bezieht sich nicht auf die Namenskonventionen oder den Einrückungsstil von Google, sondern auf einige ihrer anderen Regeln und Richtlinien. Einrückungs- / Formatierungs- und Namenskonventionen sind beide Geschmackssachen und ein fruchtbarer Boden für endlose Religionskriege von Programmierern, aber in C ++, wo es anders als in C # keinen universellen Standard gibt, ist die einzige wirklich wichtige Richtlinie die Konsistenz. Wählen Sie für ein neues Projekt eine Namenskonvention und einen Einrückungsstil aus, die Sie mögen, und verwenden Sie diese konsequent. Halten Sie sich bei einem vorhandenen Projekt an die bereits verwendete Konvention. Regel 0 in C ++ - Codierungsstandards lautet: "Schwitzen Sie nicht mit kleinen Dingen." wo sie argumentieren, dass Namenskonventionen und Einrückungsstil einfach nicht so wichtig sind, solange Sie
Ein großer Produktivitätsschub für mich war die Automatisierung des Einrückens / Formatierens im Clang-Format . Sobald Sie sich für Einrückungs- und Formatierungsregeln entschieden haben, empfehle ich dringend, eine angepasste Konfigurationsdatei im .clang-Format einzurichten und sich dann nie wieder darum zu kümmern :-)
Das Clang-Format ist ein eigenständiges Tool und erfordert nicht, dass Sie Clang als Compiler verwenden. Es gibt sogar ein offizielles Plugin verfügbar für Visual Studio.
quelle
Wie @ user113896 bereits schrieb, hat uns Bjarne Strostrup eine Menge Style-Anleitungen gegeben. Eine seiner großartigen Errungenschaften ist JSF-C ++ Coding Style Book . Achtung, es ist nicht für reguläres C ++ gedacht, sondern eher für die eingebettete Verwendung, aber es zeigt, wie die Dinge klar und funktionell gemacht werden sollten. Natürlich - Sie müssen nicht alles berücksichtigen - es ist ein Leitfaden, kein Auftragsbuch :).
quelle
Wenn Sie Bjarne Stroustrup's Programming and Principles nicht gelesen haben, empfehle ich Ihnen nachdrücklich, es zu lesen, da Sie viel vom Schöpfer der Sprache lernen können. Ich habe viel vom C ++ - Autor gesehen und gelesen, und ich kann sagen, dass er diese Fixierung für Stil hat und den Leuten immer sagt, guten, schönen Code zu schreiben, der seiner Meinung nach leichter zu debuggen und zu lesen ist. Ich glaube, dass er der beste Tutor und die beste Anleitung ist, um stilvollen und schönen C ++ - Code zu schreiben.
quelle