3
respostas

Padrão DTO - Dúvida

Boa noite professor,

Eu gostaria de saber a forma correta de implementar a classe DTO é somente com dados primitivos como as strings que você passou ou posso passar no construtor dela um objeto (ou vários) , onde dentro do DTO eu guarde apenas alguns dados referentes a esse objeto: ex: pegar o telefone e dados bancários de um objeto $pessoa e salvar em variáveis separadas assim como você fez.

Aguardo sua resposta.

3 respostas

DTO significa (Data Transfer Object). É um objeto que transfere dados de uma camada pra outra. Se você utilizar objetos, vai estar conhecendo a camada para onde vai tranferir dados, então perde um pouco o propósito. A ideia é utilizar somente tipos primitivos mesmo. :-)

Ah entendi! Eu tive um problema em um projeto onde eu precisava passar dados de vários objetos diferentes pra ser montado um array como body pra uma api, porém seria uns 6 objetos passados por parâmetro... Então pelo que entendi da sua resposta está correto eu criar um DTO onde eu guardo todas as variáveis primitivas (agencia, digito, salario, etc) e passar no construtor desse DTO os objetos nos quais eu vou extrair seus dados e por nessa variáveis correto?

O DTO não conhece os objetos de forma nenhuma, então ele também não os receberia no construtor. Ele só trabalharia com os tipos primitivos mesmo. No máximo você pode separar e compor DTOs para que tenha objetos menores. :-)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software