# Користувацькі бандли (Symfony) > Створення бандлів, конфігурація extension, compiler passes, повторно використовувані бандли, найкращі практики - 20 питань зі співбесід - Senior - [Питання зі співбесід: Symfony](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy.md) ## 1. Який клас має розширювати головний клас бандла в Symfony? **Відповідь** Головний клас бандла Symfony має розширювати AbstractBundle (Symfony 6.1+) або Bundle. AbstractBundle рекомендується, оскільки спрощує конфігурацію та дозволяє визначати конфігурацію безпосередньо в класі бандла через метод configure(). Bundle залишається доступним для зворотної сумісності, але AbstractBundle пропонує сучасніший API. ## 2. Яка роль класу Extension у бандлі Symfony? **Відповідь** Клас Extension (що розширює ConfigurableExtension або Extension) відповідає за завантаження конфігурації бандла та реєстрацію сервісів у контейнері. Він читає файли конфігурації бандла, обробляє параметри застосунку та налаштовує сервіси через ContainerBuilder. Він реалізує метод load(), який викликається під час компіляції контейнера. ## 3. Яка конвенція іменування для головного класу бандла з назвою AcmePaymentBundle? **Відповідь** За конвенцією Symfony головний клас бандла повинен мати таку саму назву, як і бандл. Для AcmePaymentBundle головним класом буде AcmePaymentBundle, і він має знаходитися у відповідному просторі імен, зазвичай Acme\PaymentBundle. Тому файл буде AcmePaymentBundle.php у папці src/ бандла. ## Ще 17 доступних питань - Що таке Compiler Pass у Symfony і коли його використовувати? - Як визначити семантичну конфігурацію для бандла з перевіркою параметрів? Зареєструйся безкоштовно: https://sharpskill.dev/uk/login ## Інші теми співбесід Symfony - [Сучасний PHP (8.1+)](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/php-modern-features.md): 20 запитань, Junior - [Основи Symfony](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/symfony-basics.md): 25 запитань, Junior - [Routing & Controllers](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/routing-controllers.md): 20 запитань, Junior - [Twig & Templates](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/twig-templates.md): 20 запитань, Junior - [Основи Doctrine ORM](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/doctrine-orm-basics.md): 25 запитань, Junior - [Форми Symfony](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/forms.md): 22 запитань, Junior - [Валідація даних](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/validation.md): 18 запитань, Junior - [Dependency Injection & Services](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/dependency-injection.md): 24 запитань, Mid-Level - [Security & Authentication](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/security-authentication.md): 26 запитань, Mid-Level - [Doctrine для просунутих](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/doctrine-advanced.md): 24 запитань, Mid-Level - [API Platform](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/api-platform.md): 22 запитань, Mid-Level - [Serializer Component](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/serializer.md): 20 запитань, Mid-Level - [Events & Event Subscribers](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/events-subscribers.md): 20 запитань, Mid-Level - [Console & Commands](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/console-commands.md): 18 запитань, Mid-Level - [Messenger Component](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/messenger.md): 22 запитань, Mid-Level - [HTTP Client](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/http-client.md): 18 запитань, Mid-Level - [Cache та продуктивність](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/cache.md): 20 запитань, Mid-Level - [Workflow Component](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/workflow.md): 18 запитань, Mid-Level - [Testing Symfony](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/testing.md): 22 запитань, Mid-Level - [Mailer Component](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/mailer.md): 16 запитань, Mid-Level - [Переклади та i18n](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/translations.md): 16 запитань, Mid-Level - [EasyAdmin Bundle](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/easyadmin.md): 18 запитань, Mid-Level - [Архітектура Symfony](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/architecture-patterns.md): 24 запитань, Senior - [Продуктивність та оптимізація](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/performance-optimization.md): 22 запитань, Senior - [Розширена безпека](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/security-advanced.md): 22 запитань, Senior - [Microservices із Symfony](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/microservices.md): 22 запитань, Senior - [Real-time & WebSockets](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/real-time.md): 18 запитань, Senior - [Deployment & DevOps](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/deployment-devops.md): 20 запитань, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/custom-bundles