NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.

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

Znalosti v hodnotě stovek tisíc získáš za pár korun

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

Koupit všechny aktuálně dostupné lekce s funkcí odevzdávání úloh a certifikátem za pouhých 725 Kč
Aktuální stav konta 0 Kč
Koupí tohoto balíčku získáš přístup ke všem 27 článkům (21 lekcí, 6 testů) tohoto kurzu.

Obsah článku spadá pod licenci Premium, koupí článku souhlasíš se smluvními podmínkami.

Co od nás v dalších lekcích dostaneš?
  • 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íť.

Článek pro vás napsal David Hartinger
Avatar
David je zakladatelem ITnetwork a programování se profesionálně věnuje 15 let. Má rád Nirvanu, nemovitosti a svobodu podnikání.
Unicorn university David se informační technologie naučil na Unicorn University - prestižní soukromé vysoké škole IT a ekonomie.
Aktivity