w dniu
dev
devops
platform_engineering
security
- Pobierz link
- X
- Inne aplikacje
Refaktoryzacja kodu to proces wprowadzania zmian w projekcie/programie, w wyniku których nie zmienia się funkcjonalność, lecz utrzymuje się odpowiednią, wysoką jakość organizacji systemu. Celem refaktoryzacji jest poprawa kodu i jego struktury, a nie wytwarzanie nowej funkcjonalności.
Refaktoryzacja ma na celu rozwiązanie konkretnych problemów i przyniesienie korzyści, takich jak:
Lista korzyści jest długa i nieograniczona. Przed przystąpieniem do refaktoryzacji ważne jest określenie celu, jaki chcemy osiągnąć.
Podstawowym krokiem do utrzymania dobrze zorganizowanego kodu jest codzienne refaktoryzowanie. Zgodnie z koncepcją Test-Driven Development (TDD), cykl wytwarzania kodu składa się z trzech kroków: red (tworzenie testów jednostkowych, które nie przechodzą), green (implementacja kodu produkcyjnego, który pozwala na przejście testów) oraz refactor (poprawa kodu w celu jego ulepszenia).
Codzienne refaktoryzowanie charakteryzuje się tym, że:
Przykłady metod stosowanych w codziennym refaktoryzowaniu to m.in. zmiana nazwy (Rename), zmiana sygnatury (Change Signature), wyodrębnianie metod (Extract Method), wstawianie kodu inline (Inline method), wprowadzanie stałych (Introduce Constant), wprowadzanie pól (Introduce Field), wprowadzanie parametrów (Introduce Parameter), wprowadzanie zmiennych (Introduce Variable) oraz bezpieczne usuwanie (Safe Delete).
Kolejnym krokiem jest refaktoryzacja strategiczna, która dotyczy większych zmian w systemie, takich jak modyfikacja większej liczby klas, modyfikacja całego modułu lub nawet wydzielenie osobnego mikroserwisu.
W refaktoryzacji strategicznej rozważane są zmiany, które mają na celu dostosowanie kodu do nowych wymagań biznesowych lub technologicznych. Przykłady takich zmian to migracja do nowoczesnych frameworków lub języków, zmiana architektury systemu, wprowadzenie wzorców projektowych, rozdzielenie odpowiedzialności między klasy lub moduły oraz usunięcie zbędnego lub przestarzałego kodu.
Refaktoryzacja strategiczna wymaga więcej czasu i planowania, ale przynosi większe korzyści w dłuższej perspektywie. Jest częścią zarządzania projektem informatycznym.
Refaktoryzacja kodu jest ważnym elementem tworzenia oprogramowania, który pozwala utrzymać aplikacje w dobrej kondycji i umożliwia ich rozwój. Codzienne refaktoryzowanie oraz refaktoryzacja strategiczna są dwa rodzaje refaktoryzacji, które mają swoje miejsce w procesie tworzenia oprogramowania. Ważne jest, aby regularnie i systematycznie wykonywać codzienne refaktoryzowanie, a także planować i przeprowadzać refaktoryzację strategiczną w celu dostosowania kodu do nowych wymagań.
Pamiętajmy, że refaktoryzacja ma na celu poprawę jakości kodu i organizacji systemu, co przekłada się na efektywność i łatwiejsze rozwijanie aplikacji. Przed przystąpieniem do refaktoryzacji warto określić oczekiwane korzyści i realistyczny zakres czasowy dla ich osiągnięcia.
Komentarze
Prześlij komentarz