Waldemar, em projetos pequenos vale a pena o uso intenso de abstrações? Aqui na empresa há sempre discussões acerca desse assunto quando estamos arquitetando algum projeto, sabemos que é tudo questão de tradeoff, mas é realmente complicado achar algum balanço ideal
É como eu falo no video, tem que pensar no crescimento e se tu acha que a abstração for necessário, por exemplo se tu ta certo de usar Mysql mas quer abstrair o Sequelize por exemplo tu pode fazer um Repository pra abstrair a biblioteca mas não precisa classes abstratas nem nada, só um Repository. Acho legal de começar com a mentalidade de tentar desacoplar tua aplicação de bibliotecas externas como sequelize por exemplo e dai se tu acha que precisa abstrair mais dai tu abstrai. Grande abraço!
Waldemar td bem, vc poderia explicar como montar o repository pattern, quando utilizamos prisma? Eu já tentei implementar mais acabo sempre precisando em algum momento utilizar o entity diretamente do prisma, a classe que eu crio não é o suficiente para todos os casos
tambem tentei,mas pelo que vi o prisma não aceita generic,então o defaultRepository não daria certo,se tem um jeito eu não sei,também to querendo saber.
Otima aula. Uma duvida aoh..qdo vc mudou o teste, usou o defaultmongorepo no controller..nao deveria ter usado uma implementacao tipo in memory? Do jeito q fez, ele acessara o banco no teste, nao?
Boa pergunta Bruno! Esses testes são de integração de ponta a ponta, eles batem no banco mesmo, da uma olhada lá, o banco e limpo antes de cada teste. Isso serve para testar toda a rota do início ao fim.
Da pra usar um banco em memória também, pra esses tipos de teste eu prefiro bater no banco de verdade pra garantir que está funcionado toda a integração.
@@WaldemarNetoDevLab perfeito obrigado. Sei que tem um mongo in memory tambem, que acredito ser o meio termo e a melhor opcao. Mas aqui a duvida era mais pelo conceito, tendo a injecao de dependencia, facilita mto os testes. Obrigado!!
@@brunodepaula5293 Sim te entendi, é nos testes de unidade com injeção de dependência fica ótimo para substituir o banco por qualquer coisa. Em testes de ponta a ponta eu gosto de bater no banco mas bancos em memória são bem bons também, principalmente porque tu não precisa do banco de verdade, facilita para por em CI e tal.
Tá loco, olha o nível dessa aula! Sensacional.
Aula boa. Explicação ótima. Parabéns.
Ótima explicação, a parte ali do generics foi perfeito!
Grato por compartilhar o teu conhecimento!
Aula muito boa!!!
Boa tarde, cursão de verdade.
Ótima aula, mais um inscrito.
Aula incrível!
Você poderia fazer um vídeo explicando como você usa o Tmux para abrir as pastas e o código como você tem no vídeo?
Da uma olhada aqui Marcelo ua-cam.com/video/b1zla87JHb8/v-deo.html
Tu é o cara!
Sugestão: Em FilterOptions, funcionaria usar Partial ao invés de Record? acho que ficaria melhor.
Boa!! Deixei essa passar mesmo, Partial fica perfeito ali, quer fazer essa mudança e abrir um PR? Se não eu faço.
Valeu!
Waldemar, em projetos pequenos vale a pena o uso intenso de abstrações? Aqui na empresa há sempre discussões acerca desse assunto quando estamos arquitetando algum projeto, sabemos que é tudo questão de tradeoff, mas é realmente complicado achar algum balanço ideal
É como eu falo no video, tem que pensar no crescimento e se tu acha que a abstração for necessário, por exemplo se tu ta certo de usar Mysql mas quer abstrair o Sequelize por exemplo tu pode fazer um Repository pra abstrair a biblioteca mas não precisa classes abstratas nem nada, só um Repository.
Acho legal de começar com a mentalidade de tentar desacoplar tua aplicação de bibliotecas externas como sequelize por exemplo e dai se tu acha que precisa abstrair mais dai tu abstrai.
Grande abraço!
Waldemar td bem, vc poderia explicar como montar o repository pattern, quando utilizamos prisma? Eu já tentei implementar mais acabo sempre precisando em algum momento utilizar o entity diretamente do prisma, a classe que eu crio não é o suficiente para todos os casos
Boa Gustavo, eu vou publicar uns conteudos com Prisma logo
@@WaldemarNetoDevLab obrigado, vou ficar de olho
tambem tentei,mas pelo que vi o prisma não aceita generic,então o defaultRepository não daria certo,se tem um jeito eu não sei,também to querendo saber.
Otima aula. Uma duvida aoh..qdo vc mudou o teste, usou o defaultmongorepo no controller..nao deveria ter usado uma implementacao tipo in memory? Do jeito q fez, ele acessara o banco no teste, nao?
Boa pergunta Bruno! Esses testes são de integração de ponta a ponta, eles batem no banco mesmo, da uma olhada lá, o banco e limpo antes de cada teste.
Isso serve para testar toda a rota do início ao fim.
Da pra usar um banco em memória também, pra esses tipos de teste eu prefiro bater no banco de verdade pra garantir que está funcionado toda a integração.
@@WaldemarNetoDevLab perfeito obrigado. Sei que tem um mongo in memory tambem, que acredito ser o meio termo e a melhor opcao. Mas aqui a duvida era mais pelo conceito, tendo a injecao de dependencia, facilita mto os testes. Obrigado!!
@@brunodepaula5293 Sim te entendi, é nos testes de unidade com injeção de dependência fica ótimo para substituir o banco por qualquer coisa.
Em testes de ponta a ponta eu gosto de bater no banco mas bancos em memória são bem bons também, principalmente porque tu não precisa do banco de verdade, facilita para por em CI e tal.
Top!
Can you please make Design patterns videos in English