De händelseorienterad programmering hänvisar till en modell för datorprogrammering, där händelserna som händer används för att bestämma flödet av kontroll av ett program.
Det är inte en typ av teknik eller programmeringsspråk, utan snarare ett tillvägagångssätt som implementeras under produktutvecklingsstadiet. I grund och botten skiljer den loggen för händelsebehandling från resten av koden i ett program.
Denna typ av programmering är utformad för att upptäcka händelser när de inträffar, med hjälp av en lämplig händelsehanteringsprocedur för att hantera dem, vanligtvis genom att anropa en funktion eller metod..
Teoretiskt sett är stilen för denna programmering kompatibel med alla programmeringsspråk, även om den kan vara annorlunda i hur den implementeras.
Generellt finns det i en händelsestyrd applikation en huvudslinga som "lyssnar" på nya inkommande händelser, vilket utlöser ett funktionsanrop när de upptäcks. Därför fokuserar verksamheten på händelser, beslutar vad som ska utföras och i vilken ordning.
Artikelindex
Programmets flöde ges av händelser som kan vara användaråtgärder, meddelanden från andra program etc., som separerar processlogiken för händelserna från resten av koden i ett program, vilket kontrasterar med batchbehandling.
Händelserna själva kan sträcka sig från att acceptera eller avvisa en låneförfrågan, kallad en högnivåhändelse, till en användare som trycker på en tangent, vilket är en lågnivåhändelse..
Den används för att skriva program avsedda för service utan att sakta ner datorn, eftersom serviceorientering bara förbrukar lite processorkraft. Dessutom kör tjänsterna i allmänhet i operativsystemets bakgrund..
Det är ett villkor som uppstår under genomförandet av ett program och som kräver vissa åtgärder från systemet. Varje händelse skiljer sig åt från sin natur, vissa kräver att programmet hämtar och visar viss information, och andra måste initiera vissa beräkningar och tillståndsändringar..
Händelser inkluderar mus, tangentbord, ett användargränssnitt och åtgärder som ska utlösas i programmet när de inträffar. Detta innebär att användaren måste interagera med ett objekt i programmet, som att klicka på en musknapp, använda tangentbordet för att välja en knapp, etc..
Det är en viss enhet i programmet som aktiveras för att reagera på en händelse. Det vill säga det är en typ av funktion eller metod som utför en specifik åtgärd när en viss händelse utlöses.
Det kan till exempel vara en knapp som när användaren klickar på den visar ett meddelande och när de klickar på den knappen igen stänger meddelandet.
De är funktioner som bestämmer vilken kod som ska köras när en specifik händelse inträffar. Används för att välja vilken händelsehanterare som ska användas när en händelse inträffar.
Det är en specifik kod som körs vid en viss tidpunkt. Det betyder att det är en förinställd uppgift som ska göras.
Windows-uppdatering är ett exempel på kontrollerad tid, där användaren kan ställa in när den ska uppdateras eller när den ska kontrollera och ladda ner uppdateringen.
Händelseinriktade program har blivit mycket vanliga. Bland de mest framträdande exemplen är ordbehandling, ritverktyg, kalkylblad etc..
De flesta moderna meddelandesystem följer också det händelsestyrda mönstret, medan stora webbplatser använder skalbara och händelsestyrda arkitekturer av distribuerad natur. Andra exempel är:
- En tangent trycktes (textredigerare).
- En ny uppgiftskalender är redo att distribueras till all personal (ledningssystem).
- HTML-meddelande mottaget (webbserver).
- Ett olagligt handelsmönster har upptäckts (upptäckt av bedrägerier).
- En bil i ett dataspel kolliderar med en annan bil (racingspel).
- En robot har nått sitt mål (lagerhantering i realtid).
Ett praktiskt exempel på en händelse som används i händelsestyrd schemaläggning kan vara en anställd som ansöker om arbetstillstånd i ett system. När denna anställd skickar sin begäran kommer han att aktivera ett meddelande som skickas till chefen för godkännande..
Chefen kunde se detaljerna i begäran, godkänna eller avvisa den, uppdatera den i systemet utan att behöva starta ytterligare sessioner.
Åtgärderna i ett program som följer grunderna för händelseorienterad programmering initieras av händelser:
- Hårdvara.
- Planerad.
- Körtid.
- Från operativsystemet.
- Utlöses av användarinstruktioner som ges genom interaktion med programmets GUI.
I sitt enklaste läge måste programmerare svara på följande fråga: "Vad ska hända när en viss händelse inträffar?".
Följande pseudokodsrutin visar hur en mycket enkel schemaläggare kan fungera. Den består av en huvudslinga som löper kontinuerligt tills något avslutningstillstånd inträffar.
När en händelse inträffar måste schemaläggaren bestämma händelsetypen och välja lämplig händelsehanterare eller hantera händelsen om en lämplig händelsehanterare inte finns.
På grund av spridningen av data mellan flera processorer och händelsehanterare.
Detta är den viktigaste fördelen med händelseorienterad programmering, vilket förbättrar användarupplevelsen. Nuvarande användare vill delta aktivt och inte förbli passiva konsumenter.
Därför hjälper evenemangsbaserade program användarna att navigera i sin egen upplevelse och utforska en mängd olika alternativ utan förinställda begränsningar..
Denna programmeringsmetod har många fördelar för alla intressenter, eftersom färre beslut krävs för att vara hårdkodade än traditionella applikationer..
Många händelser bestäms av användaråtgärder snarare än att ha avancerad kodning för alla möjliga scenarier. Medan traditionella applikationer agerar reagerar evenemangsdrivna applikationer.
Perfekt anpassad till nyare programvarutekniktrender som molntjänster, mikrotjänster och behovet av bättre skalbarhet med flexibla och distribuerade system.
Eliminerar möjligheten till poster med ogiltiga värden. En traditionell applikation ställer en fråga och låter användaren skriva ett svar. Händelsestyrda applikationer erbjuder vanligtvis en uppsättning alternativ, antingen som knappar eller som rullgardinsmenyer..
Behovet av att korrigera och justera befintlig kod när du lägger till eller tar bort moduler elimineras. Systemet fortsätter att fungera smidigt oavsett sådan justering.
Därför är denna programmering lämplig för applikationer med kontrollflöden baserat på en uppsättning interna och externa händelser, snarare än baserat på en struktur.
Denna programmeringsmetod är inte det bästa alternativet för små och enkla applikationer, eftersom de ansträngningar som måste göras inte visar sig vara förnuftiga.
Att utveckla en händelsedriven applikation ökar komplexiteten i systemdesign och leverans. Detta beror på att traditionella programvaruarkitekturer bygger på förfrågningsbaserade interaktioner snarare än händelsestyrda interaktioner..
Dessutom krävs en hel del förberedelser på grund av behovet av oupphörligt dynamiska händelsesslingor..
Det bör noteras att händelserienterad programmering inte ersätter traditionell strukturerad programmering utan bara kompletterar den.
Traditionella programmeringsmetoder är fortfarande nödvändiga för att skriva det övergripande programmet, medan de händelsestyrda kodningselementen bara hjälper till att utforma GUI..
Flexibiliteten i händelseorienterad programmering, som är den obestridda fördelen, blir också ett bedrägeri i vissa scenarier. En av dessa manifestationer är oförutsägbarheten för ett evenemangsinriktat program om det har förändringar och en svagare kontroll över systemet i allmänhet..
Även om kodare gillar att använda händelsestyrd programmering för att göra friktionsfria justeringar, som att ta bort eller lägga till några funktionella moduler, kan dessa justeringar leda till oväntade ändringar i funktionaliteten..
Vid konventionell programmering upptäcker systemet mycket snabbt dessa operativa avvikelser och ger en rapport till programmeraren om orsakerna till dem. I händelsestyrd programmeringsmiljö är det mindre snabbt och enkelt att upptäcka sådana fel.
Eftersom händelsestyrd programmering visar sig vara mer ett tillvägagångssätt än en typ av språk kan händelsebaserade applikationer skapas på vilket programmeringsspråk som helst..
Händelsedriven programmering förändrar världen av mjukvaruutvecklingstjänster och blir en integrerad del av dagens utveckling. Dess spridning stimulerades av Windows och spridningen av visuella miljöer.
Ett fall av en händelsestyrd situation skulle likna en väckningstimer inställd på att göra en specifik uppgift vid en viss tid, som att ringa och kommunicera något som säger "Vakna!".
Denna schemaläggningsmetod är händelsefokuserad. Dess vanligaste applikationsområden inkluderar skapande av grafiskt användargränssnitt (GUI), serverapplikationer och spelutveckling för flera spelare..
Medan konventionella program etablerar flödet av händelser och har kontroll över användaralternativen, tjänade denna mer innovativa programmering till att skapa GUI.
GUI ändrade interaktion mellan människa och dator genom att erbjuda användare flera alternativ i form av rullgardinsmenyer, fönster, knappar och kryssrutor..
Därför kan användare välja en av de många tillgängliga kommandona på egen hand istället för att följa den förutbestämda åtgärdsordningen som ställts in av datorn..
Förutom att denna programmering används i stor utsträckning i grafiska användargränssnitt, även i applikationer som utför vissa åtgärder som svar på användarinmatning, till exempel JavaScript-webbapplikationer..
Ingen har kommenterat den här artikeln än.