code review

/ˈkəʊd rɪˌvjuː/zelfstandig naamwoord

Een code review is de beoordeling van een codewijziging door een andere ontwikkelaar. Die controleert onder meer de werking, leesbaarheid en onderhoudbaarheid voordat de wijziging wordt samengevoegd.

Een collega ontdekte tijdens de code review dat de nieuwe toegangscontrole één gebruikersrol oversloeg.

Bij een code review leest een ontwikkelaar de voorgestelde wijziging van een collega. Het doel is om fouten en onduidelijke keuzes te vinden voordat de code onderdeel wordt van de gedeelde Woordenboek · In het kortcodebaseEen codebase is de verzameling broncode waaruit een softwareproduct of onderdeel wordt gebouwd en onderhouden.Lees meer. Tegelijk helpt de beoordeling om afspraken over stijl, architectuur en veiligheid consequent toe te passen.

Hoe verloopt de beoordeling?

De auteur biedt een afgebakende wijziging meestal aan in een Woordenboek · In het kortpull requestEen pull request is een voorstel om wijzigingen uit een branch te beoordelen en samen te voegen met een andere branch. Teamleden kunnen de code bespreken en controleren voordat deze wordt opgenomen.Lees meer. De reviewer bekijkt het verschil met de bestaande code en leest genoeg omliggende code om de gevolgen te begrijpen. Daarbij let de reviewer bijvoorbeeld op logica, randgevallen, tests, naamgeving en de aansluiting op bestaande onderdelen.

Vragen en opmerkingen worden bij de betreffende regels geplaatst. De auteur kan uitleg geven, code aanpassen of onderbouwen waarom een suggestie niet wordt overgenomen. Na eventuele nieuwe versies keurt de reviewer de wijziging goed of vraagt om verdere aanpassingen. Kleine wijzigingen zijn doorgaans beter te beoordelen, omdat hun bedoeling en gevolgen sneller te overzien zijn.

Menselijke controle naast automatische tests

Automatische tests, Woordenboek · In het kortlintingLinting is het automatisch controleren van broncode op mogelijke fouten en afwijkingen van afgesproken coderegels, zonder de applicatie uit te voeren. De tool die deze controle doet, heet een linter.Lees meer en beveiligingsscans kunnen vaste regels controleren en bekende problemen signaleren. Een code review vult die controles aan met menselijke beoordeling. Een reviewer kan bijvoorbeeld zien dat een oplossing technisch werkt, maar slecht aansluit op het domein of onnodig ingewikkeld is.

Een goedkeuring betekent niet dat de reviewer alle verantwoordelijkheid overneemt of dat de code foutloos is. De auteur blijft verantwoordelijk voor de wijziging. De review voegt een extra controle toe en verspreidt kennis over de gemaakte keuzes binnen het team.