Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Sobre Ouvinte GeradorDeSelos como usecase na camada de aplicacao

Ola, Considerando que o GeradorDeSelor e um ouvinte (handler) interessado em eventos do tipo ALUNO_MATRICULADO. Ele nao deveria estar em gamificacao.dominio.selo.evento ?

1 resposta
solução!

Olá Eduardo,

Obrigado por compartilhar sua dúvida conosco! É sempre importante entendermos como organizar nossos códigos de forma apropriada para garantir a manutenção e escalabilidade do nosso sistema.

Respondendo à sua pergunta, na verdade, o GeradorDeSelos não deveria estar na camada de domínio (dominio.selo.evento), pois ele não representa uma entidade de domínio. O GeradorDeSelos é uma classe de aplicação que tem como responsabilidade gerar selos para os alunos com base em eventos que ocorrem no sistema.

O correto seria colocar o GeradorDeSelos na camada de aplicação (aplicacao.gamificacao) e fazer com que ele escute os eventos do tipo ALUNO_MATRICULADO que são gerados na camada de domínio. Assim, sempre que um evento desse tipo ocorrer, o GeradorDeSelos será acionado e poderá gerar os selos correspondentes.

É importante lembrar que, na arquitetura em camadas, a camada de domínio não deve depender de nenhuma outra camada. Portanto, a camada de domínio não deve conhecer a existência da camada de aplicação. Em vez disso, a camada de aplicação deve conhecer a camada de domínio e utilizar os serviços e entidades de domínio que ela disponibiliza.

Espero ter ajudado!