Questão FC890618
No âmbito do Domain-Driven Design (DDD), assinale a afirmativa correta a respeito do emprego e das características de Value Objects e Entities.
Modelos de Ciclo de Vida e Metodologias de Desenvolvimento
FGV · 2026
No âmbito do Domain-Driven Design (DDD), assinale a afirmativa correta a respeito do emprego e das características de Value Objects e Entities.
- Um Value Object é projetado com uma identidade única e exclusiva, sendo capaz de sofrer mudanças contínuas de estado ao longo de um grande período de tempo.
- A principal característica de um Value Object é a sua mutabilidade, o que permite que seus atributos internos sejam alterados livremente após a sua criação no sistema.
- A igualdade entre dois Value Objects é determinada pela comparação de seus identificadores, independentemente de quais sejam os valores de seus atributos.
- O design deve priorizar o uso de Value Objects em vez de Entities sempre que possível, pois tipos de valor que medem, quantificam ou descrevem coisas são mais fáceis de criar, testar e manter.
- Os métodos de um Value Object devem, por padrão, produzir efeitos colaterais para que possam modificar seu próprio estado ou o estado de outras Entities com as quais se relacionam.
Mostrar resposta e comentário
Gabarito
D
Comentário do professor
Value Objects devem ser priorizados sempre que possível porque representam atributos que medem, quantificam ou descrevem sem exigir identidade própria. São tipicamente imutáveis e comparados por igualdade por valor, o que reduz bugs e facilita raciocínio sobre o domínio.
Por serem pequenos, autocontidos e sem ciclo de vida complexo, Value Objects são mais fáceis de criar, validar, serializar e testar. Sua imutabilidade torna-os seguros para concorrência e previsíveis em comportamentos.
Usá-los aumenta reutilização e clareza do modelo: regras e validações ficam encapsuladas no próprio tipo de valor, evitando espalhar lógica. Isso reduz acoplamento e torna a manutenção mais simples.
Entidades são necessárias quando a identidade e o ciclo de vida importam, mas sempre que o conceito puder ser tratado como valor, prefira Value Objects para ganhar robustez e simplicidade.
Conteúdo do catálogo FC Concursos · Atualizado em