Bonjour,
Je dois comprendre rapidement le code source de plusieurs applications écrites en VB (5 ou 6 selon les cas).
Chacune de ces applications font entre 25000 et 110000 instructions chacunes (donc cela fait un peu plus en nombre de lignes si on compte le peu de commentaires existants).
Elles ont apparemment été écrites sans respecter aucune règle stricte et le résultat ressemble plus à un plat de spaghetti qu'à autre chose (très nombreuses variables globales qui n'auraient pas besoin de l'être [1], certaines variables déclarées explicitement [2], d'autres pas, noms de variables/fonctions/procédures peu parlants [3], fonctions utilisées comme des procédures [4], "passage de paramètres" via variables globales, peu de commentaires, pas d'indentation, pas de logique apparente dans l'organisation du code, etc, etc [5]).
Afin d'essayer d'y voir un peu plus clair, je cherche un/des outil(s) qui me permettraient de "parser" le code et d'en extraire des informations comme :
- liste des fonctions/procédures/propriétés (avec l'endroit où elles sont, les paramètres, etc) ;
- liste des variables globales/publiques/privées ;
- liste des fonctions/procédures appelées par chaque fonction/procédure ;
- liste des variables publiques/globales [6] et des fonctions qui les lisent/modifient ;
- et éventuellement d'autres choses...
L'idéal serait d'obtenir un résultat sous forme de fichier(s) qui puissent être facilement lus par un programme (pour, par exemple, générer des graphes avec un outil comme GraphViz à partir des infos).
Si vous connaissez quelque-chose dans le genre, n'hésitez pas à me le faire savoir.
Merci d'avance !
[1]: genre indices de boucle(s) utilisés dans telle ou telle fonction
[2]: mais pas toujours en début de fonction/procédure
[3]: exemples : des fonctions qui s'appellent F, FX, FX2, ...
[4]: ne renvoient pas de valeur
[5]: bref, tout ce qu'il ne faut pas faire on le trouve dans ces applis
[6]: "globales" == déclarées avec "Public" en partie déclarations d'un module de code / "publiques" == idem dans une feuille
Partager