Programowanie zdarzeniowe

Słownik kwalifikacji INF.04 - Projektowanie, programowanie i testowanie aplikacji

Programowanie zdarzeniowe to paradygmat, w którym działanie programu zależy od występujących zdarzeń, np. kliknięcia przycisku, wpisania tekstu, odebrania danych z sieci albo upływu czasu.

W takim modelu aplikacja zwykle czeka na zdarzenie, a następnie uruchamia odpowiednią funkcję lub metodę obsługi zdarzenia.

Jak działa programowanie zdarzeniowe?

Typowy schemat działania:

  • użytkownik wykonuje akcję, np. klika przycisk,
  • system wykrywa zdarzenie,
  • uruchamiana jest przypisana procedura obsługi,
  • aplikacja reaguje na działanie użytkownika.

Przykład w JavaScript:

document.querySelector("button").addEventListener("click", function () {
  console.log("Kliknięto przycisk");
});

W tym przykładzie kod nie wykonuje się od razu. Funkcja zostanie uruchomiona dopiero wtedy, gdy wystąpi zdarzenie click.

Programowanie zdarzeniowe a obiektowe

Programowanie zdarzeniowe nie jest tym samym co programowanie obiektowe. Może jednak być z nim łączone.

W aplikacji obiektowej główną rolę pełnią obiekty, czyli instancje klas, które mają dane i metody. W aplikacji zdarzeniowej główny nacisk jest położony na reakcję na zdarzenia.

Przykładowo aplikacja okienkowa może być jednocześnie:

  • obiektowa, bo składa się z obiektów klas,
  • zdarzeniowa, bo reaguje na kliknięcia, wpisywanie tekstu i inne akcje użytkownika.

W kontekście egzaminu

Opis „pętla dyspozytora, która w zależności od zdarzenia wywoła właściwą funkcję” odnosi się bardziej do programowania zdarzeniowego niż do podstawowej definicji aplikacji obiektowej.