# Архітектура Symfony (Symfony) > Hexagonal architecture, DDD, CQRS, repositories, DTOs, value objects, bounded contexts - 24 питань зі співбесід - Senior - [Питання зі співбесід: Symfony](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy.md) ## 1. Яка основна роль ports у hexagonal architecture? **Відповідь** Ports — це інтерфейси, що визначають контракти між бізнес-доменом і зовнішнім світом. Primary ports (або driving ports) дозволяють зовнішнім акторам запускати дії в домені, тоді як secondary ports (або driven ports) дозволяють домену взаємодіяти із зовнішньою інфраструктурою, як-от бази даних чи сторонні сервіси. Ця абстракція дозволяє змінювати реалізацію, не впливаючи на бізнес-домен. ## 2. Що таке adapter у hexagonal architecture Symfony? **Відповідь** Adapter — це конкретна реалізація port, яка з'єднує зовнішній світ із domain. Наприклад, DoctrineUserRepository — це adapter, що реалізує port UserRepositoryInterface. На primary-боці controller Symfony є adapter'ом, який адаптує HTTP-запити до use case'ів domain. Таке розділення дозволяє тестувати domain незалежно від infrastructure. ## 3. Яка основна характеристика Value Object у Domain-Driven Design? **Відповідь** Value Object визначається своїми атрибутами, а не ідентичністю. Два Value Object з однаковими значеннями вважаються рівними. Вони незмінні: будь-яка зміна створює новий екземпляр. Наприклад, об'єкт Email або Money є типовими Value Object. Ця незмінність гарантує узгодженість даних і полегшує міркування про код у складних системах. ## Ще 21 доступних питань - Яка роль Aggregate Root у DDD? - Що таке DTO (Data Transfer Object) і коли його використовувати в 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 - [Продуктивність та оптимізація](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 - [Користувацькі бандли](https://sharpskill.dev/uk/technologies/symfony/pytannia-spivbesidy/custom-bundles.md): 20 запитань, 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/architecture-patterns