Laravel

Events & Listeners

Event 생성, Listener 등록, Event dispatch, Event Subscriber, queue 처리된 Listener, Broadcast Event

18 면접 질문·
Mid-Level
1

Laravel에서 Event란 무엇입니까?

답변

Event는 애플리케이션에서 발생한 중요한 동작이나 사건을 나타내는 클래스입니다. 데이터를 담은 메시지 역할을 하며, 느슨하게 결합된 방식으로 여러 Listener가 dispatch하고 수신할 수 있습니다. Event를 사용하면 기존 코드를 수정하지 않고 동작을 추가할 수 있어 Open/Closed 원칙을 지킬 수 있습니다.

2

Artisan으로 Event와 연결된 Listener를 어떻게 생성합니까?

답변

'php artisan make:event' 명령은 Event를 생성하고, 'php artisan make:listener' 명령은 Listener를 생성합니다. --event=EventName 옵션을 추가하면 해당 Event를 받도록 Listener가 자동으로 타입 지정됩니다. 또한 EventServiceProvider에 매핑을 정의한 뒤 'php artisan event:generate'를 실행하면 누락된 모든 Event와 Listener를 자동으로 생성할 수 있습니다.

3

Laravel에서 Event와 Listener 간의 매핑을 어디에 등록합니까?

답변

Event-Listener 매핑은 EventServiceProvider(App\Providers\EventServiceProvider)의 $listen 프로퍼티에서 수행합니다. 각 키는 Event 클래스의 정규화된 전체 이름이고, 값은 Listener의 배열입니다. Laravel 11부터는 PHP 8 속성 #[ListensTo]를 사용한 자동 검색(auto-discovery)으로 수동 등록을 생략할 수도 있습니다.

4

Laravel에서 Event를 dispatch(발생)하려면 어떻게 합니까?

5

Laravel에서 Listener의 기본 구조는 무엇입니까?

+15 면접 질문

다음 면접을 위해 Laravel을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기