1
resposta

[Dúvida] Duvida no minuto 8:00

porque eu deveria fazer um "return mapper.toDomain(entity) " no método cadastrarUsuario, se o próprio método já recebe o UsuarioDomain?

1 resposta

Olá, Daniel. Tudo bem?

Na arquitetura limpa, trabalhamos com diferentes representações de dados em diferentes camadas. O UsuarioDomain é a representação do usuário na camada de domínio, que é independente de como os dados são armazenados ou apresentados. Quando você cadastra um usuário, você está lidando com uma entidade de domínio que precisa ser transformada em uma entidade de persistência (UsuarioEntity) para ser salva no banco de dados.

O método cadastrarUsuario faz essa transformação inicial usando mapper.toEntity(usuario), que converte o objeto de domínio em uma entidade que o JPA pode persistir. Após salvar a entidade no banco, geralmente o repositório retorna a entidade persistida, que pode ter sido modificada (por exemplo, com um ID gerado pelo banco de dados).

Por isso, antes de retornar o resultado do cadastro, é importante transformar novamente a entidade persistida (UsuarioEntity) de volta para um objeto de domínio (UsuarioDomain). Isso garante que a camada de aplicação ou de apresentação continue a trabalhar com a representação correta dos dados.

Em resumo, o uso do mapper.toDomain(entity) no retorno é para garantir que o objeto retornado esteja na forma esperada pela camada de domínio, mantendo a separação de responsabilidades entre as camadas.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!