2010-07-27 9 views
3

Existe-t-il un générateur de documentation personnalisable pour C#? Contrairement à la documentation XML native qui fournit des documentations pour les classes, les méthodes, les propriétés, la documentation à laquelle je fais référence ici est de plus bas niveau, c'est-à-dire qu'elle documente le flux d'une méthode.documentation personnalisée pour le code C#

par exemple dans le code donné

void SomeMethod(){ 

///doc:Do X 
SomeCodeToDoX 

///doc:Do Y 
SomeCodeToDoY 

///not tagged 
SomeCode 

} 

La documentation capturera doc: Do X et doc: Do Y et documentera Do X et Do Y comme le flux dans la méthode SomeMethod

** J'espère que je fait la question assez claire .. si je ne l'ai pas s'il vous plaît commentaire à demander des éclaircissements *

+1

Idée intéressante, mais je dirais que si vos méthodes sont si grands et complexes qu'ils ont besoin de documentation * à l'intérieur * de la méthode, alors vous devrez probablement refactoriser, plutôt que d'essayer de le faire ... –

+0

Je ne voudrais pas exposer ce genre de commentaire. Il pourrait empêcher les programmeurs de commenter le code "à l'intérieur de la boîte" –

+0

@graphain: Mon idée est d'avoir une balise qui indique que ce commentaire fait partie de la documentation, sans la balise les commentaires ne seraient pas documentés –

Répondre

2

Je ne sais pas si cela répond à votre question, mais vous pouvez utiliser SandCastle: http://sandcastle.codeplex.com/

Il crée une documentation MSDN en reflétant des assemblys. Vous pouvez (mais pas obligatoire) ajouter vos propres balises de documentation aussi.

3

Vous pouvez utiliser les éléments XML que vous aimez dans les commentaires doc, autant que je sache, mais ils doivent être attachés à un membre; vous ne pouvez pas ajouter des commentaires doc à des morceaux de code dans une méthode, j'ai peur.

Ou au moins, vous pouvez, mais il ne sera pas repris dans le cadre du fichier XML généré et vous obtiendrez un message d'avertissement comme celui-ci:

Test.cs (11,9) : CS1587 d'avertissement: commentaire XML n'est pas placé sur un élément de langue valide

Il est possible que si vous désactivez cet avertissement et utiliser Doxygen pour traiter le code source au lieu du construit dans le générateur, vous peut être capable de faire quelque chose ... mais vous devez être conscient il sera très spécifique à votre environnement. Je soupçonne que les avantages ne valent pas la peine, moi-même. Je voudrais également donner un avertissement sur la lisibilité du code qui contient une grande quantité de commentaires - cela peut être très distrayant lorsque vous voulez vraiment voir le code lui-même.

(Pour une raison quelconque est SO Barfing lorsque je tente de poster un lien vers Doxygen ... déposera un bug sur Meta.)