
Events & Event Subscribers
EventDispatcher, event subscribers, listeners, eventos del kernel, eventos personalizados, prioridades
1¿Cuál es el rol principal del componente EventDispatcher en Symfony?
¿Cuál es el rol principal del componente EventDispatcher en Symfony?
Respuesta
El componente EventDispatcher implementa el patrón Observer y permite desacoplar distintas partes de una aplicación. Centraliza la gestión de eventos al permitir que los listeners reaccionen a eventos despachados sin que los componentes se conozcan directamente. Esto favorece una arquitectura modular y extensible donde se pueden añadir nuevas funcionalidades sin modificar el código existente.
2¿Cuál es la diferencia principal entre un Event Listener y un Event Subscriber en Symfony?
¿Cuál es la diferencia principal entre un Event Listener y un Event Subscriber en Symfony?
Respuesta
Un Event Subscriber implementa EventSubscriberInterface y define los eventos escuchados mediante el método estático getSubscribedEvents(). Un Listener es una clase o callable configurada mediante services.yaml o el atributo #[AsEventListener]. Los Subscribers son autodescriptivos y más portables, mientras que los Listeners ofrecen más flexibilidad en la configuración externa.
3¿Cómo declarar un Event Subscriber en Symfony con la interfaz apropiada?
¿Cómo declarar un Event Subscriber en Symfony con la interfaz apropiada?
Respuesta
Un Event Subscriber debe implementar EventSubscriberInterface y definir el método estático getSubscribedEvents() que devuelve un array asociativo. Las claves son los nombres de eventos y los valores pueden ser el nombre del método, un array con método y prioridad, o un array de arrays para varios métodos en el mismo evento.
¿Qué evento kernel se desencadena primero al procesar una petición HTTP en Symfony?
¿Cómo funciona el sistema de prioridad de eventos en Symfony?
+17 preguntas de entrevista
Otros temas de entrevista Symfony
PHP Moderno (8.1+)
Fundamentos de Symfony
Routing & Controllers
Twig & Templates
Fundamentos de Doctrine ORM
Formularios Symfony
Validación de datos
Dependency Injection & Services
Security & Authentication
Doctrine avanzado
API Platform
Serializer Component
Console & Commands
Messenger Component
HTTP Client
Cache y Rendimiento
Workflow Component
Testing Symfony
Mailer Component
Traducciones e i18n
EasyAdmin Bundle
Arquitectura Symfony
Rendimiento y optimización
Seguridad avanzada
Bundles Personalizados
Microservices con Symfony
Real-time & WebSockets
Deployment & DevOps
Domina Symfony para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis