04.11.2014 Views

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

132 Štúdie vybraných tém programových a informaných systémov<br />

5.1 Životný cyklus inštancií návrhových vzorov<br />

Podobne ako môžeme v procese vývoja softvéru identifikova fázy jeho životného cyklu,<br />

môžeme tak urobi aj v prípade návrhových vzorov a ich inštancií. V rámci kapitoly budeme<br />

rozlišova medzi pojmami návrhový vzor a inštancia návrhového vzoru.<br />

− Za návrhový vzor považujeme celkovú všeobecnú myšlienku riešenia definovanú<br />

príslušným katalógom. Definícia návrhového vzoru v sebe spája opis problému, jeho<br />

odporúaného riešenia a konsekvencie, ktoré toto riešenie so sebou prináša. Súasou<br />

opisu bývajú aj príklady jeho konkrétnej inštancie na úrovni návrhu a zdrojového<br />

kódu.<br />

− Za inštanciu návrhového vzoru považujeme konkrétne riešenie vychádzajúce<br />

z možnosti znovupoužitia všeobecného riešenia definovaného v rámci opisu daného<br />

vzoru. Inštancia návrhového vzoru je priamou súasou návrhu, resp. implementácie<br />

vytváraného konkrétneho softvérového systému. Je vytvorená zo štandardných stavebných<br />

prvkov objektovo-orientovaného vývoja softvéru akými sú triedy, objekty,<br />

atribúty i metódy. Inštancia vzoru nebýva fyzicky spätá so vzorom, poda ktorého<br />

bola vytvorená. Identifikácia príslušnosti inštancie k samotnému vzoru býva asto<br />

ponechaná na schopnosti vývojárov, ktorí s ou prídu do kontaktu.<br />

Životný cyklus inštancií návrhových vzorov pozostáva z dvoch etáp. Prvá z nich zachytáva<br />

proces vytvorenia korektnej inštancie návrhového vzoru, nazýva sa tiež inštanciácia<br />

vzoru. Druhá etapa, nazývaná tiež evolúcia inštancie, opisuje proces zmien po vytvorení<br />

inštancie vzoru.<br />

5.1.1 Vytvorenie inštancie návrhového vzoru<br />

Procesom vytvárania inštancie návrhového vzoru prechádzame pri aplikácii riešenia ponúkaného<br />

vzorom do vytváraného softvérového systému. Medzi vstupy vytvárania inštancie<br />

patrí aktuálny stav vytváraného systému a všeobecný opis návrhového vzoru.<br />

Za výstup považujeme pozmenený stav vytváraného systému, ktorý je rozšírený<br />

o korektne vytvorenú inštanciu návrhového vzoru.<br />

Rozlišujeme dve innosti [31], ktoré je potrebné vykona pri tvorbe inštancie vzoru:<br />

abstraktnú a všeobecnú inštanciu vzoru je potrebné konkretizova a vyšpecifikova. Tieto<br />

innosti sa môžu na prvý pohad javi ako totožné, no nie je tomu tak. Každá približuje<br />

prvotnú myšlienku vzoru k finálnej inštancii, priom je potrebné vykona obe, aby bolo<br />

možné inštanciu prehlási za korektne vytvorenú. Odlišnosti medzi týmito innosami sú<br />

prezentované na obrázku 5-1, v rámci ktorého sú miery všeobecnosti a abstrakcie prezentované<br />

v dvojrozmernom priestore (miera všeobecnosti horizontálne, miera abstrakcie<br />

vertikálne.).<br />

Vytváraná inštancia sa stáva konkrétnejšou, ke obsahuje viac stavebných prvkov<br />

tvoriacich korektnú inštanciu. Z poiatonej abstraktnej myšlienky použitia vzoru sa pridávaním<br />

tried, ich atribútov a metód postupne stáva konkrétna inštancia.<br />

Špecifikovanie inštancie znamená priblíženie všeobecného opisu vzoru do kontextu<br />

vyvíjaného systému. Za všeobecné možno považova príklady inštancií vzorov prezentované<br />

v katalógu GoF [12]. Tie obsahujú hráov všetkých rolí (takže ich možno považova<br />

za konkrétne), ale títo hrái nezodpovedajú žiadnej doméne. Špecifikovanie predstavuje

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!