Kortfattat skulle refaktorisering kunna beskrivas som att man skriver om kod till att göra samma sak som tidigare. Att lägga tid på att skriva om något som redan fungerar låter inte speciellt positivt ur ett kostnadsperspektiv. Men refaktorisering är viktig och innebär så mycket mer än att bara skriva om.
Programmering är ett hantverk som styrs av tid, kunskap och erfarenhet
Programmering är ett hantverk och kan på samma sätt som vilket annat hantverk som helst resultera i bättre och sämre kvalite. Kvaliteten beror på flera faktorer där tid, kunskap och erfarenhet kan vara faktorer med högst påverkan. Ibland kan tidsbrist innebära att man får göra kompromisser i koden och begränsade kunskaper och erfarenhet kan ge dålig eller slarvigt utförd kod.
En bra arkitektur bäddar för att enklare få in ny funktionalitet i befintliga system
Många system utvecklas kontinuerligt, allt ifrån att nya funktioner läggs till eller befintliga ändras till rena buggfixar. Oavsett om det är felsökning för en rättning som ska göras eller en ändring som ska implementeras så är det tidsbesparande om den befintliga koden är bra strukturerad, välskriven och genomtänkt, vilket gör det enklare att hitta och förstå. En bra arkitektur bäddar också för att enklare få in ny funktionalitet som passar i det befintliga systemet på ett snyggt sätt.
Städa upp och förbättra kod med en rad fördelar som resultat
Så vad innebär då refaktorisering? Refaktorisering görs kontinuerligt och innebär att man städar upp och förbättrar koden då man ser en vinst i ökad tydlighet, förbättrad arkitektur för kommande uppdateringar, minskad onödig komplexitet och ökad stabilitet. Dessa små och återkommande åtgärder är en mycket viktig del för att kostnad för underhåll eller uppdateringar inte ska öka då komplexiteten växer när nya funktioner implementeras.
Har du frågor om kod, programmering eller annat inom systemutveckling? Hör av dig till mig! I min tidigare artikel berättar jag om flexible design vs statisk design, läs den gärna.