Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apenas por curiosidade #27

Open
leandrofagundes opened this issue Mar 24, 2022 · 4 comments
Open

Apenas por curiosidade #27

leandrofagundes opened this issue Mar 24, 2022 · 4 comments

Comments

@leandrofagundes
Copy link

Sua layer de Application depende do MediatR. Nesse caso, não seria o ideal a application não depender de ninguém?

@rcarneironet
Copy link
Owner

Na realidade o MediatR nem é o problema ali, pois eu uso ele para intermediar o padrão CQRS, não vejo problema dessa dependência no Application.

Mas veja que tenho no Application uma dependência do Entity Framework e isso está errado, na época que fiz esses estudos/poc, deveria ter deixado apenas a abstração e não a implementação concreta. Vou alterar quando tiver tempo ;)

Esses conceitos todos eu migrei pro repositorio "hexagonal architecture", dá uma olhada lá.

@leandrofagundes
Copy link
Author

Sim, cheguei no seu hexagonal pelo seu linkedin e me interessei também por esse do clean.
Na verdade, o mediatr também é uma dependencia. Uma atualização de algo que faz ele parar de funcionar, para toda sua aplicação.
Existem opções já que tornam possível fazer o mesmo que você faz com o Mediatr, sem precisar gerar a depêndencia.
Eu utilizo o FluentMediator, do Ivan.
Recomendo dar uma olhada

https://github.com/ivanpaulovich/FluentMediator

@rcarneironet
Copy link
Owner

@leandrofagundes Você tem total razão. Vou avaliar o FluentMediator do Ivan, ele abstraiu um nivel acima ainda e a dependência não fica explícita (me parece), apenas quando fazemos inversão de controle. Meu entendimento está correto?

@rcarneironet
Copy link
Owner

@leandrofagundes , uma coisa que também fiquei um pouco pensativo é o quanto isso poderia impactar performance, me parece que rola reflection arduamente.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants