Lekce 15 - State
V minulé lekci, Template Method (šablonová metoda), jsme si ukázali návrhový vzor chování Template Method, který definuje kostru algoritmu. Potomci poté kroky implementují.
V dnešním tutoriálu Návrhové vzory GoF si představíme návrhový vzor State. Vzor umožňuje objektu razantně změnit své chování, které je závislé na stavu tohoto objektu. Nahrazuje složité větvení uvnitř objektu a chování pro konkrétní stavy odděluje do samostatných tříd.
State je velmi podobný vzoru Strategy, u kterého ovšem konkrétní strategii, neboli chování dané instancí objektu, určuje klient.
Motivace použití vzoru State
Pokud provádíme nějaký algoritmus, který silně reaguje na vnitřní stav objektu, musíme obvykle uvnitř metod tohoto algoritmu provádět složité větvení.
Příklad použití vzoru
Představme si například, že programujeme AI duchů ve hře Pacman. Ti obvykle mění své chování na pronásledování Pacmana. Po čase se jen tak náhodně procházejí bludištěm a pokud je duch modrý (hráč sebral power-up) tak naopak Pacmanovi utíkají. Duch bude mít např. metody
...konec náhledu článku...
Pokračuj dál
Došel jsi až sem a to je super! Věříme, že ti první lekce ukázaly něco nového a užitečného.
Chceš v kurzu pokračovat? Přejdi do prémiové sekce.
Koupit tento kurz
Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.
- Neomezený a trvalý přístup k jednotlivým lekcím.
- Kvalitní znalosti v oblasti IT.
- Dovednosti, které ti pomohou získat vysněnou a dobře placenou práci.
Popis článku
Požadovaný článek má následující obsah:
V tutoriálu Návrhové vzory GoF si představíme návrhový vzor State, ten umožňuje objektu razantně změnit své chování, které je závislé na stavu objektu.
Kredity získáš, když podpoříš naši síť. To můžeš udělat buď zasláním symbolické částky na podporu provozu nebo přidáním obsahu na síť.