Eh bien, j'ai tendance à faire des commentaires dans plusieurs domaines généraux et chaque type peut être traité différemment.
Modifications requises. Ce sont les types de changements où je souligne que le code ne répond pas aux exigences fonctionnelles ou ne fonctionne pas et doit être corrigé avant d'être poussé en production. J'ai tendance à être très simple dans ces commentaires. Les exigences disent ..., cela ne fait pas ça. Ou cela échouera si la valeur envoyée est nulle (surtout lorsque vous savez que ce cas se produira en fonction des données qui seront envoyées).
Ensuite, il y a les commentaires «cela fonctionne, mais voici une meilleure façon d'accomplir cela». Vous devez être plus doux dans ces domaines et faire plus d'argument de vente. Je pourrais dire que je le ferais à la place, car il est susceptible d'être plus performant (je passe généralement en revue le code SQL où les performances sont très importantes). Je pourrais ajouter quelques détails sur la raison pour laquelle c'est un meilleur choix, tout comme je le ferais pour répondre à une question sur Stack Overflow. Je pourrais souligner qu'il n'est pas nécessaire de changer cela pour ce code particulier, mais de considérer le changement dans le codage futur. Fondamentalement, avec ces types de commentaires, j'éduque les personnes ayant moins d'expérience sur ce qui pourrait mieux fonctionner.
Ensuite, il y a les commentaires "ça marche mais on fait les choses comme ça". Ces modifications seront probablement également nécessaires. Cela inclurait des commentaires sur les normes de l'entreprise ou l'architecture que nous attendons d'eux. Je voudrais faire référence à la norme ou au document d'architecture et leur dire de se conformer à la norme. Le commentaire serait simple mais neutre, il manque ainsi et ainsi ou les noms de variables ne sont pas conformes à notre standard de nommage ou à des choses similaires. Par exemple, notre architecture pour les packages SSIS nécessite que le package utilise notre base de données de métadonnées pour stocker des informations particulières sur le package et nécessite une journalisation particulière. Le package fonctionnerait sans ces éléments, mais ils sont nécessaires pour des raisons d'entreprise (nous devons par exemple signaler le taux de réussite des importations ou analyser les types d'erreurs que nous recevons.)
La seule chose que vous ne voulez pas faire dans les commentaires de révision de code est d'attaquer personnellement quelqu'un. Cela peut aussi être utile si vous trouvez quelque chose qu'ils ont bien fait et que c'est bon. Parfois, j'apprends quelque chose de nouveau à partir d'une revue de code et si je le fais, je le dis à la personne.