Usando funções construtoras NA PRÁTICA em JS

Sdílet
Vložit
  • čas přidán 6. 06. 2024
  • Curso gratuito de programação WEB
    ↪discover.maykbrito.dev
    Nesse vídeo eu vou te ajudar a aprender as funções construtoras no JavaScript de um jeito super fácil.
    Se você ainda não está familiarizado com essa função, primeiro precisa saber que ela nada mais é do que um método especial para criar e inicializar um objeto criado a partir de uma classe.
    Mas fica tranquilo(a) que eu vou te mostrar tudo isso do melhor jeito: na prática!
    Mais conteúdo?
    ↪ maykbrito.dev

Komentáře • 49

  • @hamiceis
    @hamiceis Před 2 měsíci +4

    Que explicação incrível maykão, vi outros vídeos por ai e vc conseguiu explicar de uma forma mais simples e clara

  • @juanrezende7
    @juanrezende7 Před 2 měsíci +2

    Melhor explicação impossível, maykão reina!

  • @maathmatics
    @maathmatics Před 2 měsíci

    que explicação impecável. Mayk é muito bom

  • @gilsonconceicao5201
    @gilsonconceicao5201 Před 2 měsíci +1

    Obrigado. Todo dia um ponto do javascript para aprender.

  • @guilbervieira
    @guilbervieira Před 2 měsíci

    Mayk é incrível para explicar!!!

  • @Cyo4k
    @Cyo4k Před měsícem +1

    pqp o Mayk é um mago mano!

  • @bernardo1496
    @bernardo1496 Před 2 měsíci +1

    Explicação excelente

  • @mateusbruno11
    @mateusbruno11 Před 2 měsíci +3

    Show de bola Mayk, os cara só cospe código nos cursos. Se a Rocketseat usar a mesma metodologia estou interessado!!

    • @maykbrito
      @maykbrito  Před 2 měsíci +3

      Usamos!! Especialmente na trilha Fullstack, onde ensinamos fundamentos🥰

  • @renneruchiha3368
    @renneruchiha3368 Před 2 měsíci +1

    ótima explicação, sempre tive dificuldades para entender

  • @valeriopro228
    @valeriopro228 Před 2 měsíci +18

    class vendo isso: 🤡

  • @canerityalv5214
    @canerityalv5214 Před 2 měsíci

    muito bom

  • @chrisaxxwelldev
    @chrisaxxwelldev Před 2 měsíci

    Ate que você da de cara com um encadeamento insano, ai o bagulho fica doido haha

  • @cristianoSilvaDev
    @cristianoSilvaDev Před 2 měsíci

    boa, isso é bem legal, se puder colocar em casos reais de trabalho fica melhor ainda!
    grande Maykao kkkk

  • @roleplayfugas3880
    @roleplayfugas3880 Před měsícem

    Isso se aplica as metatebles?

  • @g3luka
    @g3luka Před měsícem

    Pois isso que nesse caso é melhor usar class no lugar de function, porque class obriga a sempre ter que dar new na chamada, ao contrário da function que você pode chamar direto e perder o contexto.

  • @brendavit0ria
    @brendavit0ria Před 2 měsíci

    vou me curvar diante de tanta sabedoria 🛐

  • @viniciusbatista7387
    @viniciusbatista7387 Před 2 měsíci

    existe alguma situação em que eu queira usar uma função com new ao invés de uma classe?

    • @jesleycaceresmarcelino1812
      @jesleycaceresmarcelino1812 Před měsícem

      Eu diria que não, essa funcionalidade mostrada é bem antiga, anterior à introdução de classes no javascript. Classes deixam o código mais legível e a intenção mais clara.

  • @EdivanAzeved0
    @EdivanAzeved0 Před 2 měsíci

    Justamente por conta disso que eu gosto muito que as faculdades ensinam POO em java, pois mesmo o maykão sendo um professor de outro mundo, não fica tão visível esses conceitos em js da mesma forma que ficaria visível em java por exemplo.

    • @maykbrito
      @maykbrito  Před 2 měsíci +1

      Verdade! Ainda mais que o Javascript é multi paradigma, ou seja, por não ser full OOP, não se entende OOP com JavaScript como se entenderia com Java. Até pq, no final do dia, Javascript é prototype chain pra qualquer objeto instanciado. ( nesse vídeo eu falo mais sobre isso também czcams.com/video/X6klpqubyBw/video.html )

    • @EdivanAzeved0
      @EdivanAzeved0 Před 2 měsíci

      @@maykbrito Muito interessante, arrumei o conteúdo pra ver durante meu almoço kk. Mas pra saciar a dúvida, o Typescript veio justamente para sanar essa lacuna do js, né?

    • @maykbrito
      @maykbrito  Před 2 měsíci

      @@EdivanAzeved0 Sim, ele procura ajudar um pouco mais. De qualquer forma, o prototype chain ainda existirá, pois é parte do core do JavaScript e mesmo com o TS, a gente não tem um OOP purinho da silva ahhaah, mas já é melhor do que apenas com o JS

  • @danilochgs
    @danilochgs Před 2 měsíci

    Mayk, e quando seria a diferença de trabalhar com uma classe?

    • @danielchaves6265
      @danielchaves6265 Před 2 měsíci

      Quando você precisa usar herança para relacionar métodos entre objetos, deseja utilizar membros privados para encapsular dados sensíveis ou já está familiarizado com linguagens orientadas a objetos como Java, C# e outras, usar classe é uma boa opção.
      Vale a pena ser dito que, Javascript não exige o uso de classes. Internamente classes são convertidas para prototypes que servem como base para objetos instanciados, mas não objetos literais em sí. A escolha entre classes e funções construtora depende do seu projeto, estilo de programação e nível de conforto. Em geral, a diferença entre performace entre os dois é tão pequena que será dificil de perceber. O tamnho do código e a complexidade torna o código mais impactante em performace do que a ferramenta que você escolhe usar.

    • @maykbrito
      @maykbrito  Před 2 měsíci +1

      @@danielchaves6265 falou lindamente! Eu adicionaria a informação de que Class no JavaScript é um syntactic sugar para o Prototype Chain. Eu falo mais nesse vídeo aqui, acho que vc vai gostar Danilo czcams.com/video/X6klpqubyBw/video.html

    • @danielchaves6265
      @danielchaves6265 Před 2 měsíci

      @@maykbrito Vlw mestre, aprendi com o melhor. 💖

  • @principe.borodin
    @principe.borodin Před 2 měsíci

    Fantastico, pra mim JS eh meio ambiguo em varios casos, kkkkk, faltou o constructor, nao?

    • @mao-no-codigo
      @mao-no-codigo Před měsícem

      é só usar classes que todo o conceito de POO funciona tranquilo com JS.

    • @principe.borodin
      @principe.borodin Před měsícem

      @@mao-no-codigo todo nao, pq nao tem extends nem implements.

    • @mao-no-codigo
      @mao-no-codigo Před měsícem

      @@principe.borodin O extends existe sim, agora o abstract realmente só com Typescript.

    • @principe.borodin
      @principe.borodin Před měsícem

      @@mao-no-codigo eu nao falei abstract.

  • @matrizoculta
    @matrizoculta Před 2 měsíci

    na minha humilde opinião e varios artigos comenta sobre isto é que não e legal perder tempo usando THIS pois ele e muito complexo e em escopos encadeados pode gerar bugs complexos e tambem JS não era uma linguagem de OOP tentaram adicionar classes e funções construtoras mas isso so deixo mais osso para quem ta começando da para fazer as mesmas coisa utilizando apenas factory function sem utilizar classes constructor e toda aquelas coisas extend la porem vai de cada um programação utilizando composição e melhor para fazer algo mais sucinto porem as classes permite algo mais gerenciável em larga escala no entanto js continua sendo um linguagem de script assim como Python sempre optem por Funcoes deixa o codigo mais limpo claro utilizando o principio SOLID "UM FUNÇÃO SEMPRE TEM QUE FAZER UM ÚNICA COISA" humildemente esta e minha opnião

    • @matrizoculta
      @matrizoculta Před 2 měsíci

      Quando falo que Js não de OOP era no quesito de utilização de classes construtoras
      pois o PROTOTYPE do JS já é um maravilha

    • @maykbrito
      @maykbrito  Před 2 měsíci

      Costumo pensar que se temos a clareza que JS usa o paradigma de prototype e não é OOP raiz, nem funcional raiz, gente vive mais leve hehe

  • @rafa_elzinh
    @rafa_elzinh Před 2 měsíci +1

    Mano eu ainda nao consegui entender nada :(

    • @maykbrito
      @maykbrito  Před 2 měsíci +2

      Talvez está precisando dar um tempo e ir pegando outros aprendizados, depois voltar a pegar o assunto. Quando eu não entendo algo, eu continuo buscando mais informações e vou com calma comigo mesmo, sabendo que eu posso não entender tudo agora, mas que se eu continuar, com o passar do tempo, eu vou entender

  • @danielchaves6265
    @danielchaves6265 Před 2 měsíci +1

    Ou é factory ou é class, simples xD

    • @maykbrito
      @maykbrito  Před 2 měsíci

      ou tudo é prototype, mais simples ainda hehe

  • @sanciwefersonmendes742
    @sanciwefersonmendes742 Před 2 měsíci +1

    cansei de comprar cursos e nao ter resultados
    Comecei hoje no full stack da rocketseat

  • @gilbmp
    @gilbmp Před měsícem

    Eu não sabia que dava pra usar funções como se fossem classes...

    • @FinnUnter
      @FinnUnter Před měsícem

      Era o mais comum antigamente, uso das funções etc.
      As classes só foram introduzidas no ES6, como a nova forma padrão para esse tipo de objeto com contexto.