- Tapahtumakeskeisen ohjelmoinnin ominaisuudet
- Tapahtumien riippuvuus
- Palvelukeskeinen
- Tapahtumat
- ohjain
- Käynnistystoiminnot
- Aika hallittu
- Esimerkkejä tapahtumapohjaisesta ohjelmoinnista
- Työlupa
- Toimien aloittaminen
- Etu
- Nopeampi käsittely
- vuorovaikutteisuus
- Vähemmän päätösten koodausta
- Joustavuus
- Voimassa olevat liput
- Helppo huoltaa
- haitat
- Monimutkainen ohjausvirta
- Se ei korvaa jäsenneltyä ohjelmointia
- Joustavuus
- Sovellukset
- Graafinen käyttöliittymä
- Viitteet
Tapahtuma - odotuksiin ohjelmointi viittaa mallin ohjelmointi, jossa tapahtumista tapahtuu määrittää ohjausvuon ohjelman käytetään.
Se ei ole tietyn tyyppinen tekniikka tai ohjelmointikieli, vaan lähestymistapa, joka toteutetaan tuotekehitysvaiheessa. Pohjimmiltaan se erottaa tapahtumien käsittelylogiikan muusta koodista ohjelmassa.

Tämän tyyppinen ohjelmointi on suunniteltu havaitsemaan tapahtumia niiden tapahtuessa käyttämällä asianmukaista tapahtumien käsittelymenettelyä niiden käsittelemiseen, yleensä kutsumalla toiminto tai menetelmä.
Teoriassa tämän ohjelmoinnin tyyli on yhteensopiva kaikkien ohjelmointikielten kanssa, vaikkakin se voi olla erilainen siinä, miten se toteutetaan.
Yleensä tapahtumavetoisessa sovelluksessa on pääsilmukka, joka “kuuntelee” uusia saapuvia tapahtumia ja laukaisee toimintopuhelun, kun ne havaitaan. Siksi sen toiminta keskittyy tapahtumiin päättämällä, mitä suorittaa ja missä järjestyksessä.
Tapahtumakeskeisen ohjelmoinnin ominaisuudet

Lähde: pixabay.com
Tapahtumien riippuvuus
Ohjelman virtauksen antavat tapahtumat, jotka voivat olla käyttäjän toimintoja, muiden ohjelmien viestejä jne., Erottaen prosessointitapahtumien logiikan muun ohjelman koodista, mikä on kontrastina eräkäsittelyyn.
Itse tapahtumat voivat vaihdella korkean tason tapahtumana kutsutun lainapyynnön hyväksymisestä tai hylkäämisestä näppäimen painallukseen, joka on matalan tason tapahtuma.
Palvelukeskeinen
Sitä käytetään palveluihin tarkoitettujen ohjelmien kirjoittamiseen hidastamatta tietokonetta, koska palvelusuuntautuminen kuluttaa vain vähän prosessointitehoa. Palvelut toimivat yleensä myös käyttöjärjestelmän taustalla.
Tapahtumat
Se on ehto, joka syntyy ohjelman suorittamisen aikana, ja joka vaatii järjestelmän joitain toimia. Jokainen tapahtuma on luonteeltaan erilainen, toiset vaativat ohjelman hakemaan ja näyttämään tiettyjä tietoja, ja toiset vaativat joidenkin laskelmien ja tilamuutosten aloittamisen.
Tapahtumiin sisältyy hiiri, näppäimistö, käyttöliittymä ja toiminnot, jotka tulisi käynnistää ohjelmassa, kun ne tapahtuvat. Tämä tarkoittaa, että käyttäjän on oltava vuorovaikutuksessa ohjelmassa olevan objektin kanssa, kuten napsauttamalla hiiren painiketta, valitsemalla painike näppäimistön avulla jne.
ohjain
Se on tietty ohjelmayksikkö, joka aktivoidaan reagoimaan tapahtumaan. Eli se on tyyppinen toiminto tai menetelmä, joka suorittaa tietyn toiminnan, kun tietty tapahtuma laukaistaan.
Se voi esimerkiksi olla painike, joka käyttäjän napsauttaessa näyttää viestin ja kun hän napsauttaa kyseistä painiketta uudelleen sulkee viestin.
Käynnistystoiminnot
Ne ovat toimintoja, jotka päättävät, mikä koodi suoritetaan tietyn tapahtuman tapahtuessa. Niitä käytetään valitsemaan, mitä tapahtumakäsittelijää käytetään tapahtuman tapahtuessa.
Aika hallittu
Se on tietty koodi, joka kulkee tiettyyn aikaan. Tämä tarkoittaa, että se on esiasetettu tehtävä.
Windows-päivitys on esimerkki valvotusta ajasta, jolloin käyttäjä voi asettaa päivityksen ajankohdan tai tarkistaa ja ladata päivityksen.
Esimerkkejä tapahtumapohjaisesta ohjelmoinnista
Tapahtumakeskeisistä ohjelmista on tullut hyvin yleisiä. Näkyvimpiä esimerkkejä ovat tekstinkäsittely, piirtotyökalut, laskentataulukot jne.
Useimmat nykyaikaiset viestijärjestelmät seuraavat myös tapahtumavetoista mallia, kun taas suurten verkkosivustojen skaalautuvat ja tapahtumavetoiset arkkitehtuurit ovat hajautettuja. Muita esimerkkejä ovat:
- Näppäintä painetaan (tekstieditori).
- Uusi tehtäväkalenteri on valmis jaettavaksi koko henkilöstölle (hallintajärjestelmä).
- HTML-viesti (web-palvelin) on vastaanotettu.
- Laittomat kauppatavat on havaittu (petosten havaitseminen).
- Tietokonepelissä oleva auto törmää toiseen autoon (kilpapeli).
- Robotti on saavuttanut määränpäähänsä (varastonhallinta reaaliajassa).
Työlupa
Käytännöllinen esimerkki tapahtumapohjaisessa ohjelmoinnissa käytetystä tapahtumasta voisi olla työntekijä, joka hakee järjestelmästä työlupaa. Kun tämä työntekijä antaa pyynnön, hän aktivoi ilmoituksen, joka lähetetään johtajalle hyväksyttäväksi.
Hallinnoija voi tarkastella pyynnön yksityiskohtia, hyväksyä tai hylätä sen päivittämällä sitä järjestelmässä ilman tarvetta aloittaa lisäistuntoja.
Toimien aloittaminen
Tapahtumakeskeisen ohjelmoinnin perusteita seuraavan ohjelman toimet käynnistetään tapahtumien kautta:
- Laitteisto.
- Aikataulu.
- Suoritusajasta.
- Käyttöjärjestelmästä.
- Aktivoidaan käyttäjän ohjeiden avulla, jotka tapahtuvat vuorovaikutuksessa ohjelman graafisen käyttöliittymän kanssa.
Ohjelmoijien on yksinkertaisimmassa tilassa vastattava kysymykseen: "Mitä tapahtuu tietyn tapahtuman tapahtuessa?"
Seuraava näennäiskoodirutiini osoittaa, kuinka hyvin yksinkertainen ajoitus voi toimia. Se koostuu pääsilmukasta, joka jatkuu jatkuvasti, kunnes tapahtuu jokin lopetusolosuhde.
Tapahtuman tapahtuessa ajoittimen on määritettävä tapahtuman tyyppi ja valittava sopiva tapahtumakäsittelijä tai käsiteltävä tapahtumaa, jos sopivaa tapahtumakäsittelijää ei ole.

