2009-01-17 7 views

Répondre

1

Calculer qui fonctionne appel qui fonctionne

NDepend peut produire quelques méthodes utiles ou classe appel graphique comme par exemple la capture d'écran ci-dessous (image en taille réelle here) Disclaimer: Je suis l'un des les développeurs de l'outil

NDepend Methods Call Graph

Recherche m Explications de minerai sur how to generate call graph with NDepend here.

Calculer quelles sont les classes sous-classes dont les classes

De la même façon NDepend peut générer graphe d'héritage de classe (explanation to generate class inheritance graph here).

Calculer les classes instancier les classes

NDepend permet d'écrire code de requête sur requête LINQ (ce que nous appelons CQLinq). Avec CQLinq, vous pouvez demander des méthodes ou des classes qui crée une classe particulière, par exemple:

from m in Methods 
where m.CreateA("NUnit.Core.NUnitConfiguration") 
select m 

Un tel résultat de la requête CQLinq peut être exportée vers le point de vue graphique, pour obtenir une représentation visuelle des dépendances. En parallèle, avec CQLinq, on peut aussi écrire des règles de code. Plus de 200 code rules sont proposés par défaut, ceux-ci comprennent des règles concernant conception, l'architecture, qualité du code, l'évolution du code , conventions de nommage, code mort, utilisation de .NET Fx ...

Les règles CQLinq peuvent être verified live in Visual Studio ou peuvent être vérifiées pendant le processus de construction et reported in an HTML/javascript report.

1

Doxygen + GraphViz (pour les images, Doxygen nécessite GraphViz)

qui a le plus grand soutien langues (puisque vous n'avez pas spécifié une langue) et le spectateur est un navigateur, donc une fois généré, tout le monde devrait être capable de le voir.

Configurer doxygen pour générer des membres non documentés, y compris le code source. De cette façon, le code source inclura des liens vers des déclarations de fonctions pour faciliter la navigation.

Il existe également des outils spécialisés dans un langage, tels que Understand for C++.

Questions connexes