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.

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

ím vzniká<br />

Hybridný vzor[objekty, inštanciácia, klonovanie s využitím<br />

jednej inštancie]<br />

Kombinuje<br />

Vzor sa kombinuje s iným vzorom, aby sa dosiahlo zmiešané správanie. Na rozdiel interakcie<br />

Používa, interakcia Kombinuje spája vzory s rozlinou hodnotu kritéria Úel. Podobne<br />

ako v predošlom prípade, aj pre túto interakciu sú definované formálne pravidlá<br />

urujúce, ktoré vzory a ako môžu spolu tvori hybridný vzor.<br />

Na úrovni návrhu sú definované tri spôsoby kompozície: zdieanie hierarchie, väzba<br />

medzi vzormi a interakcie podtried. Výberom spôsobu kompozície sa prístup nezaoberá,<br />

opä je ponechaný na schopnosti a skúsenosti vývojára. Prístup bol úspešne implementovaný<br />

v rámci práce [18].<br />

5.3.3 Zhodnotenie prístupov ku kompozícii vzorov<br />

Oba predchádzajúce prístupy sa snažia rieši problém kompozície vzorov univerzálnym<br />

spôsobom. Prvý z nich predpokladá komponentový spôsob vývoja, priom prepojenie<br />

komponentov necháva plne v zodpovednosti vývojára bez toho, aby riešil, i je dané spojenie<br />

vhodné, alebo nie. Druhý prístup síce definuje pravidlá, ktoré naznaia, i sú dva<br />

vzory vhodné na vzájomnú kompozíciu, no opä nedefinuje, akým spôsobom by sa kompozícia<br />

mala realizova. Je zrejmé, že oba prístupy sa spoliehajú na znalosti vývojárov,<br />

ktorí ich majú používa, priom im pomáhajú len iastone. Keže správna kompozícia<br />

vzorov je zložitý problém, nie je možné oakáva, že by sa dal hne plne automatizova.<br />

Prístupy sú tvorené tak, aby viedli k o možno najastejšiemu použitiu vzorov v riešeniach.<br />

Najmä prvý ich predstavuje ako overené riešenia, ktoré je vhodné použi ihne<br />

pri prvej príležitosti. Taký spôsob sa môže javi na prvý pohad vhodný, no neskôr sa môžu<br />

prejavi jeho nedostatky. Tým, že sa vývojár snaží umiestni do softvéru o možno najviac<br />

vzorov, softvér sa stáva zbytone univerzálnym, komplikovaným a ažko pochopiteným.<br />

Jedným z dôvodov aplikácie návrhových vzorov je príprava softvéru na možné<br />

zmeny v budúcnosti.<br />

Napríklad, ak sú takéto zmeny málo pravdepodobné a dlhodobo nenastávajú, použitie<br />

návrhového vzoru v aplikácii môže by zbytoné. Použitie zbytoných návrhových<br />

vzorov so sebou prináša problémy. Prvým je potreba uchovania informácií o použití vzorov,<br />

aby v budúcnosti pri zmenách nedošlo k poškodeniu ich vnútornej štruktúry. Druhým<br />

je znížená efektivita zdrojového kódu, ktorá je astým dôsledkom nasadenia vzorov.<br />

Preto by sa malo pristupova k aplikácii vzorov obozretne. Aj poda názorov E. Gammu<br />

[34] by sa mali používa len v prípadoch, ke to vyplýva zo situácie.<br />

Keže opísané univerzálne prístupy nehovoria ni o tom, ako by mali by vzory<br />

kombinované na úrovni návrhu, riešením by mohlo by vytvorenie katalógu korektných<br />

kompozícii návrhových vzorov. Taký katalóg by mal vysvetli význam spojenia vzorov<br />

a definova spôsob, akým dané vzory korektne prepoji na úrovni návrhu. Myšlienka takého<br />

katalógu bola podrobnejšie opísaná v práci [19].

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

Saved successfully!

Ooh no, something went wrong!