Clean code is code die geschreven is om eerst door mensen gelezen te worden, niet alleen door de machine begrepen. Hij gebruikt heldere namen, blijft consistent en vermijdt slimme trucs die een uur kosten om te ontcijferen. De software gedraagt zich hetzelfde, maar clean code is veel goedkoper om gedurende zijn leven te onderhouden.
Een goede vergelijking is een goed georganiseerde keuken. Twee keukens kunnen hetzelfde gerecht maken, maar in de ene zijn de messen gelabeld, staan de kruiden op volgorde en kan iedereen meehelpen. In de andere ligt alles kriskras in willekeurige lades en weet alleen de eigenaar waar dingen zijn. Rommelige code is die tweede keuken, en de rekening komt als technische schuld elke keer dat iemand nieuw erin moet werken. Clean code blijft behapbaar, en dat houdt ook refactoren later overzichtelijk.
In de praktijk gaat het om kleine, concrete gewoontes. Een functie die berekenBtwTotaal heet vertelt je wat hij doet; een die verwerk heet niet. Een functie die één ding doet is makkelijk te testen en hergebruiken; een die zes dingen doet is een doolhof. Dode code en een verwarrende comment weggooien is vaak meer waard dan iets toevoegen. Niets hiervan is slim, en dat is precies de bedoeling: clean code is met opzet saai.
De meeste teams beschermen clean code via deze gewoontes plus regelmatige code review, waar een tweede paar ogen de stukken vangt die voor de schrijver logisch waren en voor niemand anders. Het is een standaard die je elke dag aanhoudt, geen opruimactie die je voor later plant, want de rommel voorkomen is veel goedkoper dan hem eruit graven.
Bij TopDevs houden we ons werk aan een clean-code-standaard zodat het systeem van een klant begrijpelijk blijft, ook jaren later als een andere ontwikkelaar het oppakt.