Learn useReducer In 20 Minutes

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

КОМЕНТАРІ • 625

  • @thesuperiorman8342
    @thesuperiorman8342 4 роки тому +231

    The second example was a lot to take in but I think once I understand the design pattern, the whole concept becomes clear. Thank you for the great explanation

  • @dl88889
    @dl88889 3 роки тому +90

    This is easily still the best introduction to useReducer. Clear, concise. Way better than some of the paid classes I attended.

  • @nickmee8731
    @nickmee8731 4 роки тому +337

    Man you're like 23y/o and knows more than a Senior developer 💯

    • @negatif9163
      @negatif9163 4 роки тому +10

      is he Junior developer? 🤔

    • @RickyGarcia_Learning
      @RickyGarcia_Learning 3 роки тому +97

      Senior developers know more about engineering in general. System Design, Data Structures, OOP, communication are all skills that senior devs will need to know. I know I'm going to catch so much hate for this.

    • @Justin-ei1qf
      @Justin-ei1qf 3 роки тому +33

      @@RickyGarcia_Learning that is 100% correct, primarily system design and TONS of social skills that young people lack. Being a senior isnt only being able to program on your own, its being able to lead a team of devs, something young devs without much work experience will just lack. simplifies is really knowledgeable in the tech aspect tho for sure!

    • @KevinBeal
      @KevinBeal 3 роки тому +21

      @@RickyGarcia_Learning Rawr! I hate you! Just kidding.

    • @SupunPraneeth
      @SupunPraneeth 3 роки тому +38

      well, this is not senior level, this is React basics. don't get me wrong, I really like his videos, but you can't tell he knows more than a Senior developer just by looking at this video.

  • @hailedagmawi8109
    @hailedagmawi8109 9 днів тому

    Can't believe I comeback to this video again after 1 year. I bumped with useReducer in a react project and relized I completely frogot about how it works.
    Thank you again Kyle!!

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

    That answers the question in my head : “why would I use useReducer while I have useState” because it’s always being compared to useState or explained with simple increment Function. Instead of saying they’re similar, saying that you can group multiple functions through conditions in a master function in order manage state in various ways, minimize prop drills and coming up with a simple todo app as you did was genious! Thanks man, I learn a lot from your tuts

  • @lodoss118
    @lodoss118 4 роки тому +62

    amazing content, really impressed with your communication skills and how you break down things into understandable chunks

  • @mohammedalmukhtar8949
    @mohammedalmukhtar8949 4 роки тому +29

    Kyle - Thanks for these great videos. I actually ran into issue the other day at work and went back to one of your videos and articles I'm subscribed to and it helped me in getting that bug fixed. Keep up the good work, man!

  • @devc.krishna8573
    @devc.krishna8573 4 роки тому +17

    Its the best react hooks series on the entire internet

  • @ridl27
    @ridl27 4 роки тому +72

    Kyle, we really need a repo with all of these hooks examples to use them as reminder :)
    Thank you for great tutorials!

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

      we can make one

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

      @@temzeks ok go make one ! :D

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

      pls check Full React Course in description

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

      @@zetaalpha3319 bruh.

  • @PenguinjitsuX
    @PenguinjitsuX 2 роки тому +9

    This video is amazing. It's the best tutorial on useReducer I've seen! I love how easy it is to follow because you started with a really easy example by replacing useState with useReducer and then moved on to a more complex one with the todo app.

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

    It helped me a lot to understand the Redux concept. well done.!

  • @laynetaylor7768
    @laynetaylor7768 2 роки тому +2

    I spent like two days on a udemy course trying to understand this concept and the guy was WAY overcomplicating it and this video saved my life lol, someone from that course linked this video in the lecture comments and it's the ONLY way I got past that part of the course. THANK YOU

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

      was that course : React the complete guide by maximillian?

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

      Yup, same story for me. And yes, it was Max from Academind.

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

      I left his course because of overcomplicating examples.. He is too fast and doesn't simplify things

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

    You have done such a fantastic explanation
    🎉🎉🎉
    I have watched Indian channels code with Harry thappa technical but I never understood
    But yours explanation was best

  • @rickeyupadhyay6898
    @rickeyupadhyay6898 2 роки тому +19

    You made it very easy kyle Thank you so much here is my learning from the above explanation:-
    1.) UseReducer hook gives us an array of [state,dispatch] same as useState hook and use Reducer itself takes an reducer function , inital state.
    2.) Whenver we runs an dispatch function the reducer function get's triggered and with the help of reducer function we can update new state.
    3.) Reducer function takes 2 arguments which is the current state and action and the parameter action is used to write the logic based on the dispatch action type.
    4.) Dispatch function takes an object (action) which contains two things action_type the action which we want to perform and also it takes payload which contains all the variables which we want to pass to over reducer function.
    Once Again thank you so much Kyle for the great explanation.

  • @cryptonite6000
    @cryptonite6000 2 роки тому +17

    Its actually insane how good you can explain what you are doing. Thank you so much :)

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

    This is my first stop whenever I have to learn a new concept in JavaScript...….thanks for simplifying the Web

  • @hoangcuongtran4606
    @hoangcuongtran4606 3 роки тому +7

    Actually those who familiar with redux would find this more easier! Thank you for your lesson sir !

  • @darinadimitrova7432
    @darinadimitrova7432 2 роки тому +6

    This tutorial is one of the most useful coding tutorials I've seen so far. Really happy with the way it's all being explained :)

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

    His way of explanation is filled with soo much confidence and experience, at times it gives me a feeling that its him, who has introduced a particular technology into the software industry. Be it the explanation of ANY framework/library/Programming language..etc . you try to learn from him. Pure Amazing work Kyle. You're the best tutor I've come across the whole internet who explains stuffs in such a simplified manner.❤👏

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

      yeah i do question sometimes, dafuck he does all day, reads the documentation? seems impossible to know so well some stuff he shows, especially since some of it is barely out yet.

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

    I watched many videos about useReducer but this one cleared all my concepts about it

  • @mma-dost
    @mma-dost Рік тому +1

    Great tutorial Kyle . For beginners second to-do example might be difficult but dont give up try to understand today tomorrow until you get it and watch this video 2-3 times and read some articles on the internet.

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

    you have a special skill to explain everything on very simple examples, so you are making it impossible to not to understand.!!

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

    Best explanation out of four, I watched so far.

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

    BRO, you are GOD! Your explanation is so much better than in the Udemy course I'm taking.

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

    Mate I've discovered your channel yesterday. I am not a frontend guy, but since yesterday I watched over 10 videos and bought one of courses which btw is flawless!! Love your presenting style and the content!! I have had senior guys in my teams that don't know 1/10th of the things you teach here!! And most importantly you cut to the chase, no BS!! Kudos and keep going!! Thanks for inspiring us!

  • @hugoperez1318
    @hugoperez1318 3 роки тому +8

    Dude, useReducer just blew my mind. After building an app with more than 20 functions that update the state being passed around, just a useReducer would have been so much better. Great explanation Kyle! So much better than going through the pain of Redux while keeping the benefits of state management

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

      I'm new to reducers and Redux but I don't understand why one needs Redux over useReducer

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

      @@petiks6391 Redux scales really nicely. It is a better choice for bigger apps.

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

      @@hugoperez1318 I see. Thank you

  • @leylakanaan3912
    @leylakanaan3912 2 роки тому +2

    GREATEST ONE AT ALL.
    I was taking a course in 'UDEMY' and he was teaching useReducer but personally I didn't understand anything. This one was so helpful Thank you for your effort and for simplifying the web for us ^ ^ ;

  • @shurui91
    @shurui91 3 роки тому +14

    "The idea behind useReducer is it gives you a more concrete way to handle complex state so it gives you to set actions that you can perform on your state and it's going to convert your current state to a new version of the state based the action you send it."

    • @CastleShield
      @CastleShield 2 роки тому +2

      It's so much easier if you know "why". Most documentations and tutorials often focus on "how" and that's annoying.

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

      @@CastleShield Facts

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

    Kyle, you don't know how much time you've saved me for learning this hook.

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

    This is incredible. I'm pretty new to react. I once tried using useState for a complicated state and ended up abandoning the project lol. UseReducer was exactly what I was trying to do with useState then.

  • @Amitverma-mb4tu
    @Amitverma-mb4tu 3 роки тому

    Not aware of your experience and others but me as a sr. developers find your videos quiet useful.

  • @martapfahl940
    @martapfahl940 2 роки тому +3

    Even if my native language is German and not English, you explain React in such great quality that it is an ease for me to understand all of these concepts, thanks Kyle!

  • @nelsonfleig5024
    @nelsonfleig5024 4 роки тому +37

    Can you please do a video on some flux design patterns with Context, useReducer, and async calls to an API? Im trying to replace Redux and Thunk with pure React hooks. Thank you for your videos!

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

      Is it possible to completely replace redux with react hooks? like for global state management?

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

      @@farhanvk7586 As far as I understand it, Redux creates a global store for your app, and there is no convenient way of doing that with just hooks. But you can capture some state in one component with useContext, and then import that state in any other component and use it there.

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

      @@Andrewiththeaudi yes, if context API works then use it.
      ua-cam.com/video/lG6Z0FQj_SI/v-deo.html
      This video gives a good explanation of context API and some other react tips.

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

      you can replace redux by using useContext combined with useReducer i recomand you to watch codeEvolution channel to learn more about that ;)

  • @DuyTran-ss4lu
    @DuyTran-ss4lu 4 роки тому +11

    Super concise and informative. This is truly "simplified". Thanks a lot!

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

    Bro literally has best voice of any of these tutorials videos.

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

    I have always had an issue in wrapping my head around State Management. After watching this not only I got familiar but understood state management concepts in general. I was able read and implement Redux (In Production) after watching this. After seeing the benefits, I went ahead implemented state management in Angular(Akita) application(In Production). You should do another video on Redux with Redux Toolkit. It would benefit many people like me.

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

    A single video clears all the concepts

  • @Enes-ik4bm
    @Enes-ik4bm 2 роки тому

    Respect from Turkey. Your teaching skill is very good 🙂

  • @leanprogrammer
    @leanprogrammer 4 роки тому +23

    This is basically redux, great stuff

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

    I was confused about this hook and even some others but now I am clear and can use where it needs. So, going to watch the other tuts of hooks. Thank you very much for the clarification with a live example

  • @codenamegrant
    @codenamegrant 4 роки тому +6

    Personally, I prefer to create those helper functions (toggleTodo, deleteTodo) instead of just sending the dispatch method down. Actions that are available can be more explicit than just exposing the entire dispatch method.
    Awesome tutorial series Kyle, thanks a bunch.

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

      That's the right approach in my opinion... It makes the dumb component cleaner and keeps the logic in one place

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

      same lol

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

    Thank you for this. Your videos on hooks are the best videos I could find on UA-cam.

  • @njayman
    @njayman 4 роки тому +36

    Best react hooks tutorial

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

    your lecture's are exaptational and easy to understand, my only suggestion is please provide the Git code also

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

    thanks! your ability to explain complex concepts and implement them effortlessly for us while walking through your thought process is insane. thank you for making these resources free

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

    Thank you so much Kyle, you’ve made me fall in love with React! I love the power of this hook!

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

    that's the most complicated and crazy hook iv'e seen so far
    thanks!

  • @RobiulIslam-dn9mm
    @RobiulIslam-dn9mm 2 роки тому

    amazing.. it was a very hard part of React for me, but now, it's crystal clear to me after watching Kyle's tutorial.
    Thanks Brother.

  • @santosdejesusmateocamacho3086

    I never comment but this time i was impressed by how well you explain and your knowledge, you never disappoint.

  • @satya-lifevlogs
    @satya-lifevlogs 3 роки тому +2

    You are like a saviour for React mankind. Loved your work, man!

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

    exceptionally clear intro to this topic with a great example. thanks

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

    Clear, easy to understand and direct.
    Just what I needed! Thanks man!

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

    7:29 If you're already using Typescript, another alternative would be to define type as 'increment' | 'decrement'

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

    It's me again. I'm back to tell you how much this video helped me. You are the best !

  • @dubskiski4964
    @dubskiski4964 2 роки тому +3

    Your tutorials are so clean and informative, thank you for all the work you do!

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

    AND JUST LIKE THAT I learnt how to use useReducer. Short and informative video. Thanks man !

  • @liamsmith-yp3xh
    @liamsmith-yp3xh 4 роки тому

    just for those who havent done much with switch or also people who are working with objects and having a hard time, the case its self is a function so you can do case
    ACTIONS.add:{ some logic in here, return new reducer value}
    i had a hard time figuring out how to manipulate objects, after a lot of trial and error i figured out this is how you could manipulate it
    case ACTIONS.add :{
    state[payload.key]= payload.value;
    return {...state}
    }
    for some reason you have to return a clone of what ever you want to send back, something to do with sending it a shallow copy probably, but that works , manipulate state input locally within the case function and return clone of the state

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

    Just wanna say - I've watched a few of your videos, and they've all been very useful, well explained and presented in a digestible manner.

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

    Super helpful, reading the docs wasn't clicking for me. Thanks for taking the time to offer this!!

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

    Thank you so much for these examples. I was confused by the React docs because I wasn't sure what types state and todo were supposed to be and am not familiar enough with typescript to understand the source code. Definitely learned within 20 minutes!

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

    Brilliant video for getting introduced to react useReducer hook. Thank you so much.

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

    This is how fbp (function based programming) works
    Kyle it would be great video to those who are learning resux or useReducer if you teach a fbp

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

    After binging 3 of these in a row I'm pretty sure I'll be buying your course. You are a great teacher, awesome job!

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

    The best explanation on this planet so far.... Great Thanks

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

    Thank you very much, although I am Vietnamese, when I read materials on this issue in Vietnamese, I found it somewhat difficult to understand. But it's strange that when I watched your video in English, I understood it very clearly.

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

    I'm convinced this guy's an Web Developer Alien.. he's just perfect at everything including life.

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

    thanks a useReducer has never been more clear

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

    This is an excellent video. I was going through a video guide on react (which was great) but once it got to reducers I got pretty confused. This is super helpful.

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

    Thank you so much for explaining how we pass one `dispatch` function instead of many different handlers. So far in the major project I'm working on, I've only see useReducer used for context providers, and nothing else. And I've seen several places where handleX, handleY, and handleZ are passed in. I think this could be useful to refactor.

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

    Thank you so much for making this demo. I went through the steps carefully and have a better grasp on the concept. This was a good demo.

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

    You talk straight to the point, no bs around and great explanation :) love this channel

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

    wonderful video , the second example just makes everything clear about useReducer

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

    1 Million tanks from Ethiopia

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

    that's probably the best explanation of react's useReducer Hook!! thank you very much for the simplification

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

    Best explanation in the Internet. Great!!

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

    I found it interesting that you imported the ACTIONS object instead of passing it down as props.

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

    Great explanation, took me a couple tutorials to understand why you use this hook rather then use.state, think i need to practice a little more with its use but really starting to get to grips with react, thanks!

  • @DimoDimov1
    @DimoDimov1 2 роки тому +2

    Fantastic explanation and easy to follow! I only wish that we'd go into then writing tests at the end, as that will differ between just using useState and useReducer as well as it will get us thinking of how we structure our code so it's easier to test.

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

    best video about reducer i've seen so far, many thx wds

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

    Well done sir! I've a few of your react vids to help understand and use react in a more powerful and organized way. Very generous of you and very appreciated!

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

    Can't thank you enough! This complicated theme is so much easy now after your explanation!

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

    Man! This helped me understood useReact much much better! Thank you so much!! Going to implement it into my current work. Can't wait to dive into your other vids!

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

    this is one of the best vids out there on the topic, thanks so much

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

    Thank you! took my professor 2 hours to deliver the same info

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

    Great explanation. I really appreciate how you break it down even further with the examples. Helps explain the Hook better than the React Docs.

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

    thanks sir its help a lot , i watch the tutorial on Traversy where you guess but been really confuse when you use useReducer there but watching it here its now crystal clear for me hehehe , thanks again

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

    Awesome vid. I like the examples to help understand not just what it does but how to implement it.

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

    Thank you for putting everything together in such a short example, good work as always Kyle.

  • @KhoaNguyen-mv2mu
    @KhoaNguyen-mv2mu 4 роки тому +1

    Just see how smooth you go while you code gives me inspiration to emulate :)

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

    This is one of my favorite channels, thanks for everything

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

    This was a very clear tutorial. Thank you very much.

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

    dude you are killing it with react tutorials

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

      he copies them from other dudes

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

      @@aammssaamm this is open source knowledge, you can find this information in the documentation and various articles online all he is doing is explaining it and "simplifying" it

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

      @@azatecas no, he is copying other dev's videos made long time ago

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

      @@aammssaamm can you link to another tutorial to contrast and compare the videos?

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

      @@azatecas you can easily find them by searching unless you have no idea about how to LOL

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

    first 2 minutes, and i can say the is the best explanation of useReducer

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

    10000000000000000000000 likes for this explanation. Kudos!!

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

    @6:30 another nice way to create a symbol for like 'const INCREMENT = Symbol()' and same with the 'DECREMENT'

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

    I love you man. Amazing explanation. Best react tutor ever

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

    clear, concise and concrete

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

    Kyle, thank you for these excellent videos. They are simple and quick. They are really helping. Again thank you for your great work. Love your videos

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

    thank you so much for kindly and clearly explaning this hook

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

    Really a great class! I learned how to use it in the first 5 minutes following along :P Everything got much more clearer to me, thanks!