Attributy: id="refaktorizace"
Odkazy:
Co to vlastně je „refaktorizace“? Refaktorizace je proces, kdy malými změnami upravujeme kód tak, aby byl čitšlnější, tedy snáze srozumeitelný člověku.
A co není refaktorizace? Refaktorizace zcela jistě není programování nových vlastností a rozšiřování funkcionality.
Vždy rozlišujte, jestli právě refaktorizujete, nebo programujete.
Obrázek 57.1. Refaktorizační cyklus:
začínáme s funkčním, testovaným kódem
while je možné zjednodušit kód
vyberte nejhorší problém (smell)
vyberte refaktorizační metodu
aplikujte ji
zkontrolujte testy
end
Pradivdla jednoduchého návrhu:
Obrázek 57.2. TDD/BDD mikrporoces
RED: pište nové testy a kontrolujte že neuspějí
GREEN: opravte kód nejjednodušším (naivním) způsobem, aby testy uspěly
REFACTOR: transformujte kód na nejjednodušší možný (odstraňováním zápachu), který uspokojí všechny testy
Opakujte postup v několikaminutových cyklech
Poprvé něco prostě uděláte/napíšete. Podruhé když programujete podobnou věc prostě zkopírujete předešlý kód. Potřetí, když narazíte na stejný případ, refaktorizujete.