Refaktorování: Porovnání verzí

Smazaný obsah Přidaný obsah
CLuca (diskuse | příspěvky)
Bez shrnutí editace
Řádek 4:
 
== Vznik==
Refaktoring se začal používat mezi programátory ve smalltalku[[smalltalk]]u, což je čistě objektový programovací jazyk, kde existoval první nástroj na refaktoring, později, když již refaktoring byl v povědomí některých programátorů a metody refaktorování jimi byly dostatečně prověřeny, napsal [[Martin Fowler]] za velké pomoci těchto zkušených programátorů knihu ''Refactoring: Improving the Design of Existing Code'', která je dodnes využívána jako základní příručka k poznání a naučení se správného refaktorování, což je dnes neodmyslitelná metoda moderního programování a tím se mohl refaktoring rozšířit do povědomí všech programátorů.
 
== Jak správně refaktorovat ==
Řádek 12:
 
== Kdy refaktorovat ==
[[Martin Fowler]] ve své knize Refaktoring uvádí 22 takzvaných pachů v kódu, které jsou zvěstí toho, že bychom kód měli začít refaktorovat a zároveň uvádí, jaké techniky jsou pro který pach třeba. To ale neznamená, že to tak vždy musí být, samozdřejmě vždy závisí na konkrétní situaci. Já zde nastíním pouze některé pachy v kódu, ty nejzákladnější a většinou i nejčastější, ale pokud se o nich chcete dozvědět více, vřele doporučuji knihu Refaktoring.
 
*Duplicitní kód – pokud najdeme v kódu na více místech stejnou strukturu
Řádek 23:
 
== Zásady refaktoringu==
Při refaktorování nikdy nesmíme zapomenout na metaforu dvou klobouků od [[Kent Beck|Kenta Becka]]: v jednom klobouku přidáváme funkcionalitu a neměníme strukturu, v druhém klobouku měníme strukturu a nepřidáváme funkcionalitu. Můžeme je měnit klidně každých 5 minut, ale vždy musíme vědět, co děláme, tedy jaký klobouk máme na hlavě a nemíchat přidávání funkcionality s refaktoringem.
 
== Refaktoring a vedoucí projektu ==
Řádek 110:
 
== Refaktoring a návrhové vzory ==
Existuje zde vazba mezi refaktoringem a návrhovými vzory a to taková, že vzory vlastně popisují definovaný cíl a naopak refaktorování popisuje způsob jak se k tomuto cíli dostat. Pokud se podíváte na jednotlivé techniky, poznáte již z jejich jména, že mají co dočinění s [[návrhový vzor|návrhovými vzory]], viz vytvořit [[návrhový vzor|šablonovou metodu]], zavést [[návrhový vzor|objekt null]], nahradit konstruktor [[návrhový vzor|tovární metodou]] nebo nahradit kód typu [[návrhový vzor|stavem]] nebo [[návrhový vzor|strategií]].
 
== Podpora refaktoringu==
Některé postupy při refaktorování je možné přesně definovat a zcela automatizovat a dnes je již v moderních vývojových prostředích jako je [[Eclipse]] a další nabízena podpora při refaktoringu. Technika vyjmout metodu z dlouhé metody již tedy není vůbec složitý a prakticky u něj nemusíte ani moc přemýšlet, udělá jej za vás program. Někteří si při psaná kódu ani neuvědomují, že např. změna názvu proměnné je také refaktoring, který za nás provede program, avšak dříve tato změna byla velmi náročná.
 
== Literatura ==
*Refaktoring: zlepšení existujícího kódu - [[Martin Fowler]], nakladatelství [[Grada]], rok vydání 2003, [[ISBN]]: 80-247-0299-1
 
== Externí odkazy ==