Question

J'ai besoin d'un outil de documentation de code similaire à doc javadoc ou c # xml pour le code Delphi. Quel est le meilleur outil? Je préfère une technologie compatible à l'avenir avec le projet Microsoft sandcastle.

Était-ce utile?

La solution

Jetez un coup d'œil à SynProject , un outil Open Source écrit en Delphi.

Il a été conçu pour gérer un processus complet de documentation, des spécifications aux notes de publication, y compris les tests, l’architecture et la conception. et bien sûr, un analyseur Delphi intégré permet de générer une documentation d'architecture à partir du code source Delphi existant.

Pour le document d'architecture, le code source peut extraire des commentaires (ala PasDoc), puis incorporer ce texte dans le document d'architecture principal (avec des diagrammes de hiérarchie de classes et des dépendances d'unités).

Vous écrivez un fichier texte en utilisant une syntaxe de type wiki dans un éditeur de texte dédié, puis SynProject crée des documents Word bien formatés à partir de celui-ci. Certains assistants sont disponibles pour accéder au contenu. Mais comme il est stocké sous forme de fichier brut, plusieurs programmeurs peuvent écrire dessus, en utilisant n’importe quel outil SCM (SVN, Fossil ...).

Par exemple, je l’utilise actuellement pour rédiger la documentation de maintenance d’une très grande et ancienne application Delphi (environ 2 000 000 lignes de code écrites dans Delphi 5 et 6), sans documentation préalable disponible. Vous décrivez les modifications apportées au code (en citant l'unité / la classe / la méthode), puis l'outil mettra à jour toutes les documentations afin de refléter et de suivre ces modifications. SynProject a été conçu pour être compatible avec certains types & "; Délicats &"; règles de régulation (CEI 62304), mais peut être utilisé pour tout projet en raison de son " unique " design.

Remarque : Je poste ceci longtemps après la question, car SynProject n'existait pas à ce moment-là et peut valoir la peine d'être examiné. Ce sujet a été défini comme référence pour cette question .

Autres conseils

Delphi + JavaDoc = DelphiCodeToDoc

Pour autant que je sache, il n’existe aucun outil facilement compatible avec Microsoft Sandcastle - du moins tant que personne ne se soucie réellement d’en écrire un, d’en modifier un déjà existant ou de créer un ensemble d’outils permettant de transformer correctement la sortie.

J'ai personnellement utilisé PasDoc avec grand succès. Je recommande de construire la dernière version SVN, car la version actuelle croie de temps en temps sur des définitions d'interface compliquées.

Depuis Delphi 2005, il est construit dans le compilateur Delphi. Il utilise le standard XMLDoc qui utilise des commentaires de style XML. Tout comme C #, je suppose que Sandcastle peut le gérer. Voir http://dn.codegear.com/article/32770 et http://tondrej.blogspot.com/2006/03/xml-documentation -in-delphi-2006.html

Voir aussi Documentation sur Delphi

Sandcastle doit avoir accès aux assemblys pour pouvoir générer sa documentation, ce qui signifie qu’elle ne s’applique qu’aux langages .net (bien que je ne sois pas sûr de pouvoir Delphi.Net). Toutefois, Delphi 2007 et 2009 ont une documentation XML intégrée très similaire à C #. Lorsque vous activez l'option 'Générer de la documentation XML' dans les options du projet, la documentation XML sera construite à partir de ces commentaires. XSLT peut ensuite être utilisé pour générer le format de documentation dont vous avez besoin (c’est le difficile).

DelphiCodeToDoc dispose également d'une ligne de commande pour l'utiliser avec l'outil d'intégration continue (par exemple).

La question est assez ancienne, mais j’ai eu le même problème aujourd’hui et j’ai trouvé ce post. Delphi 2007 autorise la syntaxe suivante, qui semble être égale aux documentations C #:

/// <summary>
/// Summary of the function / class
/// </summary>
/// <param name="param1">Description of the parameter param1</param>
/// <param name="param2">Description of the parameter param2</param>
/// <param name="param3">Description of the parameter param3</param>
/// <returns>Description of the return value</returns>
function test(param1, param2, param3: string): string;

Pour <summary>, il ne semble pas y avoir de possibilité d'autoriser les sauts de ligne. <br /> ne fonctionne pas.

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