
Architettura Symfony
Hexagonal architecture, DDD, CQRS, repositories, DTOs, value objects, bounded contexts
1Nella hexagonal architecture, qual è il ruolo principale dei ports?
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.
2Che cos'è un adapter nella hexagonal architecture di Symfony?
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.
3Nel Domain-Driven Design, qual è la caratteristica principale di un Value Object?
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.
Qual è il ruolo di un Aggregate Root in DDD?
Che cos'è un DTO (Data Transfer Object) e quando usarlo in Symfony?
+21 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
Events & Event Subscribers
Console & Commands
Messenger Component
HTTP Client
Cache e prestazioni
Workflow Component
Testing Symfony
Mailer Component
Traduzioni e i18n
EasyAdmin Bundle
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