#92 Separando Consultas com DAO no CQRS. Refatoração do ERP na Prática | TDD, Build in Public
Refatorador
0:00 / 0:00
#92 Separando Consultas com DAO no CQRS. Refatoração do ERP na Prática | TDD, Build in Public
193 просмотра · 10 дн. назад
Refatorador
1,03 тыс. подписчиков
193 просмотра · 10 дн. назад
CQRS, DAO, SOLID e Clean Architecture: refatoramos o modelo de leitura do ERP, criamos uma interface específica para consultas e integramos o Query Model à API com 129 testes passando.
No episódio anterior, criamos uma consulta que acessava diretamente a conexão com o banco de dados. Agora usamos o DAO para organizar esse acesso e criamos o contrato BankDAOQuery, expondo apenas a operação de listagem necessária ao caso de uso.
Essa mudança aplica o Interface Segregation Principle, o I do SOLID: o consumidor passa a depender de uma interface menor. Reaproveitamos a implementação existente do DAO, ajustamos o retorno para o DTO esperado e conectamos o GetBankListQuery ao controller REST e ao ponto de composição da aplicação.
Também discutimos a diferença entre Repository e DAO, o retorno de DTOs nas consultas e possibilidades futuras para o modelo de leitura, como réplicas, outra fonte de dados e consultas específicas para relatórios e dashboards.
---------------------------------------------------------------------------------------------------------
Estamos refatorando um ERP legado passo a passo, aplicando Clean Architecture, testes automatizados e boas práticas de arquitetura de software.
Hub do Canal: https://refatorador.com
Comunidade (apenas avisos, sem SPAM): https://refatorador.com/whatsapp
Projeto no GitHub: https://github.com/drummerpva/erp
Capítulos
00:00 Consultas, conexão com o banco e alternativas com DAO
00:45 Como direcionar leituras para uma réplica
04:22 Substituindo a conexão direta pelo DAO
07:31 Aplicando segregação de interfaces com BankDAOQuery
09:51 Reaproveitando a implementação existente
12:25 Integrando o Query Model ao controller e ao main
15:22 Repository, DAO e retorno de DTOs
18:41 Refatoração concluída e 129 testes passando
20:40 Consultas por ID, listagens, relatórios e dashboards
SEO
CQRS com DAO, SOLID na prática, Interface Segregation Principle, Clean Architecture, Repository versus DAO, Query Model, modelo de leitura, DTO versus entidade
#programação #refatoração #devbrasil #tdd #CleanArchitecture