概要
イベントドリブンとは、
システムやプログラムが「イベント(出来事)」をきっかけに動作する仕組みや設計思想のことです。
ユーザーの操作(クリックや入力)、外部からの通知、システム内部で発生する状態変化などを
「イベント」として捉え、それを契機に処理が実行されます。
特にGUIアプリケーションやWeb開発、サーバーサイド処理などでよく用いられる考え方です。
正式名称
Event-Driven(イベントドリブン)
略称
特になし
特徴
- イベント待機型:プログラムは常に待機状態にあり、イベントが発生すると処理を開始する。
- 非同期処理と相性が良い:複数のイベントを同時に扱いやすい。
- 柔軟性:ユーザー操作や外部サービスからの通知に即応できる。
- 拡張性:新しいイベントや処理を追加しやすい。
- 制御フローがイベント依存:処理の順序は固定されず、発生したイベントによって決まる。
具体例
- Webブラウザ
ユーザーがボタンをクリックすると、そのクリックイベントに応じてJavaScriptが実行される。 - Node.js
非同期I/O処理をイベント駆動で管理し、大量の同時アクセスを効率的に処理。 - GUIアプリケーション
ウィンドウの閉じるボタンを押すと「終了イベント」が発生してアプリが終了する。 - IoTデバイス
センサーが温度の変化を検知すると、そのイベントを基に警告を発する。
関連用語
用語 | 解説 |
---|---|
非同期処理 | イベントドリブンと組み合わせて使われることが多い。 |
コールバック関数 | イベント発生時に呼び出される処理。 |
イベントループ | イベントを監視し、発生したイベントに対応する処理を呼び出す仕組み。 |
Pub/Sub(発行-購読モデル) | イベント駆動型の代表的なデザインパターン。 |
リアクティブプログラミング | イベントを基盤としたプログラミング手法。 |