프로그래밍 언어/JAVA

이벤트 기반 프로그래밍

· 코딩마이데이

이벤트 기반 프로그래밍

이벤트 기반 프로그래밍(event drivem programming)은 이벤트의 발생에 의해 프로그램 실행 흐름이 결정되는 방식의 프로그래밍 패러다임입니다. 이벤트는 키 입력, 마우스 클릭, 마우스 드래그 등 사용자의 액션이나, 센서 등 외부 장치로부터의 입력, 네트워크를 통한 데이터 수신, 다른 스레드나 프로그램으로부터의 메시지 수신 등에 의해 발생합니다.

이벤트 기반 응용프로그램은 각 이벤트를 처리하는 이벤트 리스너(event listener)들을 보유하며, 이벤트가 발생할 때마다 리스너가 실행됩니다. 그러므로 프로그램 내의 어떤 코드가 언제 실행될지는 전적으로 이벤트의 발생에 달려있습니다.

 

자바의 이벤트 기반 GUI응용프로그램 구조

이벤트 리스너는 이벤트를 처리하는 프로그램 코드로서 컴포넌트에 연결되어 있어야 작동됩니다.

 

이벤트 소스

이벤트를 발생시킨 GUI 컴포넌트입니다.

 

이벤트 객체

발생한 이벤트에 대한 정보(이벤트 종류, 이벤트 소스, 화면 좌표, 마우스 버튼 종류, 눌러진 키)를 담는 객체로서, 이벤트에 따라 서로 다른 정보가 저장됩니다.

 

이벤트 리스너(Event Listener)

이벤트를 처리하는 코드로서 컴포넌트에 등록되어야 작동 가능하다.

 

이벤트 분배 스레드(Event Dispatch Thread)

이벤트 기반 프로그래밍의 핵심 요소로서 무한 루프를 실행하는 스레드입니다. 자바 가상 기계로부터 이벤트의 발생을 통지받아, 이벤트 소스와 이벤트 종류를 결정하고 이에 따라 적절한 이벤트 객체를 생성하고 이벤트 리스너를 찾아 호출합니다.

'프로그래밍 언어 > JAVA' 카테고리의 다른 글

이벤트 리스너  (1) 2025.06.08
이벤트 객체  (0) 2025.06.05
여러 컴포넌트를 가진 복잡한 GUI 만들기  (5) 2025.06.02
배치관리자 없는 컨테이너  (2) 2025.05.30
GridLayout 배치관리자  (1) 2025.05.27