Obsah

Refaktoring kódu

Refaktoring je systematický proces vylepšování designu kódu bez přidávání nových funkcí. Cílem je učinit kód čistším (Clean Code), čitelnějším a snadněji udržitelným. Jak řekl Martin Fowler: „Jakýkoli blbec může napsat kód, kterému rozumí počítač. Dobří programátoři píší kód, kterému rozumí lidé.“

1. Kdy je refaktoring potřeba? (Code Smells)

Příznaky, že kód vyžaduje refaktoring, se v komunitě označují jako „Code Smells“ (zápachy kódu). Mezi nejčastější patří:

—

2. Základní techniky refaktoringu

Existují desítky popsaných technik, zde jsou ty nejpoužívanější:

Extract Method (Extrakce metody)

Část kódu z dlouhé metody se vyjme a vytvoří se z ní nová, samostatná metoda s výstižným názvem.

Rename Variable/Method (Přejmenování)

Změna názvu proměnné nebo metody tak, aby jasně vyjadřovala svůj účel.

Inline Method (Vložení metody)

Opak extrakce. Pokud je tělo metody stejně jasné jako její název, metoda se zruší a kód se vloží přímo tam, kde se volala.

Move Method (Přesun metody)

Pokud metoda více komunikuje s jinou třídou než s tou, ve které se nachází, přesune se do té druhé.

—

3. Zlaté pravidlo: Testování

Refaktoring by se nikdy neměl provádět bez sady automatizovaných testů (Unit testů).

1. Máte funkční kód s testy, které procházejí (Green).
2. Provedete malou úpravu (Refaktoring).
3. Spustíte testy. Pokud stále procházejí, vnější chování zůstalo zachováno.
4. Pokud testy selžou, vrátíte změnu zpět.

—

4. Přínosy refaktoringu

—

5. Refaktoring vs. Optimalizace

Je důležité tyto pojmy nezaměňovat:


Související články:

Tagy: programming software-engineering refactoring clean-code maintenance