Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

VO

O VO seria um DTO?

2 respostas
solução!

Na teoria:

DTO (Data Transfer Object - Objeto de Transferência de Dados) é uma forma que temos de trafegar dados entre as camadas de nossa aplicação. Normalmente possui valores mutáveis (get e set)

VO (Value Object - Objeto de Valor) é um objeto que tem um valor na aplicação, que faz sentido no domínio da mesma, podendo, inclusive ter seu valor imutável (mas isso não é obrigatório, apesar de alguns puritanos dizerem que DEVE ser imutável)

Na prática (só aqui entre nós...) É uma diferença quase que apenas didática, uma vez que o propósito desses dois é Transferir Valor/Dado. Já trabalhei em projetos que usavam VO para transitar dados, e outros que usavam DTO para transitar dados. E nunca vi nenhum óbito por conta disso. É interessante você entender o conceito (primeira parte da minha resposta), mas, cuidado com excesso de preocupação quanto a isso.

Espero ter ajudado

Olá, Rodrigo!

Entendo que você esteja com dúvidas sobre os termos VO (Value Object) e DTO (Data Transfer Object).

Ambos são padrões de projeto que são usados para transferir dados entre subsistemas de um software, mas eles têm diferenças sutis.

Um VO é um objeto que representa um valor com um significado semântico. Por exemplo, na aula, o professor criou o RelatorioDeVendasVo para representar o relatório de vendas. Este objeto tem um significado muito específico e é usado para representar um conjunto de valores como um único objeto.

Por outro lado, um DTO é um objeto que é usado para encapsular dados e passá-los de um componente do sistema para outro. A principal diferença entre um DTO e um VO é que um DTO não possui qualquer comportamento, exceto o armazenamento e recuperação de seus próprios dados (getters e setters).

No contexto da aula, RelatorioDeVendasVo poderia ser considerado tanto um VO quanto um DTO, pois ele é usado para transferir dados de um subsistema para outro (DTO) e representa um valor com um significado semântico (VO).

Espero ter ajudado e bons estudos!