DrivenMetrics ist ein Open Source C# Befehlszeilenprogramm. Die Kernfunktionen sind vom Befehlszeilenkonsolen-Client als Bibliothek isoliert (Core-Projekt ist verfügbar here).
Auch ganz einfach, wenn es Ihre Notwendigkeit auch passen: es kostenlos ist, zählt die die Anzahl der Zeilen und berechnet die zyklomatische Komplexität (Anzahl der möglichen Codepfade) von Methoden.
Dies wird durch die direkte Analyse der IL dank Mono.Cecil durchgeführt (die gleiche Bibliothek NDepend beruht auf). Dies ermöglicht die Analyse auf Baugruppen aus Code in C# geschrieben, VB.Net, ...
- Das Projekt angekündigt wurde here gebaut durchgeführt werden.
- Die Codequelle ist , verfügbar unter github.
- Ein verpacktes Release ist auch available.
- Es funktioniert sowohl unter Windows und Mono.
UPDATE:
Eine andere Möglichkeit wäre die erstaunlichGendarme, ein statisches Analysewerkzeug aus dem Mono Projekt.
Als Beispiel für die Verwendung zeigt der folgende Code die zyklomatische Komplexität jeder Methode in einer Baugruppe.
ModuleDefinition module = ModuleDefinition.ReadModule(fullPathToTheAssembly);
foreach (var type in module.Types)
{
foreach (var me in type.Methods)
{
if (!me.HasBody || me.IsGeneratedCode() || me.IsCompilerControlled)
continue;
var r = AvoidComplexMethodsRule.GetCyclomaticComplexity(me);
Console.WriteLine("{0}: {1}", me.ToString(), r);
}
}
- Das Projekt wird here beschrieben
- Der Quellcode auf github
- Verpackte Versionen sind auch
- Es funktioniert sowohl unter Windows und Mono available
Haben Sie schon einmal eine Bibliothek gefunden? Oder wie hast du dieses Problem gelöst? – RoflcoptrException
Nein, das war Teil einer Programmidee, die ich hatte, aber leider erlaubt mir meine derzeitige Zeit nicht, fortzufahren und die App zu erstellen. Deshalb habe ich auch keine weitere Suche nach einer geeigneten Bibliothek durchgeführt – Juri
ok danke. also muss ich weiter suchen;) – RoflcoptrException