minstudio

이벤트 기반 프로그래밍 (EventEmitter)

서로 다른 코드 덩어리들이 강하게 결합되는 것을 막고, "사건(이벤트)이 발생하면 알려줄게!" 방식으로 느슨하게 설계하는 기법입니다. 웹소켓이나 복잡한 비즈니스 로직 분리에 자주 쓰입니다.

const EventEmitter = require("events");
const myEmitter = new EventEmitter();

// 1. 이벤트 구독(수신 대기) - 유저가 가입하면 축하 메일 보내기
myEmitter.on("userSignup", (username) => {
    console.log(`${username}님 가입 환영 메일 발송!`);
});

// 2. 이벤트 발행(트리거) - 실제로 유저가 가입했을 때
console.log("DB에 유저 정보 저장 완료");
myEmitter.emit("userSignup", "김개발"); // 이벤트 발동!
실행 결과
이벤트 기반 프로그래밍 (EventEmitter) | Minstudio