Question

J'utilise SourceMonitor sur mon projet depuis quelques années pour conserver des enregistrements de la complexité du code source et du SLOC de base (y compris les commentaires) pour les composants C # et C ++. Celles-ci sont utilisées pour les rapports externes destinés à nos clients. Je ne suis donc pas en mesure de discuter de leurs mérites ou de leur absence.

Je travaille sur un outil d'analyse de référentiel qui peut me donner une vue instantanée du projet à n'importe quelle date / heure. La prochaine étape à ajouter est la mise en cache des métriques d’un fichier et d’une révision spécifiés.

Je sais que SourceMonitor peut être scripté pour me permettre de fournir les fichiers à tester et d'extraire les métriques du fichier de résultat CSV ou XML.

Existe-t-il une bibliothèque native dans .NET que je pourrais utiliser pour faire la même chose - par ex. éviter de générer un processus externe et d'analyser les résultats.

Je n'ai vraiment besoin que des mesures suivantes:

  • SLOC
  • Nombre de lignes de commentaires
  • Complexité de la méthode la plus complexe
  • Nom de la méthode la plus complexe

Je dois l'exécuter sur le code C # et le code C ++ normaux.

Modifier: étant donné que j’ai déjà un outil qui fournit l’interface graphique et les rapports que je veux, les métriques doivent être scriptées ou générées à l’aide d’une bibliothèque / API sans étapes manuelles. Idéalement, je souhaite obtenir des métriques pour un fichier / une révision spécifié (plutôt que pour un projet entier) que mon utilitaire fera glisser automatiquement du contrôle de version.

NOTE: J'ai créé une prime pour cela et étais en vacances quand il a expiré ... la réponse de NDepends ne me satisfait pas car elle ne regarde pas le code source mais l'assemblage lui-même !!!

Était-ce utile?

La solution 5

Bien que je n’aie jamais trouvé de produit .NET pouvant également analyser le C # et le C ++, j’ai réussi à trouver un produit facile à utiliser, CODECOUNT qui prend en charge ces langues et bien d’autres.

Il a une simple ligne de commande, contrairement à SourceMonitor qui était utilisé dans mon projet jusqu'à ce que CODECOUNT le remplace.

Autres conseils

Vous pouvez trouver un code source ouvert pour SLOC C # et des commentaires ici: http://code.google.com/p/projectpilot/source/browse/#svn/trunk/ProjectPilot.Framework/Metrics

Cloc est un outil fiable de calcul du SLOC basé sur la ligne de commande. Il prend en charge de nombreux langages, notamment C # et C ++. Les formats de sortie pris en charge sont xml, csv et sql.

Cela ne vous donnera pas la complexité de la fonction et ce n’est pas scriptable (à ma connaissance), mais SlickEdit Gadgets for VS possède un excellent outil de rapport SLOC. Vous pouvez l’utiliser à partir de l’explorateur de solutions et vous fournir un rapport détaillé à au niveau du fichier, du projet ou de la solution.

Vous pouvez l'obtenir ici: http://www.slickedit.com/content/view / 441

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top