Ereignisorientierte Programmierfunktionen, Beispiele, Vorteile, Anwendungen

1470
Jonah Lester

Das ereignisorientierte Programmierung bezieht sich auf ein Modell der Computerprogrammierung, bei dem die Ereignisse, die auftreten, verwendet werden, um den Steuerungsfluss eines Programms zu bestimmen.

Es handelt sich nicht um eine Art Technologie oder Programmiersprache, sondern um einen Ansatz, der in der Produktentwicklungsphase implementiert wird. Grundsätzlich trennt es die Ereignisverarbeitungslogik vom Rest des Codes in einem Programm.

Diese Art der Programmierung dient dazu, Ereignisse zu erkennen, sobald sie eintreten, und verwendet ein geeignetes Ereignisbehandlungsverfahren, um sie zu behandeln, normalerweise durch Aufrufen einer Funktion oder Methode..

Theoretisch ist der Stil dieser Programmierung mit allen Programmiersprachen kompatibel, obwohl er sich in der Art und Weise, wie er implementiert wird, unterscheiden kann.

Im Allgemeinen gibt es in einer ereignisgesteuerten Anwendung eine Hauptschleife, die auf neue eingehende Ereignisse „lauscht“ und einen Funktionsaufruf auslöst, wenn sie erkannt werden. Daher konzentriert sich der Betrieb auf Ereignisse und entscheidet, was in welcher Reihenfolge ausgeführt werden soll.

Artikelverzeichnis

  • 1 Merkmale der ereignisorientierten Programmierung
    • 1.1 Ereignisabhängigkeit
    • 1.2 Serviceorientiert
    • 1.3 Ereignisse
    • 1.4 Ereignishandler
    • 1.5 Aktivierungsfunktionen
    • 1.6 Zeitgesteuert
  • 2 Beispiele für ereignisorientierte Programmierung
    • 2.1 Arbeitserlaubnis
    • 2.2 Einleitung von Maßnahmen
  • 3 Vorteile
    • 3.1 Schnellere Verarbeitung
    • 3.2 Interaktivität
    • 3.3 Weniger Kodierung von Entscheidungen
    • 3.4 Flexibilität
    • 3.5 Gültige Einträge
    • 3.6 Einfache Wartung
  • 4 Nachteile
    • 4.1 Komplexer Kontrollfluss
    • 4.2 Es ersetzt nicht die strukturierte Programmierung
    • 4.3 Flexibilität
  • 5 Anwendungen
    • 5.1 Grafische Benutzeroberfläche
  • 6 Referenzen

Merkmale der ereignisorientierten Programmierung

Quelle: pixabay.com

Ereignisabhängigkeit

Der Programmfluss wird durch Ereignisse angegeben, die Benutzeraktionen, Nachrichten von anderen Programmen usw. sein können, wodurch die Verarbeitungslogik der Ereignisse vom Rest des Codes eines Programms getrennt wird, was im Gegensatz zur Stapelverarbeitung steht.

Die Ereignisse selbst können von der Annahme oder Ablehnung einer Kreditanforderung, die als Ereignis auf hoher Ebene bezeichnet wird, bis hin zum Drücken einer Taste durch einen Benutzer reichen, bei der es sich um ein Ereignis auf niedriger Ebene handelt..

Serviceorientiert

Es wird verwendet, um Programme zu schreiben, die für den Dienst entwickelt wurden, ohne den Computer zu verlangsamen, da die Dienstorientierung nur wenig Rechenleistung verbraucht. Darüber hinaus werden die Dienste im Allgemeinen im Hintergrund des Betriebssystems ausgeführt..

Ereignisse (bearbeiten)

Dies ist eine Bedingung, die während der Ausführung eines Programms auftritt und die eine Aktion des Systems erfordert. Jedes Ereignis ist von Natur aus anders. Bei einigen muss das Programm bestimmte Informationen abrufen und anzeigen, bei anderen müssen einige Berechnungen und Statusänderungen eingeleitet werden..

Zu den Ereignissen gehören Maus, Tastatur, Benutzeroberfläche und Aktionen, die im Programm ausgelöst werden sollen, wenn sie auftreten. Dies bedeutet, dass der Benutzer mit einem Objekt im Programm interagieren muss, z. B. mit einer Maustaste klicken, über die Tastatur eine Schaltfläche auswählen usw..

Regler von Ereignissen

Es ist eine bestimmte Einheit des Programms, die aktiviert wird, um auf ein Ereignis zu reagieren. Das heißt, es ist eine Art von Funktion oder Methode, die eine bestimmte Aktion ausführt, wenn ein bestimmtes Ereignis ausgelöst wird.

Beispielsweise kann es sich um eine Schaltfläche handeln, die beim Klicken des Benutzers eine Nachricht anzeigt und beim erneuten Klicken auf diese Schaltfläche die Nachricht schließt.

Triggerfunktionen

Dies sind Funktionen, die entscheiden, welcher Code ausgeführt werden soll, wenn ein bestimmtes Ereignis auftritt. Wird verwendet, um auszuwählen, welcher Ereignishandler verwendet werden soll, wenn ein Ereignis auftritt.

