Je serais certainement décourager, fortement, toujours vérifier dans commenté code. Je ne voudrais pas, cependant, absolument interdire. Parfois (si rarement) il convient de vérifier commenté le code dans la source de contrôle. En disant "ne" est trop restrictive.
Je pense que nous sommes tous d'accord avec ces points:
- Ne jamais vérifier code mort dans le contrôle de source
- Ne jamais vérifier cassé (non-fonctionnement) code de contrôle à la source, à moins de ne jamais , du tronc, et très rarement à une branche privé, YMMV
- Si vous avez temporairement commenté quelque chose ou cassé quelque chose à des fins de débogage, de ne pas vérifier le code jusqu'à ce que vous restaurez le code de sa forme correcte
Certains disent il y a d'autres catégories, telles que temporairement retiré de code, ou un différentiel, mais incomplète amélioration qui comprend une petite quantité de commenté de code que de la documentation de ce qui vient après, ou un très court (idéalement 1 ligne) extrait de a commenté le code de montrer quelque chose qui ne doit jamais être de nouveau ajoutés. Commenté code doit TOUJOURS être accompagné d'un commentaire qui explique pourquoi il est commenté (et pas seulement supprimé) et donne la durée de vie prévue de l'commenté code. Par exemple, "Le code suivant fait plus de mal que de bien, donc, est commenté, mais doit être remplacé avant la libération XXX."
Un commentaire comme ci-dessus est appropriée si vous délivrer un correctif pour arrêter un client de saignements et que vous n'avez pas la possibilité immédiate de trouver l'ultime correctif. Après la remise du correctif, le commentaire le code est un rappel que vous avez encore quelque chose à corriger.
Quand dois-je vérifier dans commenté code? Un exemple est lorsque je suis provisoirement retirer quelque chose que je pense qu'il y a une forte probabilité devra être ré-ajoutée dans un futur proche, dans une certaine forme. Le commentaire le code est là pour servir comme un rappel direct que c'est incomplet. Bien sûr, l'ancienne version est en contrôle de code source et vous pouvez simplement utiliser un FIXME commentaire comme un indicateur que quelque chose de plus est nécessaire. Cependant, parfois (souvent) du code est le meilleur commentaire.
Aussi, lorsqu'un bug est corrigé par la suppression d'une ligne (ou, plus rarement, deux lignes) du code, je vais parfois simplement en commentaire la ligne avec un commentaire à jamais ré-activer ce code avec une raison à cela. Ce genre de commentaire est clair, direct et concis.
Rex M a dit: 1) vérifier Uniquement dans la fonctionnalité complète, 2) [Si] la tâche est trop grande diviser en plus petites tâches complétées.
En réponse: Oui, c'est l'idéal. Parfois, aucune de ces options n'est possible que lorsque vous travaillez sur la production de code et à avoir, immédiatement, le problème essentiel à résoudre. Parfois, pour accomplir une tâche, vous avez besoin de mettre une version de code dans le champ pendant un certain temps. Cela est particulièrement vrai pour la collecte de données à des modifications de code lorsque vous essayez de trouver la cause racine du problème.
Pour le cas précis de posées à propos de la question plus générale ... tant que le développeur est en train de vérifier commenté de code dans une direction que personne ne va voir, mais que les développeurs (et peut-être quelqu'un le développeur est de collaborer avec d'), il ne peu de mal. Mais que développeur doit (presque) jamais de livrer le code dans le tronc ou un équivalent. Le tronc doit toujours construire et devrait toujours fonctionner. Livraison inachevé code de la route est presque toujours une très mauvaise idée. Si vous laissez un développeur de vérifier inachevé ou code temporaire dans une direction, alors vous devez compter sur les développeurs à ne pas oublier de frotter le code avant de livrer dans le tronc.
Pour préciser, en réponse à des commentaires à d'autres réponses, si le code est commenté et vérifié, je m'attends à ce que le code de la fonction si décommenté les gouttes avec la longueur de temps que le code a été commenté. Évidemment, le refactoring ne seront pas toujours d'inclure des commentaires dans leur refactoring. Presque toujours, si je mets commenté code en production, le code est là pour servir comme un cadre raffiné, commentaire, quelque chose de plus spécifique que la prose, que quelque chose doit être fait. Il n'est pas quelque chose qui devrait avoir une longue vie.
Enfin, si vous pouvez trouver commenté de code dans chaque fichier source, puis quelque chose est faux. La livraison a commenté le code dans le tronc pour toute raison devrait être un événement rare. Si cela se produit souvent, il devient l'encombrement et perd de sa valeur.