Symfony

Events & Event Subscribers

EventDispatcher, event subscribers, listeners, 커널 이벤트, 커스텀 이벤트, 우선순위

20 면접 질문·
Mid-Level
1

Symfony에서 EventDispatcher 컴포넌트의 주요 역할은 무엇입니까?

답변

EventDispatcher 컴포넌트는 Observer pattern을 구현하며 애플리케이션의 서로 다른 부분을 분리할 수 있게 합니다. 컴포넌트들이 서로를 직접 알지 못한 채 listeners가 dispatch된 이벤트에 반응할 수 있게 하여 이벤트 관리를 중앙화합니다. 이를 통해 기존 코드를 수정하지 않고도 새 기능을 추가할 수 있는 모듈식이고 확장 가능한 아키텍처가 가능해집니다.

2

Symfony에서 Event Listener와 Event Subscriber의 주요 차이점은 무엇입니까?

답변

Event Subscriber는 EventSubscriberInterface를 구현하고 정적 메서드 getSubscribedEvents()를 통해 수신할 이벤트를 정의합니다. Listener는 services.yaml 또는 #[AsEventListener] 속성으로 구성되는 클래스 또는 callable입니다. Subscriber는 자기 기술적이고 이식성이 높은 반면, Listener는 외부 구성에서 더 많은 유연성을 제공합니다.

3

Symfony에서 적절한 인터페이스를 사용하여 Event Subscriber를 선언하려면 어떻게 해야 합니까?

답변

Event Subscriber는 EventSubscriberInterface를 구현하고 연관 배열을 반환하는 정적 메서드 getSubscribedEvents()를 정의해야 합니다. 키는 이벤트 이름이고 값은 메서드 이름, 메서드와 우선순위를 담은 배열, 또는 동일한 이벤트에 대한 여러 메서드를 위한 배열의 배열이 될 수 있습니다.

4

Symfony에서 HTTP 요청을 처리할 때 가장 먼저 발생하는 kernel 이벤트는 무엇입니까?

5

Symfony의 이벤트 우선순위 시스템은 어떻게 작동합니까?

+17 면접 질문

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

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

무료로 시작하기