FAGPORTALEN

Teknisk gæld og refaktorering

It A · STX · A-niveau · Systemudvikling og DevOps

💻 Teknisk gæld og refaktorering

Teknisk gæld (Ward Cunningham 1992) = metafor for kortsigtede kode-løsninger der skaber ekstra arbejde senere. Som finansiel gæld: kort-sigt fordel, men "renter" (vedligeholdelse) akkumulerer.

Typer af teknisk gæld:

1.

Bevidst og uundgåelig: vi VED at koden er suboptimal men har ikke tid nu.

2.

Ubevidst: vi tror det er godt nok.

3.

Strategisk: bygget til hurtig MVP.

4.

Akkumuleret: gammel kode der ikke er opdateret.

Symptomer på teknisk gæld: bugs der genopstår efter "fix", små ændringer kræver store omskrivninger, nye udviklere kæmper med onboarding, performance-problemer, mistillid til kodebase, "magisk" kode (fungerer men ingen ved hvorfor).

Refaktorering (Martin Fowler 1999): forbedring af kodens INTERNE struktur uden at ændre dens EKSTERNE adfærd. Kerne-bog: Refactoring: Improving the Design of Existing Code.

Refactoring-mønstre: extract method (lange funktioner brydes op), rename variable (klare navne), replace conditional with polymorphism, introduce parameter object.

DRY-princippet (Don't Repeat Yourself): kopier-paste-kode er teknisk gæld.

YAGNI-princippet (You Ain't Gonna Need It): byg ikke hvad du ikke har brug for.

SOLID-principperne (Robert C. Martin / Uncle Bob): Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion.

Code smells: tegn på dårlig kode. Lange metoder, store klasser, dubleret kode, mange parametre, "feature envy". Clean Code (Robert Martin 20

Læringsmål

Sådan kan du arbejde med emnet

Arbejd iterativt med prototyper og dokumentation. Test, evaluér og dokumentér.

Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.

Prøv Fagportalen gratis

🤖 Denne side er skrevet med kunstig intelligens og fagligt gennemgået af Fagportalen, som har det redaktionelle ansvar. Finder du en fejl, så skriv til support@fagportalen.dk.