
Events & Event Subscribers
EventDispatcher, event subscribers, listeners, eventi del kernel, eventi personalizzati, priorità
1Qual è il ruolo principale del componente EventDispatcher in Symfony?
Qual è il ruolo principale del componente EventDispatcher in Symfony?
Risposta
Il componente EventDispatcher implementa il pattern Observer e consente di disaccoppiare diverse parti di un'applicazione. Centralizza la gestione degli eventi permettendo ai listeners di reagire agli eventi dispatchati senza che i componenti si conoscano direttamente. Questo favorisce un'architettura modulare ed estensibile in cui è possibile aggiungere nuove funzionalità senza modificare il codice esistente.
2Qual è la differenza principale tra un Event Listener e un Event Subscriber in Symfony?
Qual è la differenza principale tra un Event Listener e un Event Subscriber in Symfony?
Risposta
Un Event Subscriber implementa EventSubscriberInterface e definisce gli eventi ascoltati tramite il metodo statico getSubscribedEvents(). Un Listener è una classe o un callable configurato tramite services.yaml o l'attributo #[AsEventListener]. I Subscriber sono autodescrittivi e più portabili, mentre i Listener offrono maggiore flessibilità nella configurazione esterna.
3Come dichiarare un Event Subscriber in Symfony con l'interfaccia appropriata?
Come dichiarare un Event Subscriber in Symfony con l'interfaccia appropriata?
Risposta
Un Event Subscriber deve implementare EventSubscriberInterface e definire il metodo statico getSubscribedEvents() che restituisce un array associativo. Le chiavi sono i nomi degli eventi e i valori possono essere il nome del metodo, un array con metodo e priorità, o un array di array per più metodi sullo stesso evento.
Quale evento kernel viene attivato per primo durante l'elaborazione di una richiesta HTTP in Symfony?
Come funziona il sistema di priorità degli eventi in Symfony?
+17 domande da colloquio
Altri argomenti di colloquio Symfony
PHP Moderno (8.1+)
Fondamenti di Symfony
Routing & Controllers
Twig & Templates
Fondamenti di Doctrine ORM
Form Symfony
Validazione dei dati
Dependency Injection & Services
Security & Authentication
Doctrine avanzato
API Platform
Serializer Component
Console & Commands
Messenger Component
HTTP Client
Cache e prestazioni
Workflow Component
Testing Symfony
Mailer Component
Traduzioni e i18n
EasyAdmin Bundle
Architettura Symfony
Performance e ottimizzazione
Sicurezza avanzata
Bundle Personalizzati
Microservices con Symfony
Real-time & WebSockets
Deployment & DevOps
Padroneggia Symfony per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis