.NET: Programmierfehler bequem mit FxCop analysieren

Auch hervorragenden Programmierern unterlaufen von Zeit zu Zeit Fehler. Diese aufzuspüren und zu beheben gehört zu den wichtigsten Aspekten ihres Jobs. Microsofts .NET-Framework stellt dafür das Analyse-Tool FxCop zur Verfügung.

FxCop ist ein Analysewerkzeug für .NET, das gemanagte Code-Assemblies auf Verstöße gegen die Entwurfsrichtlinien des Microsoft-.NET-Frameworks überprüft. Es verwendet eine regelbasierte Engine, um den Code mit den Richtlinien zu vergleichen. Außerdem gibt es die Möglichkeit, die Engine mit eigenen Regeln zu erweitern. Microsoft stellt dieses Tool kostenlos zur Verfügung.

Die aktuelle Version von FxCop arbeitet mit .NET 2.0. Sie nutzt eine als Introspektion bezeichnete Technik, um einen Blick in die Assemblies zu werfen. Die Vorgängerversionen arbeiteten mit der sogenannten Reflexion. Das ist nicht unwichtig. Denn während die älteren Versionen immer zum Abbruch und Neustart aufforderten, sobald etwas am Code verändert wurde, ist dies nun nicht mehr nötig.

Die meisten Code-Analysetools lesen den Quellcode. FxCop analysiert hingegen den kompilierten Code. Jede Assembly in .NET enthält Metadaten, die die Assembly selbst und sämtliche verwendeten Typen beschreiben. FxCop verwendet exakt diese Metadaten, um herauszufinden, was im Code passiert. Außerdem überprüft das Tool auch die Microsoft Intermediate Language (MSIL), die beim Kompilieren von Code erstellt wird.

Da FxCop also sowohl die Metadaten als auch MSIL analysiert, verfügt das Instrument über einige Informationen, anhand derer nachvollzogen werden kann, was genau der Code macht. Der Code wird mit den Entwurfsrichtlinien verglichen. Daraufhin erstellt FxCop für jede Instanz mit fehlerhaftem Code eine Meldung.

Themenseiten: .NET, Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu .NET: Programmierfehler bequem mit FxCop analysieren

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *