A pasta onde se encontra a classe RequisicaoNovoPedido é nomeada como "DTO", MAS o certo não seria FORM? Estou com dúvida na NOMENCLATURA DTO E FORM? ?
A pasta onde se encontra a classe RequisicaoNovoPedido é nomeada como "DTO", MAS o certo não seria FORM? Estou com dúvida na NOMENCLATURA DTO E FORM? ?
Olá Fernando! Tudo bem?
O nome da pasta (ou pacote) seria dto mesmo.
O padrão dto que utilizamos nesse caso, nos ajuda a organizar em um pacote as classes que utilizaremos para realizar o acesso ao banco de dados.
O que chamamos de form geralmente se refere a algumas das classes que costumamos ter nesse pacote DTO. Costumamos chamar de form a classe DTO que é responsável especificamente por realizar os inputs de dados, que geralmente estão associados a um formulário na página web que estamos tratando. Pode acontecer de você encontrar projetos que utilizem outra nomenclatura para esse tipo de classe específica, mas mesmo nesses casos verá que elas estarão associadas ao padrão DTO (Data transfer object).
Vou deixar aqui abaixo um exemplo de como o pacote DTO de um projeto que estou trabalhando atualmente está organizado:
Perceba que dentro do pacote
br.com.livrariaAPI.dto
nós temos as classes DTO do projeto, e junto com essas classes, temos também classesFormDto
, pois essas classes são responsáveis pelo input de dados
Consegui te ajudar a entender melhor a diferença entre DTO e Form?
Vou deixar aqui abaixo algumas fontes de pesquisa que podem te ajudar a entender mais caso deseje:
Wikipedia - DTO (Data transfer object)
Baeldung - The DTO Pattern (Data Transfer Object) em inglês
Se precisar de mais ajuda nesse assunto, é só falar! 😄