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.

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

Aspekty súiastok<br />

Súiastka má tri aspekty. Schematicky ich znázoruje obrázok 2-1.<br />

− špecifikácia – opisuje funkciu, ktorú súiastka plní. Napríklad, o súiastka vykonáva<br />

a ako ju možno použi,<br />

− implementaný návrh – opisuje ako má implemetátor navrhnú a skonštruova softvér<br />

a dátové štruktúry, aby splnil danú špecifikáciu,<br />

− vykonatený kód – realizuje požadovanú funkcionalitu súiastky v rámci konkrétnej<br />

platformy.<br />

Obrázok 2-1. Aspekty softvérovej súiastky.<br />

Rozhranie (angl. interface) sumarizuje ako má klient interagova so súiastkou, ale skrýva<br />

implementané detaily. Klient naopak môže by závislý od tohto rozhrania. Špecifikácia<br />

modelu rozhrania nie je implementaným návrhom. Rozhranie neobsahuje informáciu<br />

o tom, ako sú dáta vnútri súiastky uložené alebo organizované. Cez rozhranie nie je možné<br />

pristupova k implementácii súiastky.<br />

Vzah medzi dvoma súiastkami je znázornený na obrázku 2-2. Súiastka B má špecifikáciu,<br />

ktorá je implementovaná v nejakom programovacom jazyku. Súiastka A spa<br />

požiadavky aplikaného rozhrania (API; angl. Aplication Programming Interface), ktoré je<br />

obsiahnuté v špecifikácii súiastky B, práve vtedy, ke A zavolá funkcionalitu, ktorú poskytuje<br />

súiastka B.<br />

V ideálnom prípade by implementácia súiastok mohla by napísaná v rôznych programovacích<br />

jazykoch a mohla by sa vykonáva na rôznych softvérových platformách (odlišných<br />

od platformy klientskeho programu). Avšak v súasnosti sa spolupracujúce sú-<br />

iastky programujú väšinou len v rovnakom programovacom jazyku.<br />

Opis rozhrania<br />

Rozhranie je sada sémanticky prepojených funkcií implementovaných na objekte (Brockschmidt,<br />

1994). Rozhranie sumarizuje správanie a zodpovednosti, ktoré súiastka bude<br />

musie dodrža, ke bude súasou zostavy (angl. assembly) reprezentujúcej nejakú aplikáciu.<br />

Rozhranie špecifikuje API, ktoré používajú klienti súiastok, aby zavolali služby sú-<br />

iastok, ale nešpecifikuje implementáciu. Toto oddelenie umožuje zameni implementá-

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

Saved successfully!

Ooh no, something went wrong!