Kontrollierte Zeit

Es ist ein bestimmter Code, der zu einem bestimmten Zeitpunkt ausgeführt wird. Dies bedeutet, dass es sich um eine voreingestellte Aufgabe handelt.

Das Windows-Update ist ein Beispiel für eine kontrollierte Zeit, in der der Benutzer festlegen kann, wann das Update aktualisiert oder wann das Update überprüft und heruntergeladen werden soll.

Beispiele für ereignisgesteuerte Programmierung

Eventorientierte Programme sind weit verbreitet. Zu den bekanntesten Beispielen zählen Textverarbeitung, Zeichenwerkzeuge, Tabellenkalkulationen usw..

Die meisten modernen Nachrichtensysteme folgen ebenfalls dem ereignisgesteuerten Muster, während große Websites skalierbare und ereignisgesteuerte Architekturen verteilter Art verwenden. Andere Beispiele sind:

- Eine Taste wurde gedrückt (Texteditor).

- Ein neuer Aufgabenkalender kann an alle Mitarbeiter verteilt werden (Managementsystem).

- HTML-Nachricht empfangen (Webserver).

- Es wurde ein illegales Handelsmuster festgestellt (Betrugserkennung)..

- Ein Auto in einem Computerspiel kollidiert mit einem anderen Auto (Rennspiel).

- Ein Roboter hat sein Ziel erreicht (Lagerverwaltung in Echtzeit).

Arbeitserlaubnis

Ein praktisches Beispiel für ein Ereignis, das in der ereignisgesteuerten Planung verwendet wird, könnte ein Mitarbeiter sein, der eine Arbeitserlaubnis für ein System beantragt. Wenn dieser Mitarbeiter seine Anfrage stellt, aktiviert er eine Benachrichtigung, die zur Genehmigung an den Manager gesendet wird..

Der Manager kann die Details der Anforderung anzeigen, genehmigen oder ablehnen und sie im System aktualisieren, ohne dass zusätzliche Sitzungen gestartet werden müssen.

Einleitung von Maßnahmen

Die Aktionen eines Programms, das den Grundlagen der ereignisorientierten Programmierung folgt, werden durch Ereignisse ausgelöst:

- Hardware.

- Geplant.

- Laufzeit.

- Vom Betriebssystem.

- Ausgelöst durch Benutzeranweisungen, die durch Interaktion mit der GUI des Programms gegeben werden.

Im einfachsten Modus müssen Programmierer die folgende Frage beantworten: "Was soll passieren, wenn ein bestimmtes Ereignis eintritt?".

Die folgende Pseudocode-Routine zeigt, wie ein sehr einfacher Scheduler funktionieren kann. Es besteht aus einer Hauptschleife, die kontinuierlich ausgeführt wird, bis eine Beendigungsbedingung auftritt.

Wenn ein Ereignis auftritt, muss der Scheduler den Ereignistyp bestimmen und einen geeigneten Ereignishandler auswählen oder das Ereignis behandeln, wenn kein geeigneter Ereignishandler vorhanden ist.

Vorteil

Schnellere Verarbeitung

Aufgrund der Weitergabe von Daten zwischen mehreren Prozessoren und Ereignishandlern.

Interaktivität

Dies ist der wichtigste Vorteil der ereignisorientierten Programmierung und verbessert die Benutzererfahrung. Aktuelle Benutzer möchten aktiv teilnehmen und nicht passive Verbraucher bleiben.

Ereignisbasierte Programme helfen Benutzern daher dabei, ihre eigenen Erfahrungen zu navigieren und eine Vielzahl von Optionen ohne voreingestellte Einschränkungen zu erkunden..

Weniger Kodierung von Entscheidungen

Dieser Programmieransatz hat viele Vorteile für alle Beteiligten, da weniger Entscheidungen fest codiert werden müssen als bei herkömmlichen Anwendungen..

Viele Ereignisse werden durch Benutzeraktionen bestimmt, anstatt über eine erweiterte Codierung für alle möglichen Szenarien zu verfügen. Während herkömmliche Anwendungen agieren, reagieren ereignisgesteuerte Anwendungen.

Flexibilität

Perfekt geeignet für aktuelle Software-Engineering-Trends wie Cloud Computing, Microservices und die Notwendigkeit einer besseren Skalierbarkeit mit flexiblen und verteilten Systemen.

Gültige Tickets

Beseitigt die Möglichkeit von Einträgen mit ungültigen Werten. Eine herkömmliche Anwendung stellt eine Frage und ermöglicht dem Benutzer die Eingabe einer Antwort. Ereignisgesteuerte Anwendungen bieten normalerweise eine Reihe von Optionen, entweder als Schaltflächen oder als Dropdown-Menüs..

Einfache Wartung

Die Notwendigkeit, vorhandenen Code beim Hinzufügen oder Entfernen von Modulen zu korrigieren und anzupassen, entfällt. Das System funktioniert unabhängig von einer solchen Einstellung weiterhin reibungslos.

Daher eignet sich diese Programmierung für Anwendungen mit Steuerungsabläufen, die auf einer Reihe interner und externer Ereignisse und nicht auf einer Struktur basieren.

