1. 이벤트
ㅇ 미리 정해지지 않은 시간에 발생되는 것
ㅇ [전산]
- [전산 일반]
. 외부환경으로부터 시스템에 전해지는 메세지 전달,예외(인터럽트,트랩),자극,정보흐름 등
처리가 필요한 사건발생 및 상태변화의 통지를 총칭
. 주로, GUI 환경에서 프로그램과 사용자와의 상호작용에 의해 발생되는 것을 지칭
- [데이터베이스]
. 주로, 테이블 수정시 또는 시간스케쥴링에 의해 활성화됨
ㅇ [확률/통계] ☞ 확률적 사건 참조
- 시간 관점이 아닌 확률실험에서 특정 조건에 만족하는 결과(Outcome,Element)들의 집합
2. [전산] 이벤트 중심(Event-Driven)의 프로그램 이란?
ㅇ GUI 상호작용으로 발생한 이벤트에 따라 순서가 결정되는 그러한 프로그램 방식
※ 콘솔형 프로그램 및 윈도우형 프로그램 비교
- 콘솔형 프로그램 : 주어진 순서대로 이벤트의 순서를 결정
- 윈도우형 프로그램 : 이벤트 발생에 따라 제각각 다르게 작동
. 일반적으로, GUI 어플리케이션 또는 웹 어플리케이션 등을 말함
3. [전산] 이벤트의 생성
ㅇ 이벤트 생성기
- 운영체제, 윈도우관리자, 장치구동기, 응용프로그램(어플리케이션) 등
ㅇ 생성 주체
- 사용자 활동, 네트워크 활동, 상태 변화 등
ㅇ 웹브라우저에서 사용자 이벤트 例) ☞ 자바스크립트 이벤트 종류 참조
- 마우스 이벤트 : click, dblclick, mousemove, mouseover 등
- 키보드 이벤트 : keydown, keyup, keypress 등
- 폼 이벤트 : submit, reset, change, focus, blur 등
- 문서(document)/창(window) 이벤트 : load, resize, scroll, unload 등
- 마우스 휠 이벤트, 드래그 앤 드롭 이벤트, 텍스트 입력 이벤트 등
4. [전산] 이벤트의 파악, 전달
ㅇ 대상 파악 및 전달
- 메뉴를 클릭하거나 마우스를 움직이는 것과 같은 이벤트를,
운영체제 등이 파악하고 있다가, 이를 해당 프로그램에게 알려주게 됨
ㅇ 전달 표현 형식
- 이벤트(사건)은 통상 다음과 같은 형태들로 표현되어 해당 프로그램에게 알려줌
. 사건을 생성하는 주어
. 사건을 묘사하는 목적어
. 행위를 나타내는 동사
5. [전산] 이벤트의 처리
ㅇ 이벤트 처리 과정
- 작성 : 원하는 수행 기능을 갖도록 이벤트 핸들러/이벤트 리스너라는 함수를 작성
- 등록 : 이벤트 핸들러함수를 등록
- 지정 : 해당 요소의 이벤트 속성에 이벤트 핸들러함수를 지정
- 호출 : 특정 이벤트 발생시 지정된 함수를 호출함
ㅇ 이벤트 핸들러 (Event Handler)
- 비동기적으로 발생되는 이벤트에 대한 응답으로 이벤트 핸들러함수가 호출됨
. 이벤트 발생시 이로부터 실제의 실행 코드로 연결하는 작업과
. 그 이벤트에 대해 수행할 적절한 실행 함수(처리기)를 호출하게 됨
ㅇ 이벤트에 대한 전문적/집단적 관리
- 게시자 (publisher)
. 특정 이벤트 발생시에 미리 등록해 놓은 실행 코드를 호출하는 역할
- 구독자 (subscriber)
. 이벤트 대응 실행 코드(이벤트 핸들러)를 준비하여두고,
. 미리 게시자에 이를 등록시켜 놓고,
. 해당 이벤트 발생시 이를 실행시키는 역할