# Architettura Symfony (Symfony) > Hexagonal architecture, DDD, CQRS, repositories, DTOs, value objects, bounded contexts - 24 domande da colloquio - Senior - [Domande da colloquio: Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio.md) ## 1. Nella hexagonal architecture, qual è il ruolo principale dei ports? **Risposta** I ports sono interfacce che definiscono i contratti tra il dominio di business e il mondo esterno. I primary ports (o driving ports) consentono agli attori esterni di innescare azioni nel dominio, mentre i secondary ports (o driven ports) consentono al dominio di interagire con infrastrutture esterne come database o servizi di terze parti. Questa astrazione permette di cambiare l'implementazione senza influire sul dominio di business. ## 2. Che cos'è un adapter nella hexagonal architecture di Symfony? **Risposta** Un adapter è un'implementazione concreta di un port che fa da ponte tra il mondo esterno e il domain. Ad esempio, un DoctrineUserRepository è un adapter che implementa il port UserRepositoryInterface. Sul lato primary, un controller Symfony è un adapter che adatta le richieste HTTP ai use case del domain. Questa separazione consente di testare il domain in modo indipendente dall'infrastructure. ## 3. Nel Domain-Driven Design, qual è la caratteristica principale di un Value Object? **Risposta** Un Value Object è definito dai suoi attributi e non da un'identità. Due Value Object con gli stessi valori sono considerati uguali. Sono immutabili: qualsiasi modifica crea una nuova istanza. Ad esempio, un oggetto Email o Money sono tipici Value Object. Questa immutabilità garantisce la coerenza dei dati e facilita il ragionamento sul codice nei sistemi complessi. ## Altre 21 domande disponibili - Qual è il ruolo di un Aggregate Root in DDD? - Che cos'è un DTO (Data Transfer Object) e quando usarlo in Symfony? Registrati gratis: https://sharpskill.dev/it/login ## Altri argomenti di colloquio Symfony - [PHP Moderno (8.1+)](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/php-modern-features.md): 20 domande, Junior - [Fondamenti di Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/symfony-basics.md): 25 domande, Junior - [Routing & Controllers](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/routing-controllers.md): 20 domande, Junior - [Twig & Templates](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/twig-templates.md): 20 domande, Junior - [Fondamenti di Doctrine ORM](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/doctrine-orm-basics.md): 25 domande, Junior - [Form Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/forms.md): 22 domande, Junior - [Validazione dei dati](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/validation.md): 18 domande, Junior - [Dependency Injection & Services](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/dependency-injection.md): 24 domande, Mid-Level - [Security & Authentication](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/security-authentication.md): 26 domande, Mid-Level - [Doctrine avanzato](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/doctrine-advanced.md): 24 domande, Mid-Level - [API Platform](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/api-platform.md): 22 domande, Mid-Level - [Serializer Component](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/serializer.md): 20 domande, Mid-Level - [Events & Event Subscribers](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/events-subscribers.md): 20 domande, Mid-Level - [Console & Commands](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/console-commands.md): 18 domande, Mid-Level - [Messenger Component](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/messenger.md): 22 domande, Mid-Level - [HTTP Client](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/http-client.md): 18 domande, Mid-Level - [Cache e prestazioni](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/cache.md): 20 domande, Mid-Level - [Workflow Component](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/workflow.md): 18 domande, Mid-Level - [Testing Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/testing.md): 22 domande, Mid-Level - [Mailer Component](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/mailer.md): 16 domande, Mid-Level - [Traduzioni e i18n](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/translations.md): 16 domande, Mid-Level - [EasyAdmin Bundle](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/easyadmin.md): 18 domande, Mid-Level - [Performance e ottimizzazione](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/performance-optimization.md): 22 domande, Senior - [Sicurezza avanzata](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/security-advanced.md): 22 domande, Senior - [Bundle Personalizzati](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/custom-bundles.md): 20 domande, Senior - [Microservices con Symfony](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/microservices.md): 22 domande, Senior - [Real-time & WebSockets](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/real-time.md): 18 domande, Senior - [Deployment & DevOps](https://sharpskill.dev/it/technologies/symfony/domande-colloquio/deployment-devops.md): 20 domande, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/it/technologies/symfony/domande-colloquio/architecture-patterns