Event   사건 , 이벤트

(2024-06-18)

이벤트 모델


1. 이벤트

  ㅇ 주로, 미리 정해지지 않은 시간에 발생되는 것

  ㅇ [전산] 
     - [전산 일반] 
        . 외부환경으로부터 정해지지 않은 시간에, 시스템쪽으로 전해지는,
        . 메세지의 전달,예외(인터럽트,트랩),자극,정보흐름 등에 대해, 
        . `처리가 필요한 사건발생,상태변화의 통지`를 총칭

     - [데이터베이스]
        . 주로, 테이블 수정시 또는 시간 스케쥴링에 의해 활성화됨

  ㅇ [확률/통계]   ☞ 확률적 사건 참조
     - 위와달리, 임의 시간(시간에 구애 받지 않은)에 취해진,
     - 확률실험에서, 특정 조건에 만족하는 결과(Outcome,Element)들의 집합
  

2. [전산]  이벤트 모델 : 이벤트 중심 프로그래밍 (Event-Driven Programing) 이란?

  ㅇ 이벤트 발생을 기다렸다가,
     - 발생시, 미리 준비(등록)해둔 프로그램(작업)을 실행시키는 방식
     - 주로, 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) 또는 이벤트 리스너 (Event Listener)
     - 이벤트 발생시 실행되는 함수
        . 비동기적으로 발생되는 이벤트에 대한 응답으로, 이벤트 핸들러 함수가 호출됨
     - 즉, 이벤트 발생시,
        . 이로부터 실제의 실행 코드로 연결하는 작업과
        . 그 이벤트에 대해 수행할 적절한 실행 함수(처리기)를 호출하게 됨

예외,이벤트 처리
   1. 예외 처리   2. 트랩   3. 인터럽트   4. 이벤트  


"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"