2009-03-13 9 views
8

Es gibt Tools zum Vergleichen von Code mit einem benutzerdefinierten Satz von Codierungsrichtlinien/-standards für eine Vielzahl von Sprachen (anstatt einer reinen statischen Analyse für allgemeine Defekte). Beispiele sind FxCop für .Net-Code und CheckStyle für Java, aber ich frage mich, welche Beispiele die Leute in der C++ - Welt kennen.Welche Werkzeuge gibt es, um C++ - Code mit Codierungsrichtlinien zu vergleichen?

An existing question was asked regarding free tools die Beispiele wie Vera zur Verfügung gestellt, aber ich fragte mich auch über kommerzielle Tools, die verfügbar sein können.

Antwort

2

astyle ist ein gängiges Unix-Tool, das die Quelle in einen bestimmten Stil umformt. Es unterstützt die meisten C-ähnlichen Sprachen. Ich kenne keine ähnlichen kommerziellen Tools.

+0

Ich denke, die Frage ist mehr über Idiome und Variablennamen als Einzug und Zeilenumbrüche. –

2

Ich habe mich auch über kommerzielle Tools gewundert, die möglicherweise verfügbar sind.

Visual Studio Team System Edition 2005/2008 hat einige solcher Sachen. Sie haben auch die Möglichkeit, ein Regelwerk für ein ganzes Team durchzusetzen. Hör zu.

5

Ein von uns verwendetes Tool war CodeWizard von Parasoft. Aber ich denke, die neue Version heißt "Parasoft C++ Test". Von der Homepage:

  • Statische Analyse von Code für Einhaltung vom Benutzer gewählten Codierung Standards
  • Graphical RuleWizard Editor zum Erstellen von benutzerdefinierten Codierung Regeln
  • Statische Code-Pfadsimulation zur Identifizierung potentieller Laufzeit Fehler
  • Automatische Code-Überprüfung mit einer grafische Benutzeroberfläche und Fortschritt Tracking
  • Automatische Generierung und Ausführung der Einheit und Komponentenebene Tests
  • Flexible Stub Rahmen
  • Volle Unterstützung für Regressionstests
  • -Code Coverage-Analyse mit Code
  • Runtime Speicherfehler während Einheit Hervorhebung Prüfen Testausführung
  • Komplette Teambereitstellungsinfrastruktur für Desktop- und Befehlszeilenverwendung
4

HAFTUNGSAUSSCHLUSS: An diesem Werkzeug zu arbeiten ist mein Tagesjob.

Ich bin offensichtlich voreingenommen, aber eine der wichtigsten Funktionen von QA C++ ist Coding Standard Enforcement. Zum Beispiel führen wir JSF ++ und MISRA C++ durch. Sie können mehr darüber lesen here.

+0

Diese Antwort ist relevant, und ich glaube, das Einstecken Ihrer IP ist akzeptabel, wenn dies für die Frage relevant ist. Siehe diese Frage http://meta.stackexchange.com/questions/741/what-is-the-most-appropriate-way-to-promote-yourself-using-stackoverflow/756#756 einige Diskussion zu diesem Punkt. – ConcernedOfTunbridgeWells

1

ich nicht Sie wissen, ob Sie nach einem Tool mit integrierten Regeln suchen oder ob Sie Ihre benutzerdefinierten Regeln überprüfen möchten. Wenn es die zweite ist, kann es nützlich sein, Suchen nach unerwünschten Mustern basierend auf Regexp zu implementieren. Abhängig von Ihren Anforderungen kann Metrix ++ http://metrixplusplus.sourceforge.net/ hilfreiche Rahmenbedingungen bieten.

Verwandte Themen