# Events & Event Subscribers (Symfony) > EventDispatcher, event subscribers, listeners, event kernel, event kustom, prioritas - 20 pertanyaan wawancara - Mid-Level - [Pertanyaan Wawancara: Symfony](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara.md) ## 1. Apa peran utama komponen EventDispatcher di Symfony? **Jawaban** Komponen EventDispatcher mengimplementasikan Observer pattern dan memungkinkan pemisahan berbagai bagian aplikasi. Ia memusatkan pengelolaan event dengan memungkinkan listeners bereaksi terhadap event yang di-dispatch tanpa komponen saling mengenal secara langsung. Hal ini mendorong arsitektur yang modular dan dapat diperluas di mana fitur baru dapat ditambahkan tanpa mengubah kode yang ada. ## 2. Apa perbedaan utama antara Event Listener dan Event Subscriber di Symfony? **Jawaban** Sebuah Event Subscriber mengimplementasikan EventSubscriberInterface dan mendefinisikan event yang didengarkan melalui metode statis getSubscribedEvents(). Listener adalah kelas atau callable yang dikonfigurasi melalui services.yaml atau atribut #[AsEventListener]. Subscriber bersifat self-descriptive dan lebih portabel, sementara Listener menawarkan lebih banyak fleksibilitas dalam konfigurasi eksternal. ## 3. Bagaimana cara mendeklarasikan Event Subscriber di Symfony dengan interface yang sesuai? **Jawaban** Sebuah Event Subscriber harus mengimplementasikan EventSubscriberInterface dan mendefinisikan metode statis getSubscribedEvents() yang mengembalikan array asosiatif. Kuncinya adalah nama event dan nilainya bisa berupa nama metode, array berisi metode dan prioritas, atau array dari array untuk beberapa metode pada event yang sama. ## 17 pertanyaan lagi tersedia - Event kernel mana yang dipicu pertama kali saat memproses permintaan HTTP di Symfony? - Bagaimana sistem prioritas event bekerja di Symfony? Daftar gratis: https://sharpskill.dev/id/login ## Topik wawancara Symfony lainnya - [PHP Modern (8.1+)](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/php-modern-features.md): 20 pertanyaan, Junior - [Dasar-dasar Symfony](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/symfony-basics.md): 25 pertanyaan, Junior - [Routing & Controllers](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/routing-controllers.md): 20 pertanyaan, Junior - [Twig & Templates](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/twig-templates.md): 20 pertanyaan, Junior - [Dasar-dasar Doctrine ORM](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/doctrine-orm-basics.md): 25 pertanyaan, Junior - [Formulir Symfony](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/forms.md): 22 pertanyaan, Junior - [Validasi Data](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/validation.md): 18 pertanyaan, Junior - [Dependency Injection & Services](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/dependency-injection.md): 24 pertanyaan, Mid-Level - [Security & Authentication](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/security-authentication.md): 26 pertanyaan, Mid-Level - [Doctrine Tingkat Lanjut](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/doctrine-advanced.md): 24 pertanyaan, Mid-Level - [API Platform](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/api-platform.md): 22 pertanyaan, Mid-Level - [Serializer Component](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/serializer.md): 20 pertanyaan, Mid-Level - [Console & Commands](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/console-commands.md): 18 pertanyaan, Mid-Level - [Messenger Component](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/messenger.md): 22 pertanyaan, Mid-Level - [HTTP Client](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/http-client.md): 18 pertanyaan, Mid-Level - [Cache & Performa](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/cache.md): 20 pertanyaan, Mid-Level - [Workflow Component](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/workflow.md): 18 pertanyaan, Mid-Level - [Testing Symfony](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/testing.md): 22 pertanyaan, Mid-Level - [Mailer Component](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/mailer.md): 16 pertanyaan, Mid-Level - [Terjemahan & i18n](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/translations.md): 16 pertanyaan, Mid-Level - [EasyAdmin Bundle](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/easyadmin.md): 18 pertanyaan, Mid-Level - [Arsitektur Symfony](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/architecture-patterns.md): 24 pertanyaan, Senior - [Performa & Optimasi](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/performance-optimization.md): 22 pertanyaan, Senior - [Keamanan Lanjutan](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/security-advanced.md): 22 pertanyaan, Senior - [Custom Bundle](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/custom-bundles.md): 20 pertanyaan, Senior - [Microservices dengan Symfony](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/microservices.md): 22 pertanyaan, Senior - [Real-time & WebSockets](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/real-time.md): 18 pertanyaan, Senior - [Deployment & DevOps](https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/deployment-devops.md): 20 pertanyaan, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/id/technologies/symfony/pertanyaan-wawancara/events-subscribers