Je pense que les TODO
commentaires, dans une certaine mesure, ont du sens. En particulier si vous travaillez de manière itérative (comme cela est courant dans les magasins agiles et TDD), il y aura des choses dont vous vous rendrez compte qui seront nécessaires bientôt, mais que vous ne voulez pas faire le détour pour les mettre en œuvre immédiatement.
Ce qui devient moche, c'est quand de tels commentaires restent dans la base de code. Bien que vous travailliez activement sur une fonctionnalité, vous pouvez la laisser, mais dès que vous vous apprêtez à la compléter, vous devez vous concentrer sur son élimination. Si vous ne souhaitez pas les remplacer par des codes appropriés, utilisez au moins les fonctionnalités correspondantes. Pour emprunter l'exemple de @ JoonasPulakka, où le code dit initialement
ConnManager.getConnection("mydatabase"); // FIXME: DB name should be configurable
vous pourriez changer cela en quelque chose comme
ConnManager.getConnection(GetDatabaseName());
avec, pour le moment, GetDatabaseName () étant un stub qui retourne simplement la même chaîne que celle avec laquelle vous avez commencé. De cette façon, il y a un point clair pour l'expansion future, et vous savez que toute modification apportée sera reflétée partout où le nom de la base de données est nécessaire. Si le nom de la base de données est même modérément générique, cela peut représenter une amélioration considérable de la facilité de maintenance.
Personnellement, j’utilise mon propre mot-clé au lieu d’être strictement TODO
, bien que l’intention reste la même: marquer les éléments qui, je le sais, devront être revisités. De plus, avant de vérifier mon code, je fais une recherche globale du code source pour ce mot clé, choisi de telle sorte qu'il ne devrait normalement pas figurer dans le code. Si c'est trouvé, je sais que j'ai oublié quelque chose, et peut aller de l'avant et le réparer.
Pour ce qui est d'inclure le nom / la signature du programmeur avec le commentaire, je pense que c'est excessif si vous avez un système de contrôle de version du code source (c'est bien ça , non?). Dans ce cas, sa fonction de blâme vous indiquera qui a ajouté le commentaire ou, plus précisément, qui a enregistré en dernier un changement qui a touché le commentaire. Par exemple, dans Visual Studio, cela est facilement accompli en utilisant la fonctionnalité "Annoter" trouvée parmi les fonctionnalités de contrôle de source.