Etu
Nopeampi käsittely
Tiedon etenemisen takia useiden prosessorien ja tapahtumakäsittelijöiden välillä.
vuorovaikutteisuus
Tämä on tapahtumakeskeisen ohjelmoinnin tärkein etu, joka parantaa käyttökokemusta. Nykypäivän käyttäjät haluavat osallistua aktiivisesti eivätkä jäädä passiivisiksi kuluttajiksi.
Siksi tapahtumapohjaiset ohjelmat auttavat käyttäjiä navigoimaan omassa kokemuksessaan ja tutkimaan erilaisia vaihtoehtoja ilman ennalta asetettuja rajoituksia.
Vähemmän päätösten koodausta
Tällä lähestymistavalla ohjelmointiin on monia etuja kaikille sidosryhmille, koska koodaamiseen tarvitaan vähemmän päätöksiä kuin perinteisiin sovelluksiin.
Useat tapahtumat määritetään käyttäjän toimien avulla sen sijaan, että niillä olisi edistynyt koodaus kaikille mahdollisille skenaarioille. Vaikka perinteiset sovellukset toimivat, tapahtumapohjaiset sovellukset reagoivat.
Joustavuus
Se sopii täydellisesti ohjelmistotekniikan viimeaikaisiin suuntauksiin, kuten pilvipalvelut, mikropalvelut ja tarve parantaa skaalautuvuutta joustavilla ja hajautetuilla järjestelmillä.
Voimassa olevat liput
Poistaa virheellisten arvojen syöttämisen mahdollisuuden. Perinteinen sovellus esittää kysymyksen ja antaa käyttäjän kirjoittaa vastaus. Tapahtumapohjaiset sovellukset tarjoavat yleensä joukon vaihtoehtoja joko painikkeina tai pudotusvalikoina.
Helppo huoltaa
Tarve oikaista ja säätää olemassa olevaa koodia lisättäessä tai poistettaessa moduuleja poistuu. Järjestelmä toimii edelleen sujuvasti riippumatta tällaisista säädöistä.
Siksi tämä ohjelmointi soveltuu sovelluksiin, joissa ohjausvirrat perustuvat joukkoon sisäisiä ja ulkoisia tapahtumia rakenteen sijasta.
haitat
Monimutkainen ohjausvirta
Tämä lähestymistapa ohjelmointiin ei ole paras vaihtoehto pienille ja yksinkertaisille sovelluksille, koska ponnistelut, jotka on tehtävä, eivät osoita järkeviltä.
Tapahtumavetoisen sovelluksen kehittäminen lisää järjestelmän suunnittelun ja toimituksen monimutkaisuutta. Tämä johtuu siitä, että perinteiset ohjelmistoarkkitehtuurit perustuvat pyyntöpohjaiseen vuorovaikutukseen, eikä tapahtumapohjaiseen vuorovaikutukseen.
Lisäksi tarvitaan paljon valmistelua, koska tarvitaan jatkuvasti dynaamisia tapahtumasilmukoita.
Se ei korvaa jäsenneltyä ohjelmointia
On huomattava, että tapahtumakeskeinen ohjelmointi ei korvaa perinteistä jäsenneltyä ohjelmointia, vaan vain täydentää sitä.
Perinteiset ohjelmointimenetelmät ovat edelleen välttämättömiä koko ohjelman kirjoittamiselle, kun taas tapahtumapohjaiset koodauselementit auttavat vain graafisen käyttöliittymän suunnittelussa.
Joustavuus
Tapahtumakeskeisen ajoituksen joustavuus, joka on sen kiistaton etu, muuttuu myös petoksiksi tietyissä tilanteissa. Yksi näistä ilmenemismuodoista on tapahtumakeskeisen ohjelman ennustettavuus siinä tapauksessa, että siinä on muutoksia ja heikompi hallinta koko järjestelmässä.
Vaikka kooderit haluavat käyttää tapahtumapohjaista ohjelmointia kitkattomien säätöjen tekemiseksi, kuten esimerkiksi joidenkin toiminnallisten moduulien poistamiseksi tai lisäämiseksi, nämä säädöt voivat johtaa odottamattomiin muutoksiin toiminnallisuudessa.
Tavanomaisessa ohjelmoinnissa järjestelmä havaitsee nämä toimintaan liittyvät poikkeamat erittäin nopeasti ja antaa ohjelmoijalle raportin niiden syistä. Tapahtumavetoisessa ohjelmaympäristössä tällaisten toimintahäiriöiden havaitseminen on vähemmän nopeaa ja helppoa.
Sovellukset
Koska tapahtumapohjainen ohjelmointi osoittautuu enemmän lähestymistapaksi kuin tietyntyyppiseksi kieleksi, tapahtumapohjaisia sovelluksia voidaan luoda millä tahansa ohjelmointikielellä.
Tapahtumavetoinen ohjelmointi muuttaa ohjelmistokehityspalvelujen maailmaa ja siitä on tulossa olennainen osa nykypäivän kehitystä. Sen leviämistä vauhdittivat Windows ja visuaalisten ympäristöjen leviäminen.
Tapahtumavetoinen tilanne muistuttaisi herätysajastinta, joka on asetettu suorittamaan tietty tehtävä tiettyyn aikaan, kuten soittamaan ja kommunikoimaan jotain, joka sanoo: "Herää!"
Graafinen käyttöliittymä
Tämä aikataulutapa on tapahtumakeskeinen. Sen yleisimpiä sovellusalueita ovat graafisen käyttöliittymän (GUI) luominen, palvelinsovellukset ja moninpelien kehittäminen.
Vaikka perinteiset ohjelmat määrittelevät tapahtumien kulun ja hallitsevat käyttäjän vaihtoehtoja, tämä innovatiivisempi ohjelmointi on luonut graafisen käyttöliittymän.
GUI muutti ihmisen ja tietokoneen vuorovaikutusta tarjoamalla käyttäjille useita vaihtoehtoja avattavien valikkojen, ikkunoiden, painikkeiden ja valintaruutujen muodossa.
Siksi sen sijaan, että noudatettaisiin tietokoneen asettamaa ennalta määritettyä toimien järjestystä, käyttäjät voivat valita yhden monista käytettävissä olevista komennoista itse.
Sen lisäksi, että tätä ohjelmointia käytetään laajasti graafisissa käyttöliittymissä, sitä käytetään myös laajasti sovelluksissa, jotka suorittavat tiettyjä toimintoja vastauksena käyttäjän syötteisiin, kuten JavaScript-verkkosovelluksissa.
Viitteet
- Raspal Chima (2018). Tapahtumapohjaiset sovellukset ohjelmistokehityksessä. Mustikkakonsultit. Ostettu: bbconsult.co.uk.
- Koorumi (2020). Rakennussovellukset - Oppiaihe 1: Johdatus tapahtumapohjaiseen ohjelmointiin. Otettu: quorumlanguage.com.
- Margaret Rouse (2012). Tapahtumavetoinen sovellus. TechTarget. Otettu: searchitoperations.techtarget.com.
- UK esseet (2018). Tapahtumaohjatut ohjelmointiominaisuudet. Otettu: ukessays.com.
- Souvik Banerjee (2019). Tapahtumapohjainen ohjelmointi: Miksi se on suuntaus nyt? RS-verkkosivut. Otettu: rswebsols.com.
- Techopedia (2018). Tapahtumaohjattu ohjelma. Kuvannut: roofpedia.com.
- Technology UK (2020). Tapahtumapohjainen ohjelmointi. Kuvannut: technologyuk.net.
