12. Generics - Mini-curso de TypeScript

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

КОМЕНТАРІ • 67

  • @Minserfodalio
    @Minserfodalio 10 місяців тому

    cara que explicação perfeita! Parabéns Willian, obrigado por compartilhar seu conhecimento.

  • @vedovelli
    @vedovelli 4 роки тому +19

    Excelente aula! =D Muito bem explicado!

  • @danielstonebuilt1265
    @danielstonebuilt1265 2 роки тому +1

    Topzera a aula hem

  • @edwilsondasilva9946
    @edwilsondasilva9946 3 роки тому

    Parabéns pela explicação. Mas claro que isso e ainda não vi!

  • @matheusmoreira3167
    @matheusmoreira3167 Рік тому

    sua didática é excelente, demorei mt p entender, quando vi seu video ficou bem mais claro, explicação mt melhor do q muitos canais maiores q vi pelo YT, parabens!!

  • @guilhermeluis9302
    @guilhermeluis9302 3 роки тому +1

    Que professor top!

  • @alexandrealfa3664
    @alexandrealfa3664 3 роки тому

    Muito Obrigado William, demais Cara!!

  • @666thales666
    @666thales666 4 роки тому +1

    Parabéns, não restou dúvida. Curti muito.

  • @juniortenorio9967
    @juniortenorio9967 2 роки тому

    Aula Sensacional!

  • @gabrielaugusto6001
    @gabrielaugusto6001 3 роки тому

    Didática muito boa!

  • @unfollow3703
    @unfollow3703 2 роки тому

    Show \o/ de bola essa aula! Didática perfeita, Parabéns!!!

  • @andersonnascimento6612
    @andersonnascimento6612 4 роки тому +7

    Ficou excelente a construção do pensamento e didática!
    Como eu estava na dúvida ao ver isso no React, essa questão da flexibilidade e depois impedir que seja alterado para outro tipo, ajudou muito.

  • @marciocorrea7168
    @marciocorrea7168 4 роки тому +2

    Parabéns por disponibilizar um conteúdo tão bom, ótima didática!

    • @WillianJustenCursos
      @WillianJustenCursos  4 роки тому

      Eu quem agradeço o suporte =D
      E se puder se inscrever no canal, ajuda demais!

  • @allanina
    @allanina 2 роки тому +1

    William, você é incrível! Entendi tudo da aula, não achei tão complexo graças a sua didática! Parabéns pelo trabalho incrível e muito obrigada!

  • @CaiqueMoraes93
    @CaiqueMoraes93 4 роки тому +3

    Só tenho a agradecer. Excelente explicação.
    Eu conhecia 10% do uso do Genereics. Não fazia ideia que dava pra fazer extends ou usar um valor default. Excelente vídeo, ansioso pelos próximos.

  • @ickerock
    @ickerock Рік тому

    Irmão, simplesmente genial! Estava sofrendo demais para conseguir entender este conceito, mas com este vídeo eu entendi tudo! Sua didática é incrível, cara. Parabéns!

  • @marcelorafael23
    @marcelorafael23 3 роки тому +3

    Cara, que aula excelente, completa e perfeita. Muito obrigado e Deus abençoe seu caminho.

  • @TrinoAlexandre
    @TrinoAlexandre 3 роки тому +1

    Willian, obrigado, cara.. Eu assisti dois cursos da UDEMY e não entendi bem. Esse vídeo foi ACLARADOR!!! Realmente top!!!!

  • @mateusmedeiros8025
    @mateusmedeiros8025 3 роки тому +1

    Fala Willian, tudo bem? parabéns pelo conteúdo. Ótima didática, obrigado por compartilhar conosco. Abraços!

  • @alex2010mbatera
    @alex2010mbatera 2 роки тому

    Ajudou muito, mano! Parabéns pelo conteúdo. Acompanho o seu trampo já tem um bom tempo, pra mim é sempre tudo muito claro e útil.

  • @felipezymor9970
    @felipezymor9970 4 роки тому +1

    Só agora consegui entender Typescript da forma correta, sua didática é excepcional! Estava avaliando adquirir o curso React Avançado, e agora tenho certeza que irei adquirir. Muito obrigado pelo conhecimento compartilhado.

  • @gutemberguemascarenhas7890
    @gutemberguemascarenhas7890 4 роки тому

    Melhor explicação de Generics que eu vi

  • @rafaelfaj
    @rafaelfaj 4 роки тому +1

    Excelente Willian, sua didática e simplicidade são ótimas 👍

  • @thiagofigueredo1551
    @thiagofigueredo1551 3 роки тому +1

    Ótima Didática!

  • @vctdiniz
    @vctdiniz 4 роки тому +2

    Muito bom Willian!
    Obrigado pelo vídeo e pela sua didática simples e direta.

  • @alexandrepellegrino2699
    @alexandrepellegrino2699 3 роки тому

    didatica do will eh sensacional

  • @jcalazans1989
    @jcalazans1989 4 роки тому +1

    Ótima explicação. Parabéns pelo vídeos.

  • @VacationRaphael
    @VacationRaphael 4 роки тому +1

    Mto bom! continue colocando conteudo assim pra community! concordo mto que generics eh complicado, principalmente a sintaxe e os ternarios com o extends

  • @mateusbzerra
    @mateusbzerra 4 роки тому +1

    Parabéns Willian, muito bem explicado 👏🏻

    • @WillianJustenCursos
      @WillianJustenCursos  4 роки тому

      Muiiito obrigado!
      E se puder se inscrever no canal, vai ajudar ainda mais a continuar com os vídeos!

  • @jbplays2541
    @jbplays2541 3 роки тому

    Rapaziada, se alguém não conseguiu entender eu pensei numa analogia daora, pense nesse generics sendo os parâmetros de uma função, só que ao invés de quem ta usando a função definir valores para entrar na função, essa pessoa vai definir tipos para serem usados na função

  • @iurylemos2020
    @iurylemos2020 3 роки тому

    Top demais! Obrigado professor

  • @andrefelipechannel
    @andrefelipechannel 4 роки тому +1

    Excelente!

    • @WillianJustenCursos
      @WillianJustenCursos  4 роки тому +1

      Muiiito obrigado!
      E se puder se inscrever no canal, vai ajudar ainda mais a continuar com os vídeos!

  • @ocodigodebarra
    @ocodigodebarra 2 роки тому +1

    ta aí a importância do C/C++
    quem conhece Templates em C++ vai se familiarizar bastante com esses Generics

    • @WillianJustenCursos
      @WillianJustenCursos  2 роки тому

      Sim, lembra demais a estrutura mesmo, mas só não confundir pois não são exatamente a mesma coisa xD

  • @salvimateus
    @salvimateus 4 роки тому +2

    Explicação mto boa!

  • @tuufe
    @tuufe 3 роки тому

    muito bom

  • @hberto
    @hberto 4 роки тому +1

    Ótima explicação! 👏🏻

  • @luiz-goncalves
    @luiz-goncalves 4 роки тому +1

    Ótima explicação, Willian! :)

    • @WillianJustenCursos
      @WillianJustenCursos  4 роки тому

      Muiiito obrigado!
      E se puder se inscrever no canal, vai ajudar ainda mais a continuar com os vídeos!

    • @luiz-goncalves
      @luiz-goncalves 4 роки тому +1

      @@WillianJustenCursos :D

  • @lucasmarcelo8839
    @lucasmarcelo8839 2 роки тому

    Por que as vezes no genéric, é colocado o símbolo " : " depois dos parenteses. Exemplo
    function foo(arg: type) : type {
    }
    Por que se coloca " : type" na frente dos parênteses?

    • @joaosantana8422
      @joaosantana8422 2 роки тому +1

      Esse :type é o tipo de retorno da função. Se a gente for traduzir:
      function foo(arg: t2) : t3 { }
      função Foo genérica no tipo t1, que aceita um argumento do tipo t2, e retorna um valor do tipo t3. O retorno da função não necessariamente precisa ser do seu tipo genérico. Por exemplo, você pode ter uma função function Sum(...args: T) : number {}, por exemplo, que trabalha com o tipo genérico T porém retorna apenas números.
      E no código, você poderia ter um tipo type Alphanum = string | number, e usar a função das seguintes maneiras:
      Considerando que a função possui a lógica de parsear uma string em números, temos:
      let soma = Sum (13, "22", 17); // retorna o valor 52 corretamente
      soma = Sum(13, 22, 17); // retorna o valor 52 corretamente
      soma = Sum(13, "22", 17); // erro
      soma = Sum("13", "22", "17"); // retorna o valor 52 corretamente
      soma = Sum("13", 22, 17); // erro

  • @rodgomesc
    @rodgomesc 4 роки тому

    muito bem explicado, obrigado!, estou com uma dúvida, nao vi videos no youtube explicando uma melhor maneira ou design pattern para organizar nossos types em projetos grandes, tipo, se eu devo definir os types no próprio componente, ou sempre faço um arquivo global contendo todos os types e importo quando precisar, por que é comum eu precisar reutilizar os types em mais de um componente, teria alguma sugestão de conteudo? ou quem sabe poderia fazer um vídeo futuramente, de qualquer forma, parabéns ótimo conteúdo

  • @brunoramiresferreira4011
    @brunoramiresferreira4011 4 роки тому

    Thanks mage. :D

  • @peterpbt
    @peterpbt 4 роки тому +1

    Ótima explicação! Aproveitando... Tem algum vídeo seu ou algum que você recomenda ensinando a usar o WSL?

    • @WillianJustenCursos
      @WillianJustenCursos  4 роки тому +1

      Opa Pedro, eu tenho uma playlist inteira ensinando a configurar, só olhar no canal =)

    • @peterpbt
      @peterpbt 4 роки тому +1

      @@WillianJustenCursos Obrigado! Vou ver!

  • @gleisonsubzeroKZ
    @gleisonsubzeroKZ 3 роки тому +1

    cara muito bom, que ótima explicação.
    só uma dúvida eu que venho do c# nele é possível eu restringir que o generics seja obrigatoriamente uma classe ou um tipo primitivo, no ts existe algo similar?

    • @WillianJustenCursos
      @WillianJustenCursos  3 роки тому

      Opa, nunca cheguei a restringir através do generic não, tb nunca cheguei a ver em nenhum lugar, então se tem como, possivelmente não é uma prática comum. Vou até pesquisar mais e te falo!

  • @patricpires3806
    @patricpires3806 4 роки тому +1

    Cara, eu não sabia nada de TS, assisti esse mini curso e estou aprendendo tudo e curtindo bastante, mas, tenho uma dúvida. Quando seria o caso de utilizar o generics? não consigo imaginar um cenário para esse tipo.

    • @WillianJustenCursos
      @WillianJustenCursos  4 роки тому +2

      Opa Patric, o Generic é super hiper utilizado. Ele serve exatamente para funções que podem receber diferentes tipos de informação e tudo bem. Esse é o caso dos hooks do React, por exemplo.
      Mas não só isso, mas vários métodos de bibliotecas grandes que também podem esperar estruturas diferentes, como o Next, eles também usam muitos generics.
      Você pode ver os types sendo usados em ação aqui:
      github.com/DefinitelyTyped/DefinitelyTyped

  • @arpielen
    @arpielen 2 роки тому

    A palavra extends me lembrou interfaces, então pensei que generics é um tipo de interface, porém trabalha com tipos primitivos igual o alias 🤪

  • @italoteixeira1971
    @italoteixeira1971 4 роки тому

    Só me confundi com uma coisa no final. Quando você fez React.FC o que significa a separação por vírgula? Seria um "merge" dos tipos?

    • @predator00071
      @predator00071 4 роки тому +3

      Não. Generics é uma forma de você passar tipos dinamicamente para uma função. Assim como você consegue passar parametros via parênteses (), você pode passar tipos via .
      Então se você quiser passar mais de um tipo para uma função, seja para usar nos próprios argumentos, ou retorno da função ou para qualquer outra finalidade, você pode separa esses tipos dinâmicos atráves da virgula.
      Exemplo:
      // Declaração do metodo:
      function logValues(arg1: T, arg2: N) {
      console.log(arg1);
      console.log(arg2);
      }
      // chamada da função
      logValues('Exemplo', 51);
      Espero ter ajudado.

    • @hugo057855555
      @hugo057855555 2 роки тому

      @@predator00071 Só esse exemplo já me ajudou, valeu irmão kk

  • @DelPieroJoga10
    @DelPieroJoga10 4 роки тому +1

    cara esse curso com poucas aulas, está dando de 1000 a 0 , em cursos da udemy com 200 aulas (n citarei nomes hehehe)