Indholdsfortegnelse:
Definition - Hvad betyder teknisk gæld?
Teknisk gæld er et koncept i programmering, der afspejler det ekstra udviklingsarbejde, der opstår, når kode, der er let at implementere på kort sigt, anvendes i stedet for at anvende den bedste samlede løsning.
Teknisk gæld er ofte forbundet med ekstrem programmering, især i forbindelse med refactoring. Det vil sige, det indebærer, at der er behov for omstrukturering af eksisterende kode (refactoring) som en del af udviklingsprocessen. Under denne linje af tænkning refactoring er ikke kun et resultat af dårligt skrevet kode, men er også gjort baseret på en voksende forståelse af et problem og den bedste måde at løse dette problem.
Teknisk gæld kan også kaldes designgæld.
Techopedia forklarer teknisk gæld
Udtrykket blev opfundet af Ward Cunningham, en programmør, der også er kendt for at udvikle den første wiki. Teknisk gæld er en metafor, der svarer til softwareudvikling til finansiel gæld. Forestil dig, at du har et projekt, der har to mulige muligheder. Den ene er hurtig og nem, men vil kræve ændringer i fremtiden. Den anden har et bedre design, men vil tage mere tid at implementere. I udviklingen er frigivelse af kode som en hurtig og nem tilgang som at pådrage sig gæld - det kommer med renteforpligtelsen, som for teknisk gæld kommer i form af ekstra arbejde i fremtiden. At tage sig tid til refactor svarer til at nedbetale hovedstolen. Selvom dette tager tid på kort sigt, reduceres det også fremtidige rentebetalinger.
Ward Cunningham beskriver dette koncept i 1992 som følger:
"Forsendelse af førstegangskode er som at gå ind i gæld. Lidt gæld fremskynder udviklingen, så længe den straks betales tilbage med en omskrivning. Objekter gør omkostningerne ved denne transaktion acceptabel. Faren opstår, når gælden ikke tilbagebetales. Hvert minut brugt på ukorrekt kode tæller som renter på den gæld. Hele ingeniørorganisationer kan bringes til en stand-still under gældsbelastningen af en ikke-konsolideret implementering, objektorienteret eller på anden måde. "
Begrebet betyder ikke, at gæld aldrig bør afholdes. Ligesom gearing kan hjælpe en virksomhed, når den bruges korrekt, kan en hurtig løsning betyde en hurtigere tid at markedsføre inden for softwareudvikling. Derudover er teknisk gæld ikke kun dårlig kode. Dårlig kode er dårlig kode, og teknisk gæld kan være resultatet af arbejde med gode programmerere under urealistiske projektbegrænsninger.
