2009-03-26 7 views
14

J'ai hérité de plus de 600 fichiers de code source ColdFusion exécutant un site web interne pour mon entreprise. Une de mes tâches est de le "documenter". La base de code représente environ 5 années de développement et il n'y a aucune spécification technique de ce qu'elle fait.Documentation automatique du code ColdFusion

Les développeurs ont géré un journal des modifications de chaque fichier et il existe un en-tête cohérent.

Ma pensée est que je peux construire une carte de dépendance des divers modules et procédures mémorisées référencées pour faciliter cette documentation en balayant les fichiers sources. J'ai utilisé Doxygen dans le passé pour le code source C++ et je me demande si un tel outil existe pour ColdFusion.

Une sortie que j'étudie est la possibilité de créer un fichier xmind comme moyen de visualiser les dépendances croisées dans les inter-relations de module.

Merci à l'avance,

Chris

+0

« Les développeurs ont maintenu un journal de changement de chaque fichier et leur est un en-tête cohérente. » - Cela ne prouve rien d'autre que les * intentions déclarées * du développeur! (Et en supposant qu'ils se souviennent toujours d'enregistrer les changements, etc) –

+0

5 ans. 600 fichiers. Quelles sont les chances que ce soit du bon code OO, tout en cfc, qui ait des indices (métadonnées), qui peuvent être utilisés pour générer une bonne documentation? Probablement très peu. – Mark

Répondre

5

Vous pourriez commencer par ColdDoc

En outre, Heres un générateur UML 2 CFC.

Je suppose que ce dont vous avez vraiment besoin, c'est de faire de la rétro-ingénierie du code coldfusion dans les diagrammes de classe uml. Je ne connais rien au sommet de ma tête.

MagicDraw, Objecteering ne semblent pas le faire encore.

0

Cela me semble être la façon de créer votre propre fichier Xmind ou XMI. Le fichier XMI peut être plus portable entre les outils, mais la dernière fois que j'ai regardé en faisant cela, les formats de fichiers XMI étaient un peu intimidants pour le temps que j'avais à travailler sur la solution. Si la mise en forme des en-têtes est suffisante pour lire avec ReFind ou Find, je construirais un script qui utiliserait cfdirectory et cffile pour parcourir l'arbre de code et sortir le (s) fichier (s).

9

Le serveur ColdFusion a built in introspection qui génère une documentation de type javadoc pour n'importe quelle classe CFC.

Voir: http://YourColdfusionServer/CFIDE/componentutils/componentdoc.cfm

Cependant, il nécessite une connexion RDS/mot de passe pour votre serveur. Pour la livraison à des tiers, j'ai mis en place un script récursif qui effectue un cfhttp aller chercher les docs pour chaque fichier cfc, puis compile les pages au format PDF avec cfdocument.

+0

Une information fabuleuse.J'apprécie vraiment que vous ayez répondu à cette question, cela m'a sauvé des jours d'efforts pendant une migration loin de ColdFusion. –

3

Après avoir essayé de trouver une réponse à cette question moi-même, je fini par écrire cette solution:

ColdDuck

Peut-être qu'il est trop tard pour vous maintenant, mais je suis tout Prêcher la bonne parole.

Murray

+0

C'est un excellent travail! Je vais essayer cela et voir ce que je peux en faire. Merci! –

+1

Vous pourriez bien être la seule autre personne sur la planète qui l'utilise! Et je n'ai pas regardé ça depuis lors non plus! ;-) J'espère que cela fonctionne pour vous. – Murrah

Questions connexes