inflearn logo
강의

Khóa học

Chia sẻ kiến thức

"Thời đại AI chỉ bằng một cú nhấp chuột" Đột phá bằng nguyên lý Node.js và CS Phần 1 - Giải mã V8 và Core

[Tài liệu tham khảo] Làm chủ thực tế hoàn hảo: 10 mô hình thực tế mạnh mẽ sử dụng EventEmitter

[46강] EventEmitter를 활용한 10가지 패턴 중 플러그인 아키텍처

3

byeong

3 câu hỏi đã được viết

0

사례 2번 예시에서 Plugin 클래스도 EventEmitter를 상속받는 이유가 궁금합니다.

 

Application의 인스턴스를 주입받아 해당 인스턴스를 내부에서 활용하고 있는데 Plugin 클래스 자체도 EventEmitter를 상속받는 이유가 궁금합니다.

javascript node.js 컴퓨터-구조 frontend backend

Câu trả lời 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. byeong님.

플러그인 아키텍처에서 Plugin 클래스가 EventEmitter를 상속받는 이유는 주로 확장성과 모듈성 때문입니다. 즉, Plugin 클래스가 독립적으로 이벤트를 발송하고 수신할 수 있는 기능을 부여받아 자신만의 이벤트 시스템을 관리할 수 있게 됩니다. 이를 통해 Plugin 클래스는 자체적인 이벤트 프로세싱 로직을 가질 수 있으며, 다른 플러그인이나 외부로부터 메시지를 수신하거나, 직접 이벤트를 발송하여 상호작용 할 수 있습니다.

Plugin 클래스가 EventEmitter를 상속받는 장점:

  1. 독립적인 이벤트 처리: Plugin이 자체 이벤트를 관리하는데 유용합니다. 다른 플러그인에서 발생한 이벤트에 대응하거나, 자신의 상태 변경을 이벤트로 외부에 알릴 수 있습니다.

  2. 유연한 상호작용: 앱 전반의 이벤트 시스템에 종속되지 않고, 자체적인 이벤트 흐름을 정의하고 관리할 수 있습니다. 이는 플러그인 간 느슨한 결합을 보장합니다.

  3. 모듈성 및 재사용성: EventEmitter를 이용해 개별 플러그인의 독립성과 모듈성을 확보하면서도, 필요에 따라 이벤트를 통해 상호작용하거나 반응할 수 있는 구조를 가질 수 있습니다.

이러한 설계는 기본적으로 플러그인이 독자적인 기능 단위로 확장성을 제공하면서도, 메인 앱이나 다른 구성 요소와 원활하게 상호작용할 수 있도록 해줍니다. 플러그인 개발자는 필요한 이벤트를 정의하고, 외부로 노출하여 언제든지 메인 프로그램 또는 다른 플러그인과의 통신을 쉽게 설계할 수 있습니다.

이와 관련하여 추가적인 설명이 있는 게시물을 추천합니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

강의가 누락된것 같습니다.

0

31

2

섹션3에 대한 문의사항

0

38

2

쿼터스 스케메틱에 대한 질문

0

24

2

examtopics와 krdumps 차이가 나는데요 ㅠ

0

37

1

추가 강의 있으면 좋겠어요.

0

44

2

용어 발음법이 계속 바뀌는 것 같은데 이런 부분들 개선이 가능할까요...?

0

38

1

vscode 다루는법을 모르겠습니다

0

14

1

counter01.html은 어디있을까요?

1

16

1

리눅스로 진행해도 될까요?

0

31

2

존재하지 않는 일기 url입력 시 alert이 두 번 떠요

0

34

1

useState 직접 구현 부분에서 질문이 있습니다.

1

41

1

FIFO 질문

0

25

2

학습을 하고 블로그에 정리를 해도 괜찮을까요?

1

41

1

Design a Toast Notification System 미션 관련 질문드립니다.

0

62

1

교재(3쇄)와 강의 내용 문의

0

35

2

데이터베이스 13번 문제

0

47

2

섹션2번 부분 강의 화면이 잘 못된것 같아서 문의합니다.

0

23

1

call stack 표현이 잘못표현된것이 아닌가요?

0

79

2

추천해주신 책에 대해 문의드립니다.

0

29

2

혹시 다음 강의 제작 예정된 것들이 있을까요?

0

94

1

1강 질문

0

73

2

ai가 만든 강의인가요?

0

157

1

3강 질문

0

81

2

2강 nodejs 3단계 설명 질문

0

94

1