Construindo aplicações com Nest.js e Clean Architecture

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ธ.ค. 2024

ความคิดเห็น • 27

  • @flaviolucas8337
    @flaviolucas8337 3 หลายเดือนก่อน +1

    Para quem como eu só precisava da parte de Clean Architecture, ela começa na minutagem: 01:12:00

  • @luczztem
    @luczztem ปีที่แล้ว +11

    mano do céu na moral to impressionado com a qualidade dessa aula, boa demais nmrl mesmo

    • @argentinaluiz
      @argentinaluiz ปีที่แล้ว +2

      Opa! Muito obrigado pelo feedback! Fico feliz que tenha gostado da aula!

  • @paulocavalheirodeveloper1213
    @paulocavalheirodeveloper1213 5 หลายเดือนก่อน +1

    Ótimo conteúdo, eu já estava estudando arquitetura hexagonal e tinha um projeto feito em Nest, alguns ajustes e consegui deixar ele bem padronizado.

  • @danielsangelo4344
    @danielsangelo4344 ปีที่แล้ว +2

    pica demais essa aula! Valeu, Luiz! Parabéns pela didática

    • @argentinaluiz
      @argentinaluiz ปีที่แล้ว +1

      Opa Daniel, show de bola! Muito obrigado pelo seu feedback!

  • @raphaelcomph-dev
    @raphaelcomph-dev ปีที่แล้ว +7

    A aula foi muito boa, porém reparei 2 pequenas falhas nessa arquitetura em relação ao que prega o Clean Architecture. Nessa arquitetura criada, os usecases ficaram relativamente isolados da tecnologia (os "detalhes" que Uncle Bob comenta), contudo ainda ficaram com dependência do framework Nest p/ injeção; agora as entidades, que deveriam ser o coração do software e serem totalmente isoladas do detalhes, ficaram extremamente dependentes do TypeORM com as annotations.

    • @argentinaluiz
      @argentinaluiz ปีที่แล้ว +4

      Olá Raphael, tudo bem?
      Obrigado pelo seu feedback, em um determinado momento da aula eu comentei sobre isto.
      Podemos usar uma abordagem purista do Clean Arch, fazendo os uses cases e outros coisas totalmente isoladas, mas podemos usar uma abordagem não purista, aplicando o que ele diz no livro sobre quebra parcial da arquitetura, em que ele diz que os arquitetura por alguma conveniência podemos quebrar determinadas regras.
      Numa aplicação que iríamos desenvolver inicialmente só com Nest, uma abordagem não purista pode ser interessante.
      Entendeu a ideia?

    • @raphaelcomph-dev
      @raphaelcomph-dev ปีที่แล้ว +2

      @@argentinaluiz Sim, entendi. Obrigado pela resposta!

    • @diogoluizzzzzz
      @diogoluizzzzzz 11 หลายเดือนก่อน +1

      Muito boa essa provocação, não somente a injeção de dependências e a questão do typeORM, até mesmo a controller, usando a própria forma de criar controller do nest já gera uma dependência tb, num conceito purista controller do nest (cria a api) e controller do clean são coisas diferentes e a controller num sentido purista tb deveria ser feita abstrata ao framework, agora o questionamento é: É necessário esse nível de purismo no nosso dia a dia de trabalho ? A longo prazo é saudável e não vai atrapalhar no time to market?

    • @pauloguillen9838
      @pauloguillen9838 10 หลายเดือนก่อน

      7😮​@@raphaelcomph-dev

  • @rodolpho.leal.2077
    @rodolpho.leal.2077 ปีที่แล้ว

    Excelente conteúdo!! Obrigado por compartilhar este conhecimento. Ganhou um seguidor. Abraço!!

  • @meguinha8103
    @meguinha8103 ปีที่แล้ว

    as melhores aulas sempre aqui

  • @jorgevalentzeferino
    @jorgevalentzeferino 10 หลายเดือนก่อน

    @argentinaluiz que ferramenta você está usado para fazer o autocomplete? tanto em .ts como tabém na command line? value, conteudo top demais

  • @DiegoRodrigues06
    @DiegoRodrigues06 ปีที่แล้ว +5

    Como criar um projeto com uma arquitetura baseada em desacoplamento utilizando um framework altamente opinativo? Nem as entidades desse projeto aí estão livres de dependência, o que por sí só já fere o clean Arquitecture não? se tirar o Nest desse projeto o que sobra no code base que rodaria em outro framework ou outra versão? É nisso que eu penso quando desenvolvo algo utilizando clean arq.

    • @leonardonunesfreitas1547
      @leonardonunesfreitas1547 3 หลายเดือนก่อน

      por isso gosto da fastify, não tem toda essa dependência do frame

  • @ph_martell
    @ph_martell 6 หลายเดือนก่อน

    uma duvida, começei um projeto basico para entender melhor mas cabei tendo uma duvida, se eu tenho um authController como vou fazer o login, importo um use-case que está vindo do user ou eu crio use-case no auth e importo repository do user ?

  • @jhonatanteixeirarios710
    @jhonatanteixeirarios710 ปีที่แล้ว +2

    Alguém sabe dizer se é possível rodar o Nest com Bunjs e se existe ganho de performance?

    • @luizaugustosilvadossantos8175
      @luizaugustosilvadossantos8175 ปีที่แล้ว +1

      Tem sim amigo. Ainda não testei, mas o Bun já suporta

    • @DiegoRodrigues06
      @DiegoRodrigues06 ปีที่แล้ว +1

      Eu segui essa aula com Bun e deu pau no drive do slite. Instalando com bun install o nest não reconheceu e não fez a conexão. Mas eu instalei com NPM e continuei executando com bun e estava rodando tudo certinho

  • @gustavoribeiro3003
    @gustavoribeiro3003 11 หลายเดือนก่อน

    A implementação das entidades não está muito dependente do typeorm, ferindo os princípios da arquitetura limpa?
    Digo isso pensando no que prega o DDD, que as entidades são o coração e devem ser totalmente independentes da camada de infra, de forma que fiquem protegidas. A entidade project.entity ta mais pra uma model do typeorm do que pra uma entidade com as suas regras de negócio.
    Outra duvida que tbm fiquei pensando foi que o project.service.ts tbm ta muito acoplado com o typeorm. Quando chamamos o método find() ou findOneOrFail() por exemplo, estamos indo direto na implementação do typeorm, e não em uma abstração intermediária.
    Foram algumas dúvidas que fiquei pensando, não sei se estou certo. Caso alguém saiba e queira esclarecer melhor, será muito bem vindo!

    • @gustavoribeiro3003
      @gustavoribeiro3003 11 หลายเดือนก่อน

      a resposta ta logo a seguida no video hahaha

  • @buenodev
    @buenodev ปีที่แล้ว +1

    fiquei tentando fazer junto pra praticar e simplesmente gastei muito tempo tentando configurar ambiente, teve um dado momento q deu erro de sqlite_constraint no project.name e eu não entendi o que tava errado... Não consegui me adaptar a essa dinâmica de aula.

    • @argentinaluiz
      @argentinaluiz ปีที่แล้ว

      Opa! O erro significa que nenhum valor está sendo passado para o campo name de project. Este campo é definido como not null, então é obrigatório passar algum valor para ele.

    • @gabrielbudkesousa
      @gabrielbudkesousa ปีที่แล้ว

      Tive o mesmo problema e contornei a situação realizando a chamada por um client como Insomnia ou Postman. Depois percebi que o script do arquivo api.http estava com um pequeno erro de sintaxe. Não sei se é o seu caso, mas sugiro verificar algo assim

  • @diretoaoponto9870
    @diretoaoponto9870 ปีที่แล้ว +1

    Grande Mestre Wesley, cara cria um projeto de whatsapp com integração PIX com retorno. Eu pagaria por um projeto assim... Venda de um produto, tipo vídeo, por exemplo, o camarada paga com pix e envia o vídeo automaticamente.