Nachteile

Komplexer Kontrollfluss

Dieser Programmieransatz ist nicht die beste Option für kleine und einfache Anwendungen, da sich die erforderlichen Anstrengungen nicht als sinnvoll erweisen.

Die Entwicklung einer ereignisgesteuerten Anwendung erhöht die Komplexität des Systemdesigns und der Bereitstellung. Dies liegt daran, dass herkömmliche Softwarearchitekturen eher auf anforderungsbasierten Interaktionen als auf ereignisgesteuerten Interaktionen basieren..

Darüber hinaus ist aufgrund der Notwendigkeit unaufhörlich dynamischer Ereignisschleifen ein großer Vorbereitungsaufwand erforderlich..

Es ersetzt nicht die strukturierte Programmierung

Es ist zu beachten, dass die ereignisorientierte Programmierung die traditionelle strukturierte Programmierung nicht ersetzt, sondern nur ergänzt.

Herkömmliche Programmiermethoden sind für das Schreiben des Gesamtprogramms nach wie vor unerlässlich, während die ereignisgesteuerten Codierungselemente nur zum Entwerfen der GUI dienen..

Flexibilität

Die Flexibilität der ereignisorientierten Programmierung, die ihr unbestrittener Vorteil ist, wird in bestimmten Szenarien ebenfalls zum Betrug. Eine dieser Erscheinungsformen ist die Unvorhersehbarkeit eines ereignisorientierten Programms für den Fall, dass es Änderungen aufweist, und eine schwächere Kontrolle über das System im Allgemeinen..

Obwohl Codierer gerne ereignisgesteuerte Programmierung verwenden, um reibungslose Anpassungen vorzunehmen, z. B. das Entfernen oder Hinzufügen einiger Funktionsmodule, können diese Anpassungen zu unerwarteten Änderungen der Funktionalität führen..

Bei der herkömmlichen Programmierung erkennt das System diese Betriebsanomalien sehr schnell und gibt dem Programmierer einen Bericht über ihre Ursachen. In der ereignisgesteuerten Programmierumgebung ist die Erkennung solcher Fehlfunktionen weniger schnell und einfach.

Anwendungen

Da sich die ereignisgesteuerte Programmierung eher als Ansatz als als eine Art Sprache herausstellt, können ereignisbasierte Anwendungen in jeder Programmiersprache erstellt werden..

Die ereignisgesteuerte Programmierung verändert die Welt der Softwareentwicklungsdienste und wird zu einem integralen Bestandteil der heutigen Entwicklung. Die Verbreitung wurde durch Windows und die Verbreitung visueller Umgebungen angeregt.

Ein Fall einer ereignisgesteuerten Situation ähnelt einem Weck-Timer, der für eine bestimmte Aufgabe zu einem bestimmten Zeitpunkt eingestellt ist, z. B. das Klingeln und Kommunizieren von Informationen mit der Aufschrift "Wach auf!"..

Grafische Benutzeroberfläche

Dieser Planungsansatz ist ereignisorientiert. Zu den häufigsten Anwendungsbereichen gehören die Erstellung grafischer Benutzeroberflächen (GUI), Serveranwendungen und die Entwicklung von Multiplayer-Spielen..

Während herkömmliche Programme den Ereignisfluss festlegen und die Kontrolle über Benutzeroptionen haben, diente diese innovativere Programmierung dazu, die GUI zu erstellen.

Die grafische Benutzeroberfläche veränderte die Mensch-Computer-Interaktion, indem sie Benutzern mehrere Optionen in Form von Dropdown-Menüs, Fenstern, Schaltflächen und Kontrollkästchen anbot..

Anstatt der vom Computer festgelegten Reihenfolge der Aktionen zu folgen, können Benutzer daher selbst einen der vielen verfügbaren Befehle auswählen..

Zusätzlich zu dieser Programmierung wird sie häufig in grafischen Benutzeroberflächen angewendet, auch in Anwendungen, die bestimmte Aktionen als Reaktion auf Benutzereingaben ausführen, wie z. B. JavaScript-Webanwendungen..

Verweise

  1. Raspal Chima (2018). Ereignisgesteuerte Anwendungen in der Softwareentwicklung. Blaubeerberater. Entnommen aus: bbconsult.co.uk.
  2. Quorum (2020). Erstellen von Apps - Lektion 1: Einführung in die ereignisgesteuerte Programmierung. Entnommen aus: quorumlanguage.com.
  3. Margaret Rouse (2012). Ereignisgesteuerte Anwendung. Techtarget. Entnommen aus: searchitoperations.techtarget.com.
  4. UK Essays (2018). Ereignisgesteuerte Programmierfunktionen. Entnommen aus: ukessays.com.
  5. Souvik Banerjee (2019). Ereignisgesteuerte Programmierung: Warum ist sie jetzt im Trend? RS Websols. Entnommen aus: rswebsols.com.
  6. Techopedia (2018). Ereignisgesteuertes Programm. Entnommen aus: deckenpedia.com.
  7. Technology UK (2020). Ereignisgesteuerte Programmierung. Entnommen aus: technologyuk.net.

Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.