2009-03-13 20 views
8

Istnieją narzędzia do porównywania kodu z niestandardowymi zestawami wytycznych/standardów kodowania dla różnych języków (zamiast zwykłej analizy statycznej dla typowych defektów). Przykłady obejmują FxCop dla kodu .Net i CheckStyle dla Javy, ale zastanawiałem się, jakie przykłady ludzie znają w świecie C++.Jakie narzędzia istnieją do porównywania kodu C++ z wytycznymi dotyczącymi kodowania?

An existing question was asked regarding free tools który podał przykłady takie jak Vera, ale zastanawiałem się również nad dostępnymi komercyjnymi narzędziami.

Odpowiedz

2

astyle to popularne narzędzie do systemu Unix, które przekształca źródło na określony styl. Obsługuje większość języków podobnych do języka C. Nie znam podobnych komercyjnych narzędzi.

+0

Myślę, że pytanie dotyczy raczej idiomów i nazw zmiennych niż wcięć i znaków nowej linii. –

2

Zastanawiam się również nad komercyjnymi narzędziami, które mogą być dostępne.

Visual Studio Team System Edition 2005/2008 ma kilka takich rzeczy. Mają także możliwość egzekwowania zestawu zasad dla całego zespołu. Sprawdź to.

5

Używanym przez nas narzędziem był CodeWizard z Parasoft. Ale myślę, że nowa wersja nazywa się "Parasoft C++ Test". Ze strony głównej:

  • analiza statyczna kodu dla zgodności z wybranych przez użytkownika standardów kodowania
  • Graphical RuleWizard edytor do tworzenia niestandardowych kodowania zasady
  • Static symulację ścieżki kod identyfikacji potencjalnego środowiska wykonawczego błędy
  • Automatyczna analiza kodu z interfejsem graficznym i postępem śledzenie
  • Automated generacji i wykonanie urządzenia i poziomie komponentów testy
  • elastyczne ramy stub
  • Pełne wsparcie dla testów regresji
  • Kod analiza pokrycia z kodem podkreślając
  • Runtime Błąd pamięci sprawdzanie podczas jednostce wykonanie testu
  • Pełna infrastruktura wdrażania zespołu do korzystania z komputera stacjonarnego i linii poleceń
4

ZASTRZEŻENIE: Praca nad tym narzędziem to moja codzienna praca.

Jestem oczywiście stronniczy, ale jedną z głównych cech QA C++ jest wymuszanie standardowego kodowania. Na przykład wykonujemy wymuszanie JSF ++ i MISRA C++. Możesz przeczytać więcej na ten temat here.

+0

Ta odpowiedź jest istotna i uważam, że podłączenie twojego adresu IP jest dopuszczalne, gdy jest to istotne dla pytania. Zobacz to pytanie http://meta.stackexchange.com/questions/741/what-is-the-most-appropriate-way-to-promote-yourself-using-stackoverflow/756 #756 dyskusja na ten temat. – ConcernedOfTunbridgeWells

1

I nie robić t wiedzieć, czy szukasz narzędzia z wbudowanymi regułami lub chcesz sprawdzić swoje reguły niestandardowe. Jeśli jest to drugie, może okazać się przydatne zaimplementowanie wyszukiwania niepożądanych wzorców na podstawie wyrażeń regularnych. W zależności od potrzeb, Metrix ++ http://metrixplusplus.sourceforge.net/ może zaoferować przydatne ramy.

Powiązane problemy