elektronická verzia publikácie - FIIT STU - Slovenská technická ...
elektronická verzia publikácie - FIIT STU - Slovenská technická ...
elektronická verzia publikácie - FIIT STU - Slovenská technická ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2.2 Súiastky založené na udalostiach<br />
Softvérové súiastky 47<br />
Súiastky, ktoré pracujú na základe udalostí, patria k najvonejšie prepojeným prvkom<br />
softvéru. Nepotrebujú pozna s kým spolupracujú, staí, ke sa dozvedia, že nastala udalos,<br />
na ktorú dokážu zareagova. Sú preto vemi vhodné na prepájanie existujúcich aplikácií<br />
a to nie len na jednom poítai, ale aj v rámci poítaových sietí a to aj pri obasne<br />
pripojených poítaoch.<br />
Svoje využitie však nachádzajú aj v kompaktných aplikáciách. Typicky je to podpora<br />
používateského rozhrania, kde vzniká množstvo udalostí, na ktoré musí aplikácia reagova.<br />
Iným príkladom sú riadiace systémy, ktoré reagujú na udalosti z výrobného alebo<br />
iného riadeného procesu.<br />
Veká vonos prepojenia umožuje aj priamo poas vykonávania softvérového procesu<br />
meni zdroje, ktoré udalosti vytvárajú, aj pozorovateov, ktorí na udalosti reagujú. Ak<br />
pribudnú zdroje udalostí, jediné o sa z pohadu pozorovatea zmení je poet udalostí,<br />
na ktoré má reagova. Zdroju udalostí je zvyajne tiež jedno, koko pozorovateov na jeho<br />
udalos reaguje. Softvérové systémy, ktoré využívajú súiastky založené na udalostiach, sú<br />
preto ahko konfigurovatené aj za chodu.<br />
2.2.1 Udalosti<br />
Udalos je nieo, o sa stane, o om chceme vedie a prípadne na to reagova. V softvérových<br />
systémoch je udalos definovaná ako špecifický vznik bodu interakcie dvoch výpo-<br />
tových jednotiek. Tento bod interakcie sa chápe v ase, nie ako vytvorenie nejakého prepojenia.<br />
Na udalosti je dôležité to, že vo všeobecnosti nevieme kedy nastane a i vôbec nastane.<br />
V konkrétnych prípadoch však zvyajne vieme aspo odhadnú, ako asto môže udalos<br />
nasta. Udalosti, napríklad z asovaa, môžu prichádza v rozpätí mikrosekúnd, iné<br />
udalosti, napríklad vydanie opravenej verzie softvéru, sa vyskytujú raz za niekoko mesiacov<br />
alebo aj rokov. Poda toho sa potom vyberie vhodný model spracovania udalostí.<br />
Z pohadu softvérového systému možno udalosti leni na vnútorné a vstupné. Vnútorné<br />
udalosti si vytvára systém sám a zvyajne sa jedná o zmenu stavu niektorej jeho asti.<br />
Vstupné udalosti môžu by vytvárané používatemi prostredníctvom vstupných zariadení,<br />
napríklad stlaením znaku na klávesnici alebo pohybom myšou. Iné vstupné udalosti<br />
môžu by generované externými alebo internými hardvérovými prostriedkami poítaa<br />
a môžu ich tiež vytvori iné aktívne procesy na poítai. Toto rozlíšenie je dôležité preto,<br />
lebo na vstupné udalosti súiastky zvyajne nedokážu reagova priamo a je potrebné udalos<br />
prispôsobi použitým súiastkam.<br />
Poda (Faison, 2006) súiastky, ktoré reagujú na udalosti, vyžadujú udalosti vo forme<br />
správy. Správa je vo všeobecnosti postupnos znakov, ktoré urujú typ správy a jej parametre.<br />
Typ správy uruje typ udalosti, ktorá nastala a parametre správy bližšie urujú<br />
vlastnosti tejto udalosti. Súiastka poda typu správy zistí, i je to udalos, na ktorú má<br />
reagova, a ako má na u reagova. Parametre správy môžu priamo nies údaje, napríklad<br />
kód stlaeného znaku na klávesnici alebo referenciu na údaje, napríklad na súbor údajov.<br />
Udalosti si vyžadujú asynchrónne spracovanie. Ke raz udalos vznikla, tak jej tvorcu<br />
môže zaujíma, i bola nejako spracovaná, ale nemôže ovplyvni kedy a i vôbec bude<br />
spracovaná. Preto by nemal aka na potvrdenie ani o doruení, ani o spracovaní správy.