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.

Softvérové súiastky 39<br />

ciu služby bez toho, aby bolo nutné upravi rozhrania, a zárove pridáva nové služby<br />

bez zmeny existujúcej implementácie.<br />

Obrázok 2-2. Vzah medzi dvoma softvérovými súiastkami.<br />

Sú súiastky objektmi?<br />

Vo všeobecnosti súiastky nie sú objektmi. Ale objekty môžu by jednoduchými súiastkami.<br />

Vea objektov môže obsahova nejakú súiastku. Dôležitý rozdiel je v poslaní. Objekt<br />

slúži na opis entity reálneho sveta, kým súiastka je urená na opis služieb tejto entity.<br />

Inak povedané, objekty sú vhodné na opis doménovej štruktúry, zatia o súiastky opisujú<br />

jej funkcionalitu. Ke objekt požiada o službu, nevie ktorý z ostatných objektov túto<br />

službu poskytuje. Keže súiastka musí poskytova služby rôznym objektom – asto anonymne<br />

– neuchováva si stavovú informáciu (samozrejme, len vtedy, ak to práve nie je<br />

vlastnos poskytovanej služby).<br />

Predstavme si, že máme hardvérový ovláda (angl. driver), ktorý zabezpeuje prístup<br />

k viacerým podobným zariadeniam, priom každé zariadenie má svoje jedinené rty. Ak<br />

programu nezáleží na výbere zariadenia, ktoré vykoná požadovanú službu, môže požiada<br />

o službu od súiastky a zárove ju poveri výberom zariadenia. Súiastka následne<br />

zavolá vhodnú metódu na objekte príslušného zariadenia. Naopak, ak program presne vie,<br />

od ktorého z dostupných zariadení službu vyžaduje, môže zavola alebo súiastku<br />

s konkrétnou špecifikáciou zariadenia, alebo priamo objekt požadovaného zariadenia.<br />

Súiastky poskytujú služby. Súiastky sú zložené z objektov, ktoré vzájomnou spoluprácou<br />

implementujú súiastkami poskytovanú službu.<br />

V súasnosti softvér ím alej tým viac využíva súiastky. Výhody ich použitia sú:<br />

− zvýšená produktivita vaka použitiu hotových súiastok,<br />

− zvýšená spoahlivos použitím dostatone otestovaného zdrojového kódu,<br />

− nízke náklady na údržbu, pretože rozsah kódu je malý,<br />

− minimálne zmeny v kóde,<br />

− zabezpeenie dostatone uzatvoreného mechanizmu na zabalenie, distribúciu<br />

a znovupoužitie softvéru.<br />

Nevýhodou môžu by tieto riziká:<br />

− nemožnos opravi alebo skontrolova kód (angl. bugs and backdoors),

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

Saved successfully!

Ooh no, something went wrong!