Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Identificador como regra de negócio

Imaginando uma situação hipotética, onde o cliente especifica uma regra de negócios para a geração do identificador de uma das classes do domínio.

Ex.: Todo pedido deve possuir um identificador numérico gerado de forma sequencial e nenhum pedido pode possuir o mesmo identificador.

Eu poderia adicionar esse tipo de regra no construtor (ou na factory) da entidade Pedido?

E se o requisito fosse: Todo pedido deve possuir um identificador único.

Eu poderia adicionar uma chamada ao UUID.randomUUID() no construtor/factory da entidade para gerar meu identificador?

Ou eu deveria colocar isso sempre na parte de User Cases ou Infraestrutura?

1 resposta
solução

Oi Evandro,

Interessante a pergunta.

Como isso faz parte do dominio da aplicação, sendo uma das regras de negócio, eu colocaria essa geração na propria classe pedido ou na factory dela.

Isso porque é possível gerar esse identificador aleatório utilizando os próprios recursos da linguagem de programação da aplicação(ex: UUID no Java).

Mas se tivesse que utilizar alguma biblioteca ou algo muito mais complexo, talvez fosse melhor isolar na camada de infra mesmo.

Bons estudos!