Prisma vs TypeORM: Qual é o melhor ORM para o Node.js?

Поділитися
Вставка
  • Опубліковано 11 гру 2024

КОМЕНТАРІ • 92

  • @WaldemarNetoDevLab
    @WaldemarNetoDevLab  9 місяців тому +6

    Não esqueçam de comentar qual ORM vocês utilizam e como é a experiência de vocês com ele 🚀

  • @junqueiratec
    @junqueiratec 9 місяців тому +7

    Bom dia, aqui na minha empresa ja utilizamos typeorm,prisma,sequelize, sem duvida o typeorm te da mais controle e prima mais facilidade, so que ambos sempre dependentes etc, o fizemos novos projetos grandes é utilizar Knex com schema nosso criado ou seja nosso orm, com hooks etc, e pronto não usamos mais orms de mercado so nosso agora.

  • @karlmalone3603
    @karlmalone3603 9 місяців тому +11

    Cara, nunca tinha visto uma análise tão bem feita entre esses dois ORMs. Sensacional!

  • @vhbschlichting
    @vhbschlichting 9 місяців тому +1

    Rodrigo Santoro verso é real! Cara que conteúdo bom, um amigo meu me enviou e eu fiquei triste por estar usando o prisma em um projeto, não por ele nao dar conta, mas pelas quantidades de queries que você mostrou que ele chuta pro banco de dados. Obrigado pela aula!

  • @mateusleal1254
    @mateusleal1254 9 місяців тому +5

    Prisma é legal demais, muito facil e rapido de implementar.... agora pessoal ta gostando muito do Drezzle ORM... q é mais leve e performatico...

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому

      Pois é, já fiz alguns testes, mas ainda não utilizei em produção.

    • @LuisGustavo-um4hs
      @LuisGustavo-um4hs 9 місяців тому

      achei muito bom o Drezzle, mas segue o mesmo esquema do prisma, muito malabarismo de tipo pra deixar as coisas genéricas

  • @omarcospreviato
    @omarcospreviato 9 місяців тому +2

    Gostei do seu vídeo e concordo com tudo que disse, atualmente tenho usado o Prisma mesmo em grandes projetos pois gosto da experiência de desenvolvimento dele. Torço pra que ele continue melhorando, acompanho de perto o desenvolvimento e vejo que os desenvolvedores e a comunidade é bem engajada...

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому +3

      Eu também, eles tem um time grande e muito recurso, e uma grande ambição, tomara que mantenham esse ritmo, vai sair coisa muito boa dai!

  • @matheusdalmolindasilva8673
    @matheusdalmolindasilva8673 9 місяців тому +7

    Vi alguns artigos falando sobre o drizzle e os benefícios que ele tem em comparação com o Prisma, desde type safety até custo nos recursos de banco de dados.
    Já ouviste falar do drizzle?

    • @GabrielMarques-xl4uz
      @GabrielMarques-xl4uz 9 місяців тому +1

      Já tive uma pequena experiência com o drizzle orm, em comparação com o Prisma não tem quase nenhuma curva de aprendizagem, principal beneficio que vi foi rodar em local serveless, e poder usar os Prepared statement na execução de querys.

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому +1

      Ja fiz alguns testes mas não usei em produção ainda, mas vou utilizar assim que tiver a oportunidade.

  • @felipe7454
    @felipe7454 9 місяців тому +1

    E aí, Waldemar. Saudades dos seus vídeos, cara! Aqui onde eu trabalho usamos typeORM por uns 5 anos, muito robusta apesar de alguns bugs chatos. Tentamos o prisma e caímos em vários problemas por exemplo esse dos joins que você citou. Atualmente estamos testando o kysely e até que tá rolando. Vamos ver. Valeu!

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому

      E aii! Massa! Depois compartilha mais sobre a experiencia com o kysely. Ele é um query builder né?

  • @wilsonllucena
    @wilsonllucena 9 місяців тому +1

    Parabéns pela análise me ajudou demais numa decisão técnica !

  • @joaolages5496
    @joaolages5496 2 місяці тому

    Parabéns pelo video. Estou usando o Prisma para aplicações menores, gosto muito e sua análise foi exatamente o que eu imaginava.

  • @diegosantossaradinho
    @diegosantossaradinho 9 місяців тому +3

    Esqueceram do Mikro-orm, na empresa que trabalho adotamos em massa, destaco as features Enterprises como unit of work e hooks, alem de ser bem estável e bem mantido com correções de bugs e novas features.

  • @dhyonemolina5487
    @dhyonemolina5487 9 місяців тому +1

    Muito boa essa analise, já utilizei o Prisma em 3 projetos e se comportou super bem e a experiencia foi senssacional, lembrando que esse projetos não exigia muita complexidade nas requisição ao banco, logo se comportou super bem. Pretendo continuar usando em projetos menores com baixa complexidade.

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому +1

      Perfeito! Para projetos menores é tranquilo de usar mesmo!

  • @GuilhermeAlexandreLescanoTeixe
    @GuilhermeAlexandreLescanoTeixe 8 місяців тому

    É isso, vou continuar no typeorm e futuramente começo usar o prisma

  • @victor.josviak
    @victor.josviak 5 місяців тому +1

    Pra quem gosta do typeorm recomendo usar o mikroOrm a implementação é quase idêntica e tem mais suporte

  • @diorgeneseugenio7599
    @diorgeneseugenio7599 9 місяців тому +2

    Waldemar é monstro demais! 🚀

  • @rafabiton1
    @rafabiton1 8 місяців тому

    Baita vídeo, parabéns pela didática

  • @ViniciusMinettoO
    @ViniciusMinettoO 9 місяців тому

    Muito bom! Excelente vídeo, eu utilizo Sequelize gosto dele sempre me ajudou muito a agilizar o desenvolvimento.

  • @ercioalendre
    @ercioalendre 9 місяців тому +1

    Boa! Muito bom conteúdo como sempre. 👏👏👏

  • @rodrigopacheco44
    @rodrigopacheco44 9 місяців тому +1

    @WaldemarNetoDevLab que tal fazer um experimento nesse projeto com o DrizzleORM, pra ver como ele se sai com performance e em larga escala? Seria uma conteúdo muito bom de ver. Parabéns pelo vídeo 👏

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому +2

      Pois é to pensando em fazer, mas vou tentar colocar ele em um projeto em produção atras de uma feature flag pra ver dados reais.

  • @jorge.r.almeida
    @jorge.r.almeida 9 місяців тому +1

    opa achei seu canal muito interessante, poderia analisar o sequelize vs typeORM?

  • @alessandrogold
    @alessandrogold 9 місяців тому

    Eu uso typeorm há alguns anos, e antes com java o hibernate. Um framework que gostei (na teoria) mas nunca usei foi o kysely, principalmente quanto ao seu construtor de consulta sql.

  • @paolorr
    @paolorr 9 місяців тому

    Otima analise 👏👏
    Nao gostei do prisma desde a primeira vez q vi; aqueles schemas achei mto estranho. Ja usei o typeorm e gostei, mas em um projeto recente decidi nao usa-lo pela falta de atualizacoes, e optei pelo sequelize. Bom saber q voltaram a manter o typeorm

  • @klebermachado4473
    @klebermachado4473 9 місяців тому +14

    Pra quem veio do PHP utilizando Eloquent, sempre tem essa impressão que os ORMs para Node.js são muito limitados.

    • @felipegamax
      @felipegamax 9 місяців тому

      Realmente

    • @marcos-ferreira1305
      @marcos-ferreira1305 8 місяців тому

      Eloquent é um monstro

    • @AlexCastroDev
      @AlexCastroDev 7 місяців тому +1

      experimenta o Lucid

    • @klebermachado4473
      @klebermachado4473 7 місяців тому

      @@AlexCastroDev eu utilizo com Adonis.js, mas nem de longe ele possui os mesmos recursos que o Eloquent

    • @AlexCastroDev
      @AlexCastroDev 7 місяців тому

      @@klebermachado4473 pois é, pra mim rails é o melhor entre eles.

  • @ofabiobaptista
    @ofabiobaptista 7 місяців тому

    Parabéns pelo vídeo .. ótimo para a galera que só vai na hype e não faz seus testes e verificações

  • @victorfeldhaus6015
    @victorfeldhaus6015 9 місяців тому

    Atualmente utilizo o prisma e outro ORM interno da empresa

  • @manoellopes211
    @manoellopes211 3 місяці тому

    Nos meus projetos eu sempre fui de generalizar pouco então essa questões do Prisma sobre não conseguir criar repositórios genéricos, nunca me incomodou. Os principais pontos negativos dele pra mim eram não conseguir separar os schemas em arquivos diferentes e o problema dos joins, porém o time está ciente e trabalhando para resolver esses problemas. O que sempre me incomodou bastante no TypeORM, e em outros, era eu precisar definir o schema do banco e escrever sql nas migrations, sempre me pareceu desnecessário, pra mim o schema deveria ser a fonte de vdd e as migrations totalmente automáticas baseadas no schema, além de facilitar a manutenção não tendo que declarar tudo duas vezes, melhora muito a segurança de tipos no projeto.

  • @omelkdesousa
    @omelkdesousa 9 місяців тому +1

    Um ponto a mais sobre o Prisma é que ele tem sua propria engine. Isso acaba sendo um problema para a galera do serverless. Enquando os demais ORMs e Query Builders acabam sendo apenas uma layer sobre os drivers. Hoje em dia, como alternativa ao Prisma, prefiro o Drizzle. Em aplicações mais robustas, sem dúvidas, Typeorm.

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому

      Ótimo ponto, essa engine própria para mim é um grande problema, além de ser uma caixa preta ela tenta reimplementar os banco invés de deixar a responsabilidade do banco para o banco.

  • @websolucoes6569
    @websolucoes6569 4 місяці тому

    Eu uso o Prisma

  • @MarcusTorres-zv5cv
    @MarcusTorres-zv5cv 6 місяців тому

    O prisma tem me trazido problemas numa aplicacao remix pequena justamente por conta disso que voce falou de nao ter joins. Estou analisando a possibilidade de mudar pro drizzle

  • @JoaoVictor-vs8zk
    @JoaoVictor-vs8zk 23 дні тому

    Olá, bom noite. Pode explicar o motivo de criar sua própria classe repository e não usar direto a do próprio framework?

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  21 день тому +1

      Claro da uma olhada nesse meu video ua-cam.com/video/PV7nJWMbtro/v-deo.htmlsi=XS1ZMt8aOLfUkzZk

  • @marquesbot
    @marquesbot 9 місяців тому

    Drizzle ORM facilita com tipagem mas é bem similar ao SQL, basicamente vc escreve SQL e tem tipagem

  • @silveiratalita
    @silveiratalita 5 місяців тому

    Eu sinceramente, gosto do TypeORM, desde 2019 eu uso ele na maior parte dos projetos, na época a briga era sequelize vs TypeORM, e sinceramente, não tem comparação né gente, o Typeorm é mto melhor que o sequelize, fora que na época, ele era incompatível com projetos typescript. Agora, o Prisma, eu não gostei na da experiência de forma geral, achei meio complexo, enfim, continuo usando TypeORM, não penso em mudar.

  • @matheusteixeira4161
    @matheusteixeira4161 9 місяців тому

    Qual sua opinião sobre o Sequelize? Aqui na empresa usamos o Sequelize em todos os projetos.

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому +1

      Matheus, faz um tempo que não vejo o Sequelize, quando aparace Typescript ele ficou para trás devido à falta de suporte a tipos e depois acabei não voltando nele. Não sei como está hoje.
      Eu achava ele ok, uma coisa que não gostava é que a maioria das queries padrões dele eram ruins, tinha que sempre refazer na mão.

  • @samusaw
    @samusaw 9 місяців тому

    Conteúdo de primeira! O que acha do Sequelize? Os joins do sequelize e query raw são bacana.

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому

      Faz um tempo que não utilizo mais ele, ele tinha ficado para traz na tipagem e a experiência de desenvolvimento, não se se melhorou.

  • @gabrielmedeiros9806
    @gabrielmedeiros9806 9 місяців тому +1

    Cada ano que passa, falo mais em não utilizar orm, escreve suas queries na mão que vai ser mais de boa.
    Essas parada de orm só da b/o dps de um tempo, não é a atoa que na comunidade de golang, a galera usa mto mais sem o orm.
    Eu uso o typeorm no dia a dia, particulamente até tenho uma experiência boa, mas quando tem algo realmente complexo sempre da um trabalho, perco um tempão vendo doc, forum e os caraio.
    Já em relação o prisma, nunca dei uma chance dps de ver uns posts em relação a problema de performace que ele apresentava, acho que atualmente mta coisa melhorou, mas ainda me deixa com um pé atrás.
    Estamos em uma época de mta informação, mta opção e smp tem gente querendo reinventar a roda e caindo na moda no mundo dev, quando vão ver, dps de um tempo só aumenta o trampo e fica cheio de efeitos colaterais negativos. Sem contar que adotar um orm também significa manter essa lib no projeto, fazer um update de lib como essas smp é uma doidera, difícil achar um corajoso em um projeto real e envolvendo grana querer fazer isso, sem contar a empresa focar nisso.
    Apesar de n ter tanto na área já pude notar claramente esses pontos

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому +2

      Concordo, eu ja utilizei bastante knex, que é somente um query builder e fiz o resto eu mesmo, no repositório eu hidratava minhas próprias entidades. É mais código, mas bem mais seguro e controlável.
      Mas exige maturidade.

  • @ItachiGamer21
    @ItachiGamer21 5 місяців тому

    video muito top mano, já sou desenvolvedor backend a 3 anos utilizando principalmente o typeorm junto com o Nestjs, e por mais que como vc disse no video o Typeorm n esteja tendo tanto suporte quanto o prisma eu sinto que nada me falta no Typeorm sabe, nunca cheguei a ter uma situação onde precisei fazer algo que o typeorm n me desse suporte, acredito que isso conta bastante, talvez o ciclo de updates e nova features do typeorm n seja tão grande justamente pela maturidade que ele alcançou, posso ta falando bobeira mas queria deixar essa visão, n sei se vc tem video sobre isso mas poderia fazer um do sequelize ? recentemente trabalhei em projetos com ele e foi um pouco de choque ver um orm um pouco mais "primitivo", no caso esta utilizando ele por um problema aparente do Typeorm q n conseguimos concertar, aproveitar e deixar aqui uma pergunta, o Typeorm consegue entender um contexto de cluster de conexões de banco de dados e encaminhar a pool de conexões para o banco com menos trafego automaticamente ? tipo certos problemas com isso a ponto de precisar configurar um tempo limite pequeno para fechar a conexão do usuario e forçar o realojamento para uma conexão saldável

  • @ramontiago159
    @ramontiago159 9 місяців тому

    curti o vídeo, e acho o type-orm massa, mais estou com uma dúvida.
    como você trabalha com transaction usando vários repositories?
    pensei em uma abordagem, mais não sei se é o ideal, seria. oque seria criar a transação e chamar o repositório chamando a transação, no repositórioi eu verifico se a mesma foi recebida, em caso positivo eu e faça a operação com ela, de outra forma, eu faça a opção normalmente.
    qual seria a forma ideal de ser fazer?

  • @gustavolol3
    @gustavolol3 9 місяців тому +1

    Waldemar é a primeira vez q tomo decisões em um projeto de software e optei pelo Kysely (query builder). Não uso ORM . Posso ser surpreendido com dificuldades no futuro ?

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому +2

      Cara um query builder como kysely ou knex sempre vai ser mais seguro que um orm mas vai escrever mais código.

  • @EwertonDutra
    @EwertonDutra 9 місяців тому

    Uso o lucid 🙂😁

  • @afsdab
    @afsdab 9 місяців тому +4

    Do jeito que está indo é melhor usar o driver do banco direto kkkkk

  • @joaoviitor9021
    @joaoviitor9021 7 місяців тому

    Rapaz, eles são top, mas eu gosto muito de fazer projetos com o knex.

  • @WillianMattos
    @WillianMattos 7 місяців тому

    Cara, parabéns pelo vídeo. Fiquei com vontade de fazer o seu curso, mas desanimei com esse negócio de ter que pagar por mês pra ter acesso a uma plataforma. Eu só queria pagar um preço à vista pelo curso mesmo. Não tem como?

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  7 місяців тому

      Opa Willian, vai sim! Mês que vem vai estar disponível para compra. Me segue aqui ou no insta (waldemar.devlab) que vou anunciar. Estamos trabalhando nos detalhes finais.

  • @vagnerlandio
    @vagnerlandio 9 місяців тому

    Alpha: TypeORM
    Beta: Prisma
    Stable: Dizzle

  • @lucascoliveira3957
    @lucascoliveira3957 7 місяців тому

    E o drizzle?

    • @DoggCatcher
      @DoggCatcher 7 місяців тому

      Melhor que os 2, depois que conheci todos meus projetos pessoais to usando

    • @lucascoliveira3957
      @lucascoliveira3957 7 місяців тому

      @@DoggCatcher pq melhor q os dois?

  • @caiohenrique1624
    @caiohenrique1624 9 місяців тому

    Onde aprendo essa estrutura f*da igual desse projeto?

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому

      Vem pra comunidade 😉 link tá na descrição do vídeo 👊🏼

  • @bim-techs
    @bim-techs 9 місяців тому

    Waldemar, pra ter acesso ao curso completo só sendo membro do Tech Leads Club ?

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому +1

      Por enquanto, sim, pois o curso ainda não foi lançado então só os membros têm acesso ao código e ao que está sendo desenvolvido.
      Depois eu vou liberar partes grátis e outras partes vão ficar somente na comunidade.

  • @mariodoncel1916
    @mariodoncel1916 9 місяців тому

    Mais alguns problemas do Prisma, o que no momento na minha visão atrelado aos ponto que tu ja citou faz ser inadmissivel ser usado em produção.
    - Sem rollback customizavel. Alias rollback e prisma nao sao palvras que combinam em nada
    - Necessidade de escrever SQL puro para manipular dados dentro de uma migration
    - Impossibilidade de se conectar a diferentes instancias de banco de dados nativamemte conforme sua necessidade (exemplo: instancia de escrita e leitura)
    - Seeds caem nos mesmos problemas dos rollbacks.
    - Necessidade de manter seu schema em um unico arquivo, quando vc tem um numero consideravel de entidades vira uma zona
    - A criacao automatica de relacionamentos dentro do schema em alguns casos mais atrapalha do que ajuda

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому

      Ótimos pontos! Isso do schema é um problema mesmo, eu inclusive trabalho muito com monolito modular e fica um inferno gerenciar schemas de varios módulos juntos.

  • @devtalksbrasil
    @devtalksbrasil 4 місяці тому +2

    Eu juro que eu tento, mas até hoje tudo o que eu vejo tem objetivo de chegar no que existe há quase 20 anos, no caso aqui pelo que vejo, daqui uns 10 anos eles conseguem chegar no que o Hibernate do Java já faz há 20 anos..... Começaram a usar JS no backend com nodeJS porque queriam "simplificar" o backend trazendo o cara do front para o backend na mesma linguagem, viram a merda que fizeram, aí ao invés de abandonar isso, NÃO!!! inventaram o TYPESCRIPT, que deixa o JS tipado e mais "parecido" com o java, aí começaram a trazer os frameworks tradicionais para o TS também, ou seja, é uma roda gigante indo e voltando p/ o mesmo lugar... Sinceramente, aos novos, se não for front end, estudem java que vcs vão ter o melhor de tudo, porque nesse contexto ninguém inventa nada novo, é só narrativa.....

  • @evertonverton6428
    @evertonverton6428 9 місяців тому

    mas o curso esta com prisma 🤔🤔

    • @WaldemarNetoDevLab
      @WaldemarNetoDevLab  9 місяців тому

      Sim no fim decidimos manter o Prisma em algumas partes para ter exemplo de comparação entre eles. Como é uma arquitetura modular, deixamos o Prisma somente em um módulo.

  • @Leozinhopirado167
    @Leozinhopirado167 9 місяців тому

    TypeORM

  • @balllaz
    @balllaz 6 місяців тому

    Drizzle!

  • @jsdev5362
    @jsdev5362 9 місяців тому

    Boa!

  • @evertonverton6428
    @evertonverton6428 9 місяців тому +4

    Nada substitui um SQL bem feito

  • @LeonardoBeliloMessias
    @LeonardoBeliloMessias 9 місяців тому +1

    sql na unha

  • @hermersonaraujo9378
    @hermersonaraujo9378 9 місяців тому

    knexjs >

  • @GabrielLopesbiutas
    @GabrielLopesbiutas 9 місяців тому

    Nenhum deles, Drizzle, tenho usado e tem se provado melhor que Prisma e TypeORM.

  • @lgustavosmc
    @lgustavosmc 9 місяців тому

    Sequelize

  • @cardeal1389
    @cardeal1389 9 місяців тому +1

    Prisma é para mulheres... Feliz dia 8 de março a todas as mulheres.

  • @SohaaTitanio
    @SohaaTitanio 20 днів тому

    Agora vejo muitos projetos sendo criado com PrismaJS e NextJS. O NextJS possibilita criar backend e frontend na mesma aplicação? semelhante ao Django e Laravel?