Praca z kodem odziedziczonym (Legacy Code)
Czas trwania szkolenia:2 dni (16h)
Kod kursu:LEGACY
Poziom zaawansowania:
Szkolenie na zamówienie
Szkolenie dostosowane do potrzeb Twojego zespołu. Dostępne wyłącznie na zamówienie.
- Dostosowany program
- Indywidualna wycena
- Dowolny termin
O szkoleniu Praca z kodem odziedziczonym (Legacy Code)
W cenie otrzymasz:
- Materiały szkoleniowe
- Certyfikat ukończenia szkolenia
- W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Dla kogo?
- Szkolenie adresowane do programistów pracujących na co dzień z kodem odziedziczonym (Legacy Code) lub kodem drogim w utrzymaniu (w którym wprowadzenie drobnych zmian wymaga wiele wysiłku i/lub skutkuje pojawieniem się wielu błędów)
Wymagania
- Uczestnik szkolenia powinien mieć podstawowe doświadczenie w programowaniu obiektowym (preferowanym językiem jest Java), testowaniu oraz refaktoryzacji
Zalety
- Szkolenie prowadzone jest przez trenerów, którzy mają duże doświadczenie w pracy z kodem odziedziczonym. Przeprowadzają oni krok po kroku uczestników przez tajniki pracy z LC
- Zdecydowana przewaga zajęć warsztatowych pozwala zmierzyć się z nietrywialnymi przykładami LC (pod bacznym okiem trenera), nabyć praktyczne umiejętności refaktoryzacji i testowania trudnego kodu
- Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
- Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
- Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how
Cele szkolenia
- Zapoznanie uczestników z zagrożeniami oraz problemami wynikającymi z pracy z kodem odziedziczonym oraz sposobu ich przezwyciężenia
- Nauka pracy i dokonywania zmian w Legacy Code tak, aby zminimalizować ryzyko wprowadzenia błędów
- Poznanie technik refaktoryzacji, pozwalających stopniowo podnosić jakość kodu odziedziczonego
Program
Wprowadzenie
- Czym jest Legacy Code
- Ryzyka wynikające z pracy z Legacy Code
- Legacy Code a Technical Debt
Metody pracy z Legacy Code
- Edit and Pray
- Cover and Modify
Refaktoryzacja
- Czym jest refaktoryzacja
- Kiedy (nie) refaktoryzować
Przygotowanie do refaktoryzacji
- Testy zorientowane na implementację
- Testowanie modyfikowanego kodu
- Testowanie, a kompromisy w kodzie
Refaktoryzacja metod
- Identyfikacja problemów
- Zmiana nazw
- Wydzielanie metod i klas
- Wprowadzanie klas domenowych
- Wykorzystanie IDE
- Testowanie kodu
Refaktoryzacja klas i zależności
- Identyfikacja problemów
- Wprowadzanie interfejsów
- Eliminacja interfejsow i abstrakcji
- Wykorzystanie wzorców kreacyjnych
- Testowanie kodu
Refaktoryzacja modułów
- Identyfikacja problemów
- Definiowanie celu
- Anti-Corruption Layer
- Strangler Pattern
- Testowanie kodu
- Ochrona granic refaktoryzacji