Symfony

Architecture Symfony

Hexagonal architecture, DDD, CQRS, repositories, DTOs, value objects, bounded contexts

24 questions d'entretien·
Senior
1

Dans l'architecture hexagonale, quel est le rôle principal des ports ?

Réponse

Les ports sont des interfaces qui définissent les contrats entre le domaine métier et le monde extérieur. Les ports primaires (ou driving ports) permettent aux acteurs externes de déclencher des actions dans le domaine, tandis que les ports secondaires (ou driven ports) permettent au domaine d'interagir avec les infrastructures externes comme les bases de données ou les services tiers. Cette abstraction permet de changer l'implémentation sans affecter le domaine métier.

2

Qu'est-ce qu'un adaptateur dans l'architecture hexagonale Symfony ?

Réponse

Un adaptateur est une implémentation concrète d'un port qui fait le lien entre le monde extérieur et le domaine. Par exemple, un DoctrineUserRepository est un adaptateur qui implémente le port UserRepositoryInterface. Côté primaire, un contrôleur Symfony est un adaptateur qui adapte les requêtes HTTP vers les use cases du domaine. Cette séparation permet de tester le domaine indépendamment de l'infrastructure.

3

Dans le Domain-Driven Design, quelle est la caractéristique principale d'un Value Object ?

Réponse

Un Value Object est défini par ses attributs et non par une identité. Deux Value Objects avec les mêmes valeurs sont considérés comme égaux. Ils sont immutables : toute modification crée une nouvelle instance. Par exemple, un objet Email ou Money sont des Value Objects typiques. Cette immutabilité garantit la cohérence des données et facilite le raisonnement sur le code dans les systèmes complexes.

4

Quel est le rôle d'un Aggregate Root en DDD ?

5

Qu'est-ce qu'un DTO (Data Transfer Object) et quand l'utiliser dans Symfony ?

+21 questions d'entretien

Maîtrise Symfony pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement