Quelle est la signification de #XXX dans les commentaires de code?

Je l’ai vu beaucoup dans le code, même vim le marque comme un cas particulier. #TODO et #FIXME sont deux autres points forts de vim, mais que signifie #XXX ?

XXX dans un commentaire est généralement un heads-up. Il pourrait être:

  • Quelque chose qui n’est pas implémenté complètement correctement.
  • Quelque chose qui devrait être corrigé plus tard.
  • Mettre en évidence un problème éventuel.
  • Quelque chose dont vous n’êtes pas sûr, une question.

J’ai souvent préféré une balise plus descriptive comme FIXME ou TODO ou HACK . XXX est souvent utilisé comme un attrape pour tout ce qui précède.

La recherche de «XXX» sur la référence croisée de code FreeBSD est un bon exemple de nombreuses utilisations. Il y a des milliers …

  • NOTE : Description du fonctionnement du code (quand il n’est pas évident).
  • XXX : Avertissement concernant les pièges possibles, peut être utilisé comme NOTE:XXX:
  • HACK : Code pas très bien écrit ou mal formé pour contourner un problème / bug. Devrait être utilisé comme HACK:FIXME:
  • FIXME : Cela fonctionne, en quelque sorte, mais cela pourrait être mieux fait. (Habituellement, le code est écrit rapidement et doit être réécrit).
  • BUG : Il y a un problème ici.
  • TODO : Pas de problème, mais un code supplémentaire doit être écrit, généralement lorsque vous sautez quelque chose.

C’est du moins ce que j’ai appris sur ces étiquettes. Fondamentalement, les deux premiers ( NOTE et XXX ) sont utilisés à titre d’information et aucune action n’est requirejse. Alors que les trois derniers ( FIXME , BUG et TODO ) nécessitent une action. HACK est quelque part entre les deux (et je ne l’ai presque jamais utilisé?).

Quelques notes d’une proposition d’amélioration de Python de juin 2005 qui ont été rejetées .

Choisir entre FIXME et XXX est difficile.
XXX semble être plus commun, mais beaucoup moins descriptif.
En outre, XXX est un espace réservé utile dans un morceau de code
ayant une valeur inconnue.

Ainsi, FIXME est l’orthographe préférée.
Sun dit que XXX et FIXME sont légèrement différents, ce qui donne à XXX plus grande sévérité.
Cependant, avec des décennies de chaos sur ce sujet et trop de millions
Les développeurs qui ne seront pas influencés par Sun, il est facile de les appeler à juste titre synonymes.


Le PEP commence avec,

Ce PEP a été rejeté. Alors que la communauté peut être intéressée,
Il n’y a aucun désir de rendre la bibliothèque standard conforme à cette norme.

Que sont les codetags?

Les programmeurs utilisent largement les conventions de balisage de commentaires de code ad hoc pour servir de rappels de sections de code nécessitant un examen ou une révision plus approfondis. Parmi les exemples de balisage, citons FIXME , TODO , XXX , BUG , mais de nombreux autres logiciels sont largement utilisés. Ce balisage sera dorénavant dénommé ” codes de lecture” . Ces étiquettes de code peuvent apparaître dans le code de l’application, les tests unitaires, les scripts, la documentation générale ou, le cas échéant.


Le PEP est une lecture intéressante.

Jetez un coup d’œil à PEP350 . Il explique tout TODO , XXX etc.

J’utilise XXX parce que c’est plus facile à taper que TODO .

XXX est pour quand tu es pressé et y reviendra toi-même.

TODO est pour quand vous devez le remettre à quelqu’un d’autre.

C’est probablement pour les cas que vous ne savez pas gérer.
Découvrez ceci: Vue en liste des instructions TODO / FIXME / XXX / HACK

alt text http://editra-plugins.googlecode.com/svn/wiki/images/commentbrowser/cb_screenshot.PNG

Un espace réservé, impliquant généralement le code auquel il fait référence, est:

  • Laid
  • Effrayant
  • la magie

ou pire.

De (vieilles) conventions de code Java :

Utilisez XXX dans un commentaire pour marquer quelque chose qui est faux mais qui fonctionne. Utilisez FIXME pour marquer quelque chose qui est faux et cassé.

XXX est l’abréviation de caveat qui est légèrement différent de NOTE mais assez similaire à HACK. Il peut s’agir d’un bogue dans une bibliothèque / code tiers qui est utilisé et le code avec // XXX: indique qu’il s’agit d’une solution de contournement due à un bogue dans le code tiers ou que cela peut signifier “attention” à quelqu’un qui regarde / modifie le code pour indiquer pourquoi quelque chose est fait d’une certaine manière qui, autrement, peut sembler incorrecte / inélégante au premier abord. HACK est un terme générique qui signifie une solution de contournement pour un problème pouvant être présent dans votre propre base de code ou dans une bibliothèque tierce.

Je crois que lorsque FIXME est pour le développeur et que HACK est pour le responsable, XXX est pour l’utilisateur.

Par exemple, si vous ignorez le XXX et appelez cette fonction ailleurs, sans comprendre comment cela fonctionne, quelque chose d’inattendu peut se produire et la personne en charge de ce problème sera mécontente (du moins celle qui a ajouté le XXX pense). Vous pensez peut-être que le problème aura disparu si vous n’utilisez pas cette fonction.

Mais pour FIXME , vous vous sentirez digne de simplement corriger le code pour le faire fonctionner. Et pour HACK , vous n’avez peut-être pas le meilleur choix, même si vous ne l’utilisez pas.

Si vous avez écrit XXX sur votre propre code et que quelqu’un l’utilise, vous pourriez être mécontent pour des raisons telles que vous avez complètement réécrit ce code, et il se comporte alors de manière complètement différente et vous avez cassé le code de quelqu’un d’autre. Mais si vous avez quitté un FIXME ou un TODO place, vous ne vous en soucierez pas autant.