Centrum wiedzy o technologiach i pracy w IT

Legacy code. Nikt go nie lubi, ale każdy się z nim zetknie

Legacy code to jedno z pojęć, na wspomnienie którego programiści dostają wysypki. A jeśli nie, to chociaż komentują wieloma niepochlebnymi stwierdzeniami. Dlaczego? Czym charakteryzuje się taki kod i jak sobie z nim radzić?

Legacy code – o co z nim chodzi?

Definicja legacy code jest o tyle problematyczna, że może oznaczać różne rzeczy. Zwykle opisuje się go jako kod zastany lub odziedziczony, czyli taki, który działa już od jakiegoś czasu. Michael Feathers w książce pt. „Working Effectively with Legacy Code” opisuje go jako kod, który nie jest poddawany testom. Podczas rozwijania kodu konieczne jest testowanie go, aby sprawdzić, jak działa po wprowadzeniu zmian. Brak testów może skutkować bałaganem w strukturze, a ostatecznie kod przestanie działać.

Istnieją też programiści, którzy twierdzą, że każdy kod będzie kiedyś kodem odziedziczonym. Rozbudowywanie kodu może tworzyć trudności z utrzymywaniem go, w efekcie po jakimś czasie tworzy się z niego zlepek różnych elementów, który niekoniecznie jest optymalny.

Sprawdź: Workation

Jak utrzymywać legacy code?

Pod warunkiem zachowania sprawności kodu, nie warto go zmieniać. Nie ulega jednak wątpliwości, że zapoznanie się z takim kodem będzie wymagało czasu. Jak się za to zabrać?

1. Przeklikaj legacy code

Nie ma innej metody na to, aby zapoznać się z kodem niż po prostu przeklikać wszystkie jego elementy i debugować zastane błędy. Aby zachować sprawność tego, co obecnie działa, warto przekopiować kod do osobnego projektu i tam dokonywać zmian oraz testów, aby zweryfikować co działa dobrze.

2. Stwórz dokumentację działających zmian

Po weryfikacji działania kodu, twórz dokumentację dotyczącą działających zmian. Każdy fragment wiedzy o kodzie będzie cenną wskazówką do jego rozbudowywania i testowania.

Zobacz: .NET Developer

3. Przeprowadzaj testy

Na podstawie zgromadzonej wiedzy oraz poprawek, które udało się wdrożyć, zacznij przeprowadzać testy. Po pierwsze po to, aby zweryfikować nowe zmiany, a po drugie po to, aby stopniowo przetestować cały kod. Dzięki temu nanoszenie zmian będzie nie tylko łatwiejsze, ale też bardziej bezpieczne.

4. Ulepsz kod w miarę możliwości

Zadbaj o lepszą strukturę kodu bez zmiany jego działania, a w przypadku wprowadzania nowych funkcjonalności staraj się, aby legacy code powoli stawał się czystym kodem.

Total
0
Shares
_podobne artykuły