TypeScript Generics are EASY once you know this

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

КОМЕНТАРІ • 215

  • @Bread-vk8fl
    @Bread-vk8fl 5 місяців тому +9

    1st time I watched it I got 80%, the 2nd time 95%. Now I just need to code myself to get it 100%. The best explanation of all UA-cam. Thank you so much.

  • @ashishboora3049
    @ashishboora3049 Рік тому +24

    I am react developer and never used typescript, just out of curiosity started watching it. Now i am suddenly feeling like i know complete Typescript.
    I mean how well you explained it, i can understand every second of this video. This is really some next level teaching skill.

  • @timlind3129
    @timlind3129 Рік тому +95

    Honestly - this is probably the best description / example I've seen yet! Keep it up!

    • @ByteGrad
      @ByteGrad  Рік тому +3

      Thanks, will do!

    • @Dan-p7f
      @Dan-p7f Рік тому

      agree 100%

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

      I've also to *SUPER AGREE* - it's like *finally* someone really explained how it works - instead of talking plain code! 😻 haha 😹💦

  • @jotasenator
    @jotasenator Рік тому +140

    I was avoiding generics for a while for no reason, now, finally I will avoid it with a reason

    • @patfre
      @patfre Рік тому +23

      And now employers are gonna avoid you for a reason

    • @jotasenator
      @jotasenator Рік тому +14

      @@patfre auch! was a funny way to say the content is great and well explained but still generics are hard and verbose no matter what. Will be healthy a pole to show how many devs use generics in his job. Also if an employer doesn't select you because you don't use a specific content, well, that is not the place.

    • @patfre
      @patfre Рік тому +4

      @@jotasenator the whole point of generics is the make thing generic, they are very helpful in making things type safe especially with how much TS allows you to do, I just used it today to make my code simpler and cleaner and not be 100 lines of repeated code. Also the thing about companies is they want safe and reliable code that follows best practices a lot so they can absolutely deny you for something like this if your 100% not willing to follow their practices with the code

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

      ​@@jotasenatormight as well just avoid typescript while you're at it. Generics are what allow effective code reuse and sound typing to coexist

    • @jotasenator
      @jotasenator Рік тому +2

      @@PlerbyMcFlerb the thing is I do use typescript, but never generics, in react.js and vue.js and next.js. I was watching this video because all the contents in here are explained in a way I like, still, don t see generics in the feature for me. Not saying I am against them, just I didn't find myself in a position saying: well, is time for generics...

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

    As someone who has been anxious even when seeing cryptic type notations, this lesson is almost like a therapy session. For me, adding just after writing the function name make sense than coming back to it after annotating arguments. It reads like "this function / class is meant to work with these types".. Thank you!

  • @sandeepamarnath3295
    @sandeepamarnath3295 4 місяці тому +3

    I wish I could like this video a 100 times. You are the best teacher ever who sticks to the point and every second is worth watching and learning. Great job!

  • @tomisadone1145
    @tomisadone1145 Рік тому +7

    Spectacular video, had it open in a side tab for a month and I can't regret more not watching it before. Clearest explanation I've seen in a while

  • @MrBrandenS
    @MrBrandenS Рік тому +11

    Wow this video shed a ton of light on some of the confusing pieces around generics for me. The content was so well put together and with the real life example with usages in react itself it really drove the point home from your early examples of generic benefits and when ti use them. Amazing way to teach these concepts. Thanks! Subscribed.

  • @xReDxTuRtLeZx
    @xReDxTuRtLeZx Рік тому +8

    thanks for the clarity. you are great at explaining concepts, your vids have objectively made me better at TS and feels great when i manage to remember parts of vids when i encounter scenarios on my projects

  • @fluntimes
    @fluntimes 11 місяців тому +1

    I agree, this is the best explanation of generics I've encountered. Makes them seem easy, so your video description is on point!

  • @IrfanIdris
    @IrfanIdris Рік тому +7

    I never realised generics are that simple to explain. Simply great! 👍🏽

  • @patriciogesualdi7472
    @patriciogesualdi7472 Рік тому +3

    I really like the emphasis on the relationship aspect, great video!

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

    Your lessons are great and easy to understand for me, thnx , keep going, 👍👍✅🚀

  • @uvaishassan
    @uvaishassan Рік тому +3

    This is the best video on generics I have watched so far. Was really struggling with understanding generics but this helped a lot. Explaining in terms of relationship between arguments and return type was brilliant

    • @ardianhotii
      @ardianhotii Рік тому +1

      I think the same too , best video for generics , again thank you so much @ByteGrag for these awesome videos

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

      Great to hear!

  • @xeygarz
    @xeygarz 2 місяці тому +1

    I honestly had such a hard time understanding generics and how they differed from explicitly declaring your types. Your emphasis on generics defining *relationships* finally made everything click for me. Thank you for explaining with all the examples!!

  • @raheelafzal5406
    @raheelafzal5406 Рік тому +1

    it was the best of the best explanation i have seen. did not understand the generics, but now it all making sense. HUGE THANKS BRO

  • @ALI-se4ph
    @ALI-se4ph Рік тому +1

    your channel is great for junior devs who already know javascript and got job but they need more tricks and knowledge to become a better developer

  • @xi_red4936
    @xi_red4936 Рік тому +2

    This is hands down the best explanation I've ever seen on type Generics. Thank you soo much!

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

    Thanks for the best tutorial on generics I've ever found 🤗

  • @wellswatti
    @wellswatti Рік тому +7

    "Hopefully this helps you out a little bit with generics". No sir! This helped me out a ton!

  • @shashanktiwari8511
    @shashanktiwari8511 8 місяців тому +1

    Excellent example, and i want to know what is this VS extension that is giving suggestions for auto code complete

  • @Dan-p7f
    @Dan-p7f Рік тому +1

    You totally nailed it! I've read docs couple times and yet still didn't get full understanding, but now... thank you man!

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

      Great to hear! :)

    • @Dan-p7f
      @Dan-p7f Рік тому +1

      @@ByteGrad great explanation, keep up the good work

  • @TieshaOnishea
    @TieshaOnishea 2 місяці тому +1

    Your videos are REALLY helpful, thank you so much. Thanks for the best tutorial on generics I've ever found .

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

      I was avoiding generics for a while for no reason, now, finally I will avoid it with a reason

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

    Why is the type parameter ( "") after the function name or type name necessary? I'm guessing it's just for better performance of the TS compiler.
    It seems the input parameter type(s) (including the sequence in which they appear) and the output type are sufficient information to determine the relationships that need to be codified.
    I'm grateful for your video. The statement that "generics are specifications of codifying relationships between parameter and output types" is excellent and did make it easy to understand generics.

  • @lil10dot
    @lil10dot Рік тому +1

    the way you explain is so clean and concise

  • @RegisZaleman
    @RegisZaleman Рік тому +1

    Well done. It is one of the best explanations of generics I have heard. From super simple to using it in React. Really good. Got my sub!

  • @Bangladesh689
    @Bangladesh689 3 місяці тому +1

    This is the best video I've seen about generics.

  • @sofianesaid226
    @sofianesaid226 8 місяців тому +1

    easier than I thought now after watching your video, thank you very much!

  • @ally2502
    @ally2502 Місяць тому +1

    The relationship tip was all I need to understand the generics! thanks mn

  • @saiphaneeshk.h.5482
    @saiphaneeshk.h.5482 Рік тому +2

    Damn, it feels difficult but you can no where find these kind of basic knowledge which you'll only get from experience.
    Thanks allot.

  • @tblancog
    @tblancog Рік тому +1

    I really liked the way you explain such a complex topic like this one, you got a new subscriber. Thanks!

  • @kashmirtechtv2948
    @kashmirtechtv2948 Місяць тому

    Can't we use PropsWithChildren for props? 11:54

  • @mohamed_mahran
    @mohamed_mahran Рік тому +1

    Thank you mate!
    The video was on point. Finally I got a understanding in generics.

  • @PaulnJenna
    @PaulnJenna Рік тому +1

    Amazing! I was confused before watching this. Great explanation!!

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

    you mentioned not to have "any" in your first example you returned => return [input.toUpperCase()] and said if you have an any this is no good since a number cant use the toUpperCase, wouldnt a generic do identically the same thing? const someFunc = (input:T):T[] => return[input.toUpperCase()] is this not the same as any?

  • @nurlanshukurov3864
    @nurlanshukurov3864 Рік тому +1

    This is the best Ts generics video I've seen so far. Please, make video about mapped types and keyof keyword also. 👑

  • @scott98390
    @scott98390 Рік тому +1

    Is there a way to create extension methods on a Type without running into issues because you extended the .prototype?

  • @pastuh
    @pastuh Рік тому +3

    If the React/Next.js course were explained like this, it would be amazing.

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

    It was a very nice video thank you.
    What package do u use to get suggestions for your code

  • @sakarsr
    @sakarsr Рік тому +1

    Neat explanation of Typescript Generics. Thank you for your time, have good health and a nice day.

  • @heitorpaulo5403
    @heitorpaulo5403 Рік тому +1

    Wow! Finally...The relationship tip was the key to understand generics for me.

  • @vpdexx
    @vpdexx Рік тому +2

    Great! Just one question: what's the point of having a generic since you are extending it from something else (React.ReactNode in your example)? You do that just for relationships between params and return value or am I missing something? Thank you, keep it up!

    • @ByteGrad
      @ByteGrad  Рік тому +2

      Yep, just to codify that relationship between the 2 props

  • @mervinmarias9283
    @mervinmarias9283 Рік тому +1

    I don't even use TypeScript, but after this video I actually understand how to use generics.

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

    Excellent tutorial packed with valuable information and reasoning.

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

    Thank you, Can I ask what extension you are using that it suggests when you code?

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

    How do I use generics in some generic component like Table, when I need the id property, for filter let's say... in that case Typescript complains that can't find the id on T type, so I must add intersect with & { id: string }, so I can help Typescript to infer the id type.

  • @sarowarhosen003
    @sarowarhosen003 Рік тому +1

    . i had many confusion about ts Generics . this tutorial is very helpful for me thank you so much , , now i have clear understand

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

    You can make it more clear when you leave out the { } and make the convertToArray as a one-liner.
    const convertToArray = (input: T) => [input];

    • @Blast-Forward
      @Blast-Forward Рік тому

      Just remember that it won't get hoisted.

  • @Edgar-pu1lc
    @Edgar-pu1lc Рік тому +1

    Hello, when will your next js course be ready?

    • @ByteGrad
      @ByteGrad  Рік тому +1

      Finishing the last few details. Make sure you’re on the email list :)

  • @AlexShemwell
    @AlexShemwell Рік тому +1

    This was such a good explanation. I was always wary of generics, but no longer!

  • @Harduex
    @Harduex Рік тому +1

    Very clean and comprehensive tutorial, keep up the good work 🙌

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

    In practice defining theme just as a string makes more sense, but I got your point, good tutorial

  • @cypherop2608
    @cypherop2608 11 місяців тому +1

    best explanation on generics so far

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

    What is the point of using type generics with extends? (the last example) Aren't we adding unnecessary code by using the ? Couldn't we just use the "Theme" type everywhere instead of using the extended type generic?

    • @ByteGrad
      @ByteGrad  Рік тому +2

      It should be which means it can be any type, but at least a ReactNode. The point is to restrict the type

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

    Thanks For your explanation about Generic, Wesley!!!! Great tutorial!

  • @ryanwoods3333
    @ryanwoods3333 Рік тому +1

    really enjoy the typescript/react content thank you!

  • @seelvek6550
    @seelvek6550 4 місяці тому +1

    Thanks Wesley! Great as always!

  • @maor44
    @maor44 Рік тому +1

    Amazing video dude! really helpful!

  • @HeyNoah
    @HeyNoah Рік тому +1

    Awesome tutorial!! Super easy to follow! Thanks a mill!

  • @grottogg4758
    @grottogg4758 Рік тому +2

    Thanks for all your hard work, extremely helpful teacher!

  • @gregplittjunior8313
    @gregplittjunior8313 Рік тому +1

    Kind of clear explanation, bravo 👏

  • @shivanshpatel4072
    @shivanshpatel4072 Рік тому +1

    Awesome video you make this concepts really easy to understand ❤

  • @mr.javascript1320
    @mr.javascript1320 Рік тому +1

    Amamzing explanation !!!! loved it !!!!

  • @Ahmed-fq3kz
    @Ahmed-fq3kz Рік тому +1

    Wow, very clear and to the point

  • @kashmirtechtv2948
    @kashmirtechtv2948 Місяць тому

    But why didn't we define type directly instead of extending generic type???? 18:38

  • @grzegorzpaprzycki2547
    @grzegorzpaprzycki2547 Рік тому +1

    You explain hard topics very clearly. Keep going like that ❤

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

    sorry but can someone tell me in brief when or in which cases should i use generics ?

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

    Very cool video! I found your channel today and subbed for more content

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

    Hello my friend, I am following you and I want advice from you. I am a front-end developer and I use next js and I have worked on actual projects and I want to start in the back-end field. You advise me to start with C# or Javascript framework and work. I am very confused. Please help me. From your point of view, what is best?

  • @matan1147
    @matan1147 Рік тому +1

    Great video!
    loved your explanations 🔥

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

    Your videos are REALLY helpful, thank you so much

  • @123tomani
    @123tomani Рік тому +1

    Very well explained 🎉
    Can you also do a video on websockets and best way to implement in micro front end application

  • @pasanflo
    @pasanflo Рік тому +1

    Good example, thanks!

  • @miksica
    @miksica Рік тому +1

    Pure gold, and thank you!

  • @nathpaiva
    @nathpaiva Рік тому +1

    Generic is so cool. Nice video!

  • @reazon7
    @reazon7 5 місяців тому +1

    Thx you, really great explanation.

  • @junsgk
    @junsgk Рік тому +2

    Best best ts teacher on youtube

  • @mikkun_
    @mikkun_ Рік тому +1

    In just 22 minutes, I've learned a lot

  • @MahdiyarRezaei-o7i
    @MahdiyarRezaei-o7i Місяць тому +1

    well done , keep going sir !

  • @laputafelix
    @laputafelix Рік тому +1

    Again, another extremely precise video to me

  • @alexandrupintilei5657
    @alexandrupintilei5657 Рік тому +1

    Awesome video! Thanks!

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

    what vscode theme do you use?

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

    So much value here!

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

    what theme you use?

  • @amirhossein.banaei
    @amirhossein.banaei 10 місяців тому +1

    great explanation. thanks a lot .

  • @Salah-YT
    @Salah-YT Рік тому +2

    thank you so much

  • @luongtrongvinh9457
    @luongtrongvinh9457 Рік тому +1

    any updates on react course sir😊?

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

      Will send an email to everyone soon :)

  • @pixyoutube538
    @pixyoutube538 Рік тому +1

    Great! Your video is very easy to understand

  • @alenakavyrshyna3916
    @alenakavyrshyna3916 11 місяців тому

    The best video about generics ❤ thanks

  • @danielmdenton
    @danielmdenton Рік тому +1

    This video earned a subscription.

  • @Assassin29
    @Assassin29 Рік тому +1

    very easy and cool explanation

  • @ludwigvillalba1886
    @ludwigvillalba1886 Рік тому +1

    Well explained!

  • @K.Huynh.
    @K.Huynh. Рік тому +1

    thank for sharing! It's new for me! 🌈

  • @dominikrodler8010
    @dominikrodler8010 8 місяців тому +1

    Excellent presentation

  • @schintus
    @schintus Рік тому +1

    As a C# developer, this might be easier for me to understand up-front than pure JS devs :)

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

    which ai do for you this suggestions?

  • @fiskryeziu
    @fiskryeziu Рік тому +1

    Thank you for the video learned a lot

  • @__mac
    @__mac Рік тому +1

    This helped alot!

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

    Hi brother, I am really worried about the rumor that some people are talking about server action. They say that servers may not be stable, and we shouldn't use them for our real projects. They consider them experimental and think they might be fully eliminated. What are your thoughts on this?

    • @ByteGrad
      @ByteGrad  Рік тому +1

      I haven’t heard that rumor and don’t think it will happen at all. Server Actions will be a big part of future web development IMO

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

      @@ByteGrad thank u brother

    • @oscarljimenez5717
      @oscarljimenez5717 Рік тому +1

      That's a fake rumor 😂

    • @liu-river
      @liu-river Рік тому

      react server component has been out for over a year, server action built on top of that, so I doubt it's going away any time soon

  • @ByteGrad
    @ByteGrad  Рік тому +8

    My Professional React & Next.js course is OUT NOW now! Find it here: bytegrad.com/courses/professional-react-nextjs -- this is the #1 resource to master the latest React & Next.js, my absolute best work.