Symfony

Arquitectura Symfony

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

24 preguntas de entrevista·
Senior
1

En la hexagonal architecture, ¿cuál es el rol principal de los ports?

Respuesta

Los ports son interfaces que definen los contratos entre el dominio de negocio y el mundo exterior. Los primary ports (o driving ports) permiten que los actores externos desencadenen acciones en el dominio, mientras que los secondary ports (o driven ports) permiten que el dominio interactúe con infraestructuras externas como bases de datos o servicios de terceros. Esta abstracción permite cambiar la implementación sin afectar al dominio de negocio.

2

¿Qué es un adapter en la hexagonal architecture de Symfony?

Respuesta

Un adapter es una implementación concreta de un port que conecta el mundo exterior con el domain. Por ejemplo, un DoctrineUserRepository es un adapter que implementa el port UserRepositoryInterface. Del lado primario, un controller de Symfony es un adapter que adapta las peticiones HTTP hacia los use cases del domain. Esta separación permite probar el domain de forma independiente de la infrastructure.

3

En el Domain-Driven Design, ¿cuál es la característica principal de un Value Object?

Respuesta

Un Value Object se define por sus atributos y no por una identidad. Dos Value Objects con los mismos valores se consideran iguales. Son inmutables: cualquier modificación crea una nueva instancia. Por ejemplo, un objeto Email o Money son Value Objects típicos. Esta inmutabilidad garantiza la coherencia de los datos y facilita razonar sobre el código en sistemas complejos.

4

¿Cuál es el rol de un Aggregate Root en DDD?

5

¿Qué es un DTO (Data Transfer Object) y cuándo usarlo en Symfony?

+21 preguntas de entrevista

Domina Symfony para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis