Daniel, a sua classe CustomerData em uma arquitetura limpa seria um repositpory já que a persistencia de dados esta sendo feita por ela? 36:24 Outra duvida seria se vc tem esse projeto no github?
Fala Thiagão, a classe que criei tem a responsabilidade de tratar os dados referente a Customer que daria para ser substituído por pattern Repository. Código: github.com/djesusnet/ExampleMinimalApiDapper
Utilizar procedures (procedimentos armazenados) ao invés de criar queries diretamente no Dapper tem várias vantagens e desvantagens, dependendo do contexto e das necessidades do seu projeto. Aqui estão algumas considerações: 1. **Segurança e Controle de Acesso**: Procedures oferecem uma camada extra de segurança. Eles permitem que você controle o acesso aos dados, executando operações específicas sem dar ao usuário acesso direto às tabelas do banco de dados. 2. **Desempenho**: Procedures são pré-compilados no servidor de banco de dados, o que pode levar a um melhor desempenho, especialmente para operações complexas. Além disso, reduzem o tráfego de rede, pois apenas o nome e os parâmetros da procedure são transmitidos, em vez da query inteira. 3. **Manutenção e Gerenciamento de Código**: Manter o código SQL dentro de procedures facilita a gestão e atualização das lógicas de negócio. Mudanças podem ser feitas no servidor de banco de dados sem necessidade de alterar e redistribuir a aplicação. 4. **Reutilização e Organização**: Procedures promovem a reutilização de código e ajudam a manter uma organização melhor, separando a lógica de negócio da aplicação e do acesso aos dados. 5. **Escalabilidade**: Com procedures, o processamento é feito no servidor de banco de dados, o que pode ser mais eficiente e escalável para certos tipos de operações. Por outro lado, há desvantagens em usar procedures com Dapper: 1. **Complexidade**: Procedures podem adicionar uma camada extra de complexidade, especialmente em sistemas onde a equipe de desenvolvimento não está familiarizada com SQL ou não tem acesso direto ao servidor de banco de dados. 2. **Portabilidade**: Procedures são geralmente específicas para um tipo de banco de dados, o que pode limitar a portabilidade da sua aplicação para diferentes bancos de dados. 3. **Dependência do Banco de Dados**: Tornar-se muito dependente de procedures pode tornar sua aplicação fortemente acoplada ao seu banco de dados, dificultando a mudança para uma nova tecnologia no futuro. Em resumo, a decisão de usar procedures com Dapper depende de vários fatores, incluindo as necessidades específicas do seu projeto, as habilidades da equipe de desenvolvimento, e as características do sistema em que você está trabalhando. Lembrando que foi um exemplo de demonstração no canal ;)
Daniel é um mostro da programção!
Top, simples e objetivo!
Daniel, a sua classe CustomerData em uma arquitetura limpa seria um repositpory já que a persistencia de dados esta sendo feita por ela? 36:24
Outra duvida seria se vc tem esse projeto no github?
Fala Thiagão, a classe que criei tem a responsabilidade de tratar os dados referente a Customer que daria para ser substituído por pattern Repository.
Código: github.com/djesusnet/ExampleMinimalApiDapper
Muito bom o vídeo! Uma dúvida, porque utilizar procedures e não escrever as queries direto no código?
Utilizar procedures (procedimentos armazenados) ao invés de criar queries diretamente no Dapper tem várias vantagens e desvantagens, dependendo do contexto e das necessidades do seu projeto. Aqui estão algumas considerações:
1. **Segurança e Controle de Acesso**: Procedures oferecem uma camada extra de segurança. Eles permitem que você controle o acesso aos dados, executando operações específicas sem dar ao usuário acesso direto às tabelas do banco de dados.
2. **Desempenho**: Procedures são pré-compilados no servidor de banco de dados, o que pode levar a um melhor desempenho, especialmente para operações complexas. Além disso, reduzem o tráfego de rede, pois apenas o nome e os parâmetros da procedure são transmitidos, em vez da query inteira.
3. **Manutenção e Gerenciamento de Código**: Manter o código SQL dentro de procedures facilita a gestão e atualização das lógicas de negócio. Mudanças podem ser feitas no servidor de banco de dados sem necessidade de alterar e redistribuir a aplicação.
4. **Reutilização e Organização**: Procedures promovem a reutilização de código e ajudam a manter uma organização melhor, separando a lógica de negócio da aplicação e do acesso aos dados.
5. **Escalabilidade**: Com procedures, o processamento é feito no servidor de banco de dados, o que pode ser mais eficiente e escalável para certos tipos de operações.
Por outro lado, há desvantagens em usar procedures com Dapper:
1. **Complexidade**: Procedures podem adicionar uma camada extra de complexidade, especialmente em sistemas onde a equipe de desenvolvimento não está familiarizada com SQL ou não tem acesso direto ao servidor de banco de dados.
2. **Portabilidade**: Procedures são geralmente específicas para um tipo de banco de dados, o que pode limitar a portabilidade da sua aplicação para diferentes bancos de dados.
3. **Dependência do Banco de Dados**: Tornar-se muito dependente de procedures pode tornar sua aplicação fortemente acoplada ao seu banco de dados, dificultando a mudança para uma nova tecnologia no futuro.
Em resumo, a decisão de usar procedures com Dapper depende de vários fatores, incluindo as necessidades específicas do seu projeto, as habilidades da equipe de desenvolvimento, e as características do sistema em que você está trabalhando.
Lembrando que foi um exemplo de demonstração no canal ;)
Muito obrigado, tenho algumas questões práticas por acaso tu faz Mentoria ? Como enviar em PVT ?
Me chama pelo LinkedIn, aí conversamos sobre esse assunto .
Boa tarde, como baixo, se possivel, os fontes do video ?
Opa vou disponibilizar, no meu github está noite e aproveita deixa uma estrela no repo ;) !
@pgnutz segue o repo: github.com/djesusnet/ExampleMinimalApiDapper
Já baixei. Vou usar. Necessito usar ef+dapper para autenticação.
Uma dica construtiva, tente falar de forma mais simples, assim incluindo estudantes que não estão em um nível tão avançado na programação! Abraço
Obrigado ;) , estou tentando montar alguns conteúdos para iniciantes