Služebník (návrhový vzor): Porovnání verzí

Smazaný obsah Přidaný obsah
Bez shrnutí editace
Finální podoba článku - čerpáno ze zdrojů uvedených na konci článku.
Řádek 3:
== Motivace ==
 
Návrhový vzor ''Služebník'' využijeme v případě, když:
 
* Několik tříd potřebuje definovat stejnou činnost a nechceme definovat na několika místech stejný kód<br />&nbsp;
 
* Objekt má úkol, který naprogramovat buď neumíme, nebo bychom jej sice zvládli, ale víme, že je úloha již naprogramovaná jinde<br />&nbsp;
 
* Připravujeme řešení, které chceme definovat dostatečně obecné, aby je mohli používat všichni, kteří je budou v budoucnu potřebovat, a přitom nevíme, kdo budou ti potřební<br />&nbsp;
 
== Implementace vzoru ==
 
Služebník nepracuje sám, ale komunikuje s obsluhovanými instancemi.
Řádek 25:
'''Instance, která chce být obsloužena:'''
 
* Implementuje příslušné rozhraní, aby se mohla vydávat za jeho instanci.<br /> Implementací tohoto rozhraní deklaruje, že umí to, co od ní služebník k její plnohodnotné obsluze požaduje.<br />&nbsp;
 
== Terminologie ==
&nbsp;
 
== Možná použití ==
 
Návrhový vzor ''Služebník'' používám ve dvou drobně odlišných situacích. V následujícím popisu těchto situací jsou použity termíny:
 
'''Klient'''<br />&nbsp;&nbsp;&nbsp;
Řádek 44 ⟶ 42:
'''Obsluhovaný'''<br />&nbsp;&nbsp;&nbsp;
Objekt, který implementuje rozhraní <b><code>IObsluhovaný</code></b>
a je proto schopen být osluhován slušebníkem.<br />&nbsp;
 
== Možná použití ==
&nbsp;
 
Návrhový vzor ''Služebník'' používám ve dvou drobně odlišných situacích.
 
=== Služebníka zná obsluhovaný objekt ===
Řádek 56:
''Služebníka'.
 
[[http://soubory.pecinovsky.cz/Sluzebnik_1.png Diagram tříd případu, kdy služebníka volá obsluhovaný objekt]]
 
&nbsp;
 
=== Služebníka zná klient ===
Řádek 70 ⟶ 68:
a že je následně obsluhován ''Služebníkem''.
 
[[http://soubory.pecinovsky.cz/Sluzebnik_1.png Diagram tříd případu, kdy služebníka volá klient]]
 
&nbsp;
 
== Literatura ==
=== Služebníka zná klient ===
 
*{{cite book
| first = Rudolf
| last = Pecinovský
| year = 2007
| title = Návrhové vzory &ndash; 33 vzorových posupů pro objektové programování.
| publisher = [[Computer Press]]
| isbn = 978-80-251-1582-4
}}
 
*{{cite book
| first = Rudolf
| last = Pecinovský
| year = 2010
| title = OOP &ndash; Naučte se myslet a programovat objektově.
| publisher = [[Computer Press]]
| isbn = 978-80-251-2126-9
}}
 
*{{cite book
| first = Rudolf
| last = Pecinovský
| year = 2009
| title = Myslíme objektově v jazyku Java &ndash; Kompletní učebnice pro začátečníky, 2. aktualizované a rozšířené vydání.
| publisher = [[Grada]]
| isbn = 978-80-247-2653-3
}}
 
 
[[Kategorie:Návrhové vzory]]
[[Kategorie:Programování]]
[[en:Design_pattern_Servant]]