2010-01-27 22 views
8

Ich arbeite an einem Projekt in C# .net und WPF. Wir verwenden StyleCop, um dem Projekt einen einheitlichen Stil zu geben, und nachdem wir einige Regeln deaktiviert haben, sind wir ziemlich zufrieden damit. Ich habe jedoch gehört, dass die Leute über FxCop sprechen, und dass dies auch für das Projekt von Nutzen wäre. Von dem, was ich verstehe, ist das mehr auf einer Code-Struktur-Basis ..?Sollte ich FxCop verwenden und warum?

Könnte mir jemand bestimmte Gründe nennen, warum wir FxCop verwenden sollten? Was sind die wichtigsten Dinge, die FxCop sicherstellen wird, dass wir es richtig machen?

+0

Siehe auch http://StackOverflow.com/questions/1867867 – andreas

Antwort

3

Es erkennt einige nützliche Bedingungen und kann Ihren Codierungsstil verbessern. Unter Stil verstehe ich nicht nur Klammerplatzierung und so weiter. Aber Probleme wie abstrakte Klassen haben öffentliche Konstruktoren und viele andere specialist Fälle. Es sind kleine Dinge wie diese, und nach einer Weile macht man sie automatisch.

Es ist einfach, ein neues Projekt damit zu starten. Es ist schwieriger, es mit einem vorhandenen Projekt zu verwenden, da es mehr Probleme erkennen wird. Es ist erwähnenswert, dass Sie FxCop zuerst konfigurieren müssen, da es auf triviale Dinge hinweisen wird, die nicht von Belang sind.

+0

Sind alle Regeln zuerst aktiv, und dann können Sie diejenigen deaktivieren, die Sie nicht wollen? Wie StyleCop ..? – stiank81

+1

Ja. Sie können sie im Code oder in der App selbst deaktivieren. – Finglas

1

FxCop funktioniert auf kompilierten Binärdateien, während StyleCop analyzes the source code directly.

Vielleicht könnten Sie damit überprüfen, ob eine kompilierte Assembly, die Sie an Ihre QA/Produktionsumgebung senden, mit Ihren Unternehmensrichtlinien übereinstimmt, wenn jemand versucht, Ihre StyleCop-Regeln zu umgehen.

+0

Willst du sagen, dass es viele der gleichen Regeln wie StyleCop verwendet, aber prüft dies stattdessen auf kompilierte Binärdateien? – stiank81

+0

Ich meine; Obwohl FxCop einige völlig andere Regeln überprüft hat. – stiank81

+1

Ja, weil verschiedene Informationen verfügbar sind; Während einige Regeln beiden Tools gemeinsam sind, können Sie einige Informationen aus dem Quellcode erhalten, und andere Informationen können nur von Assemblies abgerufen werden. –

1

Ich benutze es, in Kombination mit CC.NET. Das bedeutet, CC.NET jedes Mal mein Projekt bauen, es führt auch eine FxCop Analyse, was praktisch sein kann, da es:

  • nicht verwendeten Variablen
  • erkennt nicht verwendeten Methoden
  • gibt Ihnen erkennt einen Anzeige, ob Sie ein Wort
  • haben, können Sie daran erinnern, dass Sie einen Formatprovider an einen Aufruf von ToString() fi übergeben sollten

Kurz gesagt: Es hilft Ihnen, die Qualität Ihres Codes zu verbessern.

Verwandte Themen