Sobes.tech
Middle+

Hoe ging je om met situaties waarin je het niet eens was met de beoordeling van de code review?

sobes.tech AI

Antwoord van AI

Wanneer er meningsverschillen ontstaan bij de beoordeling van een code review, pas ik de volgende aanpak toe:

  1. Bestudeer zorgvuldig het commentaar van de reviewer: Ik probeer de hoofdoorzaak van hun opmerking en de suggestie voor verbetering te begrijpen. Het is mogelijk dat ik iets over het hoofd heb gezien of dat hun standpunt gebaseerd is op een andere ervaring.

  2. Analyseer mijn positie: Ik herzie mijn oorspronkelijke beslissing en onderbouw waarom ik voor die aanpak heb gekozen. Het is belangrijk om mijn argumenten duidelijk te formuleren.

  3. Bespreek de opmerking direct: In plaats van passief oneens te zijn, start ik een discussie met de reviewer. Dit kan een synchron communicatie via een berichtendienst, een vergadering of een opmerking in het code review systeem zijn. Mijn doel is niet om te "winnen" in het debat, maar om tot een optimale oplossing te komen.

  4. Stel alternatieve oplossingen voor: Als mijn oplossing niet bevredigend is, ben ik bereid andere opties te overwegen die door de reviewer worden voorgesteld of gezamenlijk een nieuwe aanpak te ontwikkelen die rekening houdt met beide standpunten.

  5. Indien nodig, betrek ik een derde partij: Als na discussie geen consensus wordt bereikt, kan ik een ander teamlid of teamleider raadplegen voor een onafhankelijk oordeel.

Voorbeeld van een discussie in het code review systeem:

// Mijn opmerking bij de opmerking
// Hallo! Bedankt voor de review. Ik begrijp je standpunt over het gebruik van this.findViewById.
// Ik heb deze aanpak gekozen vanwege prestatieoverwegingen, omdat de view-hiërarchie hier klein is.
// Kun je uitleggen waarom je in dit geval het gebruik van ViewBinding aanbeveelt?

Voorbeeld van een discussie als de reviewer een optimalisatie voorstelt die als overdreven wordt beschouwd:

Ik zou de gegevens in tabelvorm presenteren, waarbij ik de impact van de voorgestelde optimalisatie op de prestaties in dit specifieke geval vergelijk met de tijd die nodig is voor de implementatie.

Optimalisatie Potentiële prestatieverbetering Implementatietijd
Oorspronkelijke oplossing Basis 0
Voorgestelde optimalisatie Minimaal (ongeveer 1-2 ms) 1 uur

Uiteindelijk is mijn belangrijkste doel om de kwaliteit van de code te verbeteren en deze beter te maken, niet om mijn standpunt te verdedigen. Ik sta open voor constructieve kritiek en ben bereid mijn beslissing te wijzigen als overtuigende argumenten worden gepresenteerd.