Quand je fais des revues de code, j’ai tendance à avoir un monologue en cours d’exécution, donc si je comprends ce que je lis, il y aura beaucoup de "Ok, je vois ce que ça fait .. Bon, ça relie à ça et appelle ça, ça va… et cette pièce dépend de ces deux-là ça va. ".
Je pense que de cette façon, ce n'est pas "oo la la c'est tellement génial!", Cela pourrait être un code ennuyeux parfaitement trivial, mais entendre quelqu'un d'autre analyser et montrer que la compréhension de ce que vous avez écrit est une forme de rétroaction positive en soi, le retour étant "Ce code a du sens", lorsque je tombe sur des parties que je ne comprends pas, je demande des explications et lorsque je le comprends, je m'écrie "Ah, je l'ai eu".
Je pense que ce simple transfert de compréhension est un éloge à un autre ingénieur car nous souhaitons tous que notre code soit compris par d'autres, cela donne une forme de validation implicite.
Cela dit, si vous voyez des parties du code qui ont des caractéristiques bonnes ou positives (même un code trivial ennuyeux peut être bon s'il s'agit de la forme minimale d'elle-même), j'ai tendance à énoncer ces caractéristiques, encore une fois, je ne les attribue pas comme "Wow!" génial!" autant que "je vois que ceci est une implémentation minimale" ou "Ok, cet algorithme complexe a beaucoup de commentaires", concentrez-vous sur les attributs du code et non sur le bonté ou le mal inhérent.
Chaque fois que vous attribuez le "bien" ou le "mal" à un code lors d'une révision de code pour éviter que l'ingénieur ne se sente mépris ou tenu sur un socle, ne dites pas que quelque chose est bon ou mauvais, mais parlez plutôt de la cause et de l'effet de leur code.
"Ok cette partie a du sens, ah il y a un nombre magique ici, le sens de cette valeur pourrait ne pas être bien compris par le prochain ingénieur qui toucherait cela"
"Je vois que vous avez un conteneur DI ici ok donc vous aurez un couplage lâche avec ce référentiel"
"Ah, il y a un dictionnaire statique ici, si plusieurs threads le touchent, nous pourrions rencontrer certaines conditions de concurrence"
Remarquez, je ne dis pas que tout soit bon ou mauvais, mais si l'ingénieur doit le changer ou non, il sera compris par l'ingénieur dont le code est en cours de révision. Évidemment, vous devez mettre fin à la révision du code avec un yay ou un nay, mais accumuler ces déclarations au fil de celle-ci adoucira les nay car des explications ont déjà été données sous la forme de déclarations de cause à effet lorsque vous leur dites: "J'aimerais bien ces nombres magiques fixés avant de vérifier ceci dans ".