Technický dluh
Technický dluh je břemeno, kterému čelí vývojáři softwaru kvůli starému zdrojovému kódu a architektonickým rozhodnutím. Může se týkat například špatně napsaných funkcí nebo frameworků, které již nejsou podporovány. V některých případech lze technický dluh vyřešit přepsáním kódu, zatímco v jiných mohou vývojáři potřebovat přepsat celé programy.
Jak se vyhnout technickému dluhu
Nejlepším způsobem, jak technický dluh řešit, je vůbec nedopustit jeho hromadění. Začíná to návrhem programu s dlouhodobým plánem. Moudrý softwarový inženýr navrhne aplikaci pro budoucnost, nejen pro současný stav softwaru a hardwaru. Výběr „future-proof“ programovacích jazyků a spolehlivých frameworků jsou dvě důležitá rozhodnutí v procesu návrhu architektury.
Aby se předešlo technickému dluhu, je také nutné dodržovat správné postupy při psaní kódu. Pokud se například stejná logika v programu opakuje vícekrát, měla by být sjednocena do jediné třídy nebo funkce. Jinak bude v budoucnu obtížnější každou instanci najít a aktualizovat, zejména pokud na projektu pracují noví vývojáři. Komentování kódu je také nezbytné pro jeho budoucí kontrolu a aktualizaci.
Řešení technického dluhu
Dva hlavní způsoby řešení technického dluhu spočívají v přepsání částí kódu nebo v zahájení práce od začátku. Nejlepší postup závisí na velikosti projektu a množství technického dluhu.
1. Přepsání kódu
Přepsání neboli „refaktorování“ kódu je nejběžnějším způsobem řešení technického dluhu. Seniorní vývojář může například zkontrolovat kód napsaný juniorním vývojářem a najít způsoby, jak optimalizovat výkon. Může být také nutné aktualizovat zastaralé funkce, aby kód mohl běžet na novější platformě. V některých případech může být nutné přepsat velké části kódu, aby fungovaly s novým API. Tyto typy aktualizací jsou ve světě programování běžné a patří mezi důvody, proč vývojáři vydávají nové verze.
2. Zahájení práce od začátku
Pokud je množství technického dluhu dostatečně velké, může aktualizace kódu zabrat více času než napsání nového programu od začátku. V některých případech může být nutné aplikaci znovu naprogramovat v novém programovacím jazyce, který je kompatibilní s moderními kompilátory softwaru. Přestavba aplikace od začátku je významná investice, ale může přinést další výhody. Nová aplikace může například využívat nejnovější hardwarové technologie a moderní prvky uživatelského rozhraní.
Otestujte své znalosti