Mastering React Memo

  Рет қаралды 135,583

Jack Herrington

Jack Herrington

Күн бұрын

Пікірлер: 424
@onebronx
@onebronx 2 жыл бұрын
Jack, I think you should use "reference identity" instead of "referential integrity". The "referential integrity" is a term from a relational database theory and it is a guarantee that all references (foreign keys) point to existing entities and there are no "dangling" references/pointers in your database (or application state). For example, in a normalized Redux store it would mean that if a post object in a "posts" collection has a list of IDs of "comments" (a foreign key form "posts" to "comments"), then all comments referred by the post must be present in the "comments" collection in the store. In a normalized store posts do not keep direct references to comments, only IDs, so it becomes important to care about the referential integrity, as it does not happen naturally. The "reference identity" OTOH is just a special case of an equivalence relation, which guarantees equality of two referenced objects if and only if the references point to the same object ("shallow equality") but ignores structural equivalence ("deep equality"). React relies on the reference identity AKA "shallow equality" of two objects. It does not care about referential integrity, like lack of dangling references in your application state.
@jherr
@jherr 2 жыл бұрын
Fair enough. I'll do that in videos that folow.
@sahej97
@sahej97 2 жыл бұрын
How did you manage to write such a big comment?
@onebronx
@onebronx 2 жыл бұрын
@@sahej97 using a PC instead of a phone :)
@raymondmichael4987
@raymondmichael4987 2 жыл бұрын
@@sahej97, this means he knows these things and followed the video to the end, which implies that, Jack is real good. Keep it up guys, we're luck to have people like you
@raymondmichael4987
@raymondmichael4987 2 жыл бұрын
@@jherr, I watched the whole video. I'm waiting for the next video. Thanks for helping us out
@alexanderkuznetsov634
@alexanderkuznetsov634 2 жыл бұрын
Thank you again! So clear explanation! That is the main difference between junior and senior-level developers - it`s when you can provide a clear explanation to your "team members".
@sideshowlol
@sideshowlol 2 жыл бұрын
From the moment you casually typed “zoom” as a css property (which I didn’t realise was even a thing), I knew this was going to be a good’un. Thank you, Jack. Wonderfully clear explanations. 🙏😎
@down__lo7359
@down__lo7359 2 жыл бұрын
"React Memo" == "Render if the props have changed"
@CHN-yh3uv
@CHN-yh3uv 4 ай бұрын
Why isn’t this the default behavior though?
@dastansito
@dastansito 2 жыл бұрын
These Mastering React Hooks series are really, but really helpful. I can't thank you enough for everything I'm learning from this. Keep it going!
@thehaptiK
@thehaptiK 2 жыл бұрын
that transition at 0:45 is NICE.
@rism8345
@rism8345 2 жыл бұрын
Goddamn! Mm-mm-mm! You took them tutorials on the next level with these transitions and the chapter titles! Probably the best React/Typescript youtube channel out there. Thank you so much for the hard work, can't wait to see you have 500k+ subs on your channel.
@vladandreit
@vladandreit 2 жыл бұрын
Wow. These kind of videos i need learning react. I'm getting tired about all the crash courses(these are good for getting to know react)or full stack whatever and everybody talks about all the basics for begginers. Your videos are taking my understanding about react to a new level. Thank you. I hope you cover more and more advanced stuff because you explain them so well. Like a teacher.
@jherr
@jherr 2 жыл бұрын
Check the channel, I think you'll find there are enough advanced topics videos to keep your happy for a while. :)
@arsalanhussain6499
@arsalanhussain6499 2 жыл бұрын
The way explianed memoization comparing to traditional memorization was just amazing. in fact you just thought me how memizationreally works under the hood in react. the part where you mentioned when to or not to use moemo in react was also great example to understand the need for memo. thank you very much🙂
@vigyanhoon
@vigyanhoon 2 жыл бұрын
Thanks for this, my useMemo and virtual dom concept wasnt much clear before I watched this. Thanks.
@topsoilgargoyle
@topsoilgargoyle 2 жыл бұрын
Jack, i have avoided using memoization in React for a long time. I've read blogs, watched tuts, without success. You're lesson here has just made everything click! Your preparation and relevant information are extremely valuable. Thank you very much.
@jherr
@jherr 2 жыл бұрын
You should still avoid it tho. No reason to use it unless you have a genuine performance issue.
@swapnilsingh7553
@swapnilsingh7553 Жыл бұрын
Hi Jack, Extremely grateful for this insightful Mastering React series, a small correction at 18:30, I assume you meant to click on the Re-Render app button instead of the Change color button to demonstrate the memo failure with object type parameters.
@mcfliermeyer
@mcfliermeyer Жыл бұрын
I had about a week of building an app using some components I didnt understand that seemed to require useCallback. I kept getting stale state from it. Now I understand why! Thank you much!!!!
@vigyanhoon
@vigyanhoon 2 жыл бұрын
I love the way you jump to code instead of wasting time on talking like others. Keep it up!
@alii4334
@alii4334 2 жыл бұрын
The best tutorial on YT I've ever watched about the topic!
@nicholasfane1081
@nicholasfane1081 2 жыл бұрын
These videos are gold Jack, it's hard to find such high quality and down to earth tutorials like these. Keep it up!
@mohsinwaseem9770
@mohsinwaseem9770 Жыл бұрын
This is the best video I have seen on the topic. From giving the concepts to telling its pros cons with correct usage. All things are included in depth summarized in this 27 min tutorial. Hope you channel grows
@utkarshsrivastava4106
@utkarshsrivastava4106 2 жыл бұрын
You can tell right away by his thinking out loud, that he is a senior developer xD. Thank you for your amazing content :)
@leszekmodrzejewski7372
@leszekmodrzejewski7372 2 жыл бұрын
I have seen dozens or even hundreds of youtube tutorials and this one is one of the best. Great content. I like most that the information is coherent, forming a whole. It is explained in detail. The pace and tone of Jack's voice are engaging. Fantastic job 👏👏👏
@vitorwindberg4212
@vitorwindberg4212 2 жыл бұрын
The explanation about VDOM and DOM was amazing, I didn't know any of how that worked in React and I bet a lot of people don't as well. Thank you for your videos!
@Will4_U
@Will4_U 2 жыл бұрын
Fantastic explanation! Personally, I was struggling and confused about using memorization in React, but this video definitely helped me to understand this topic. Thanks Jack ❤
@geralt36
@geralt36 Жыл бұрын
Your videos are always so clear, detailed and to the point. Every time I click on one of your videos and think I know about the subject, I always end up learning something new. Thank you for sharing your knowledge with us!
@atuldubey8146
@atuldubey8146 Жыл бұрын
Best explanation for memoization on KZbin.
@mirajaryal3322
@mirajaryal3322 2 жыл бұрын
Been looking at lots of videos and reading a lots of articles but couldn't get my head around when and on what these hooks must be used. And with this video everything is crystal clear. Was such a simple concept. Thanks Jack for this great video. Been following your a while for quality content.
@jarrettyew
@jarrettyew 2 жыл бұрын
Great explanation! Was referring the official react doc but it wasn't as clear as this video!
@raymondmichael4987
@raymondmichael4987 2 жыл бұрын
I watched several videos on this channel, and I see all new videos ; To my surprise, I wasn't a subscriber to the channel yet!! 🙆🏾‍♂️, Subed now 🤓
@tazimmahta7625
@tazimmahta7625 2 жыл бұрын
8:51 ""it compares the previous props with new props. And when those props have changed it re-renders. Thats all memorization is. "". Missed that in an interview :')
@ajstimson
@ajstimson Жыл бұрын
Jack's discussion of "Don't Sweat Re-Renders Too Much", was eye opening. Thanks for explaining it in reference to old jQuery methods!
@Gringo0517
@Gringo0517 2 жыл бұрын
Recently discovered your channel and have found it extremely valuable! Liked and subscribed. You have a very clear way of explaining things that I have been struggling with for quite a while :D Thanks and hope your motivation stays high for creating more content!
@juandsoto1651
@juandsoto1651 2 жыл бұрын
This is something really important that almost anybody takes the time to explain. Thank you so much and keep on this kind of amazing vids!
@mirtanvirahmed3868
@mirtanvirahmed3868 2 жыл бұрын
i liked the video before even watching.. I know it will be a great one 💯
@diyaagubarah3328
@diyaagubarah3328 2 жыл бұрын
/** * So we use combination between memo & (useMemo - useCallack) * memo is good for comparing value like string number * but when it comes to function,Array,Object props we must pass the reference for those to memo Component * and we do that by passing useMemo(Array,Object) - useCallback(callback) function to that memo component */
@mattlennon3
@mattlennon3 2 жыл бұрын
Excellent breakdown, I think the part on renaming the function in your head is critical to understand this function for what it actually does. Really well edited video too, I'm looking forward to more from your channel!
@maxklammer3370
@maxklammer3370 2 жыл бұрын
Thank you Jack! :) Every time I come to you channel I learn something new :)
@bythealphabet
@bythealphabet 2 жыл бұрын
Great content Jack, thank you for taking the time to explaining React Memo so clearly.
@retinafunk
@retinafunk 2 жыл бұрын
I watched a lot of other docs and tutorials on those hooks and now finally I feel understand this properly, even if I used it many times already successfully now I get the fine details and differences and also when not to use them
@sergemorales8709
@sergemorales8709 Жыл бұрын
Hey Jack, just wanted to drop a quick message to say thanks for the video! I've been following your content for quite a while now, and I gotta say, you're hands down the best I've come across. I've learned so much from you, not just about coding but also your logical and concise explanations. Thanks again, really appreciate it!
@Justjames283
@Justjames283 2 жыл бұрын
Jack is hands down the best JavaScript teacher on KZbin!
@bjrnolavgjrven2955
@bjrnolavgjrven2955 Жыл бұрын
@26:36 my face when he slid across the room revealing that the background is a green screen :o :o :o Thats the most impressive green screen I have seen on youtube, it looks so realistic! Also, the transition between your hair and the background is pretty much not noticable. Much impress.
@d0paminer
@d0paminer 2 жыл бұрын
The only foreign teacher i've been subscribed. Thx from Russia, you are cool man)
@jherr
@jherr 2 жыл бұрын
Thanks! 😃
@minsaf8216
@minsaf8216 2 жыл бұрын
Found exactly what I've been looking for. Great explanation. Clear and easy to understand. Please do a series on advance react concepts
@jherr
@jherr 2 жыл бұрын
So what would you consider advance React concepts?
@minsaf8216
@minsaf8216 2 жыл бұрын
@@jherr concept like Error boundaries, custom hooks
@jherr
@jherr 2 жыл бұрын
@@minsaf8216 Cool. I actually have covered those a bunch, just not in their own videos. I'll have to think of a good way to do that specifically for its own video.
@manassharma7698
@manassharma7698 2 ай бұрын
This video is a total life saver . Thanks for such a good video.
@mdnamussakib8077
@mdnamussakib8077 2 жыл бұрын
Great Video. Thanks soo much. The whole react memo became very clear for me.
@me_rinta
@me_rinta Жыл бұрын
Very helpful video. Straight to the point, examples and comparisons included. Definitely cleared up a lot of my questions about React memoization. Thank you 🙏🏻
@MistaT44
@MistaT44 2 жыл бұрын
One of the best channels out there! Thank you
@jialx
@jialx Жыл бұрын
The segment 'Don't sweat Re-renders to much' is personal favourite.
@kyriakosbekas
@kyriakosbekas Жыл бұрын
Great explanation Jack! Thank you for your content!!
@haroldpepete
@haroldpepete 2 жыл бұрын
you've got a new subscriber sr, you have the craft or art of teach good and clear
@xieweiling7543
@xieweiling7543 2 жыл бұрын
The best and most thorough explanation I've ever seen! Fantastic!👍
@adnanahmed4176
@adnanahmed4176 Жыл бұрын
Your explanation skills and demo demonstrations are so amazing! Great videos!
@EnesKab
@EnesKab 2 жыл бұрын
Thank you Jack ! I was looking forward to this. I am going to do few experiments for my own cases, but after that video, I feel better and less stressful about re-rendering I guess 😊
@sourabhkulkarni1731
@sourabhkulkarni1731 2 жыл бұрын
Loved your explanation. I subscribed immediately!!
@rafaelnunes6918
@rafaelnunes6918 2 жыл бұрын
Thanks, this was the best explanation I've ever heard.
@andenetalexander5244
@andenetalexander5244 2 жыл бұрын
By farrrrrrrrrrrrrrrrrrrrrrrrrr the best tutorial on those topic out there. Greate explanation! 👏
@alimohammadi1517
@alimohammadi1517 2 жыл бұрын
Amazing content as always , really can tell that this vids are professional because of how fluent you are with the syntax , the examples and the visuals of the video overall everything is very pleasing thank you
@lucaszapico926
@lucaszapico926 Жыл бұрын
Thanks for the video! Comprehensive, straight forward and thorough. 🙏
@permanar_
@permanar_ 2 жыл бұрын
This is really on a whole another class. Rich information yet so compact at a time. Thank you!!
@krishgarg2806
@krishgarg2806 2 жыл бұрын
Thanks! Really nice and informative video, and again thanks for taking my suggestion :)
@jherr
@jherr 2 жыл бұрын
It was a good one!
@DavidCCR
@DavidCCR 2 жыл бұрын
Really great explanation. Your videos are getting better and better! Thanks a lot!
@davidkezi6086
@davidkezi6086 2 жыл бұрын
Jack had to be my fav tech KZbinr
@julianfmartinez
@julianfmartinez 2 жыл бұрын
Clear explanation, now I get it, thank you.
@sukeshkumard6064
@sukeshkumard6064 2 жыл бұрын
The best and detailed explanation on memo. Thank you so much.
@lsowein
@lsowein 2 жыл бұрын
Thank you! I really enjoy your content. Always concise and insightful! Great editing btw :)
@diyaagubarah3328
@diyaagubarah3328 2 жыл бұрын
best explanations ever I love your way for teaching.
@Billy_98
@Billy_98 2 жыл бұрын
Amazing job!!! I hope u will get that Silver Play Button soon. Big like!
@AM-nm6ts
@AM-nm6ts 2 жыл бұрын
thank you sir for your intelligence and your pedagogy. very well explained. god bless u
@jherr
@jherr 2 жыл бұрын
thank you for getting me to look up pedagogy. :)
@b29gupta
@b29gupta 2 жыл бұрын
Hey! Jack, Thanks for explaining the memoization. This explanation really cleared the concept and usage well. Can you also create a video on redux-thunk vs redux-saga. That would be real great. Thanks again
@codewithmarwan
@codewithmarwan Жыл бұрын
Man, this video is a GEM
@thebattinson1278
@thebattinson1278 2 жыл бұрын
This is GOLD ! Thank you.
@ryanknight2170
@ryanknight2170 2 жыл бұрын
Wish this video was created a long time ago! Would have sped up my understanding 10x
@someshmusunuri4233
@someshmusunuri4233 2 жыл бұрын
best explanation with example. Thankyou
@oliver_ai
@oliver_ai 2 жыл бұрын
Thank you for the masterclass on these topics
@hamdinahdi899
@hamdinahdi899 2 жыл бұрын
awsome and comprehensive explanation thanks a lot
@andreslikesramen
@andreslikesramen 2 жыл бұрын
best video on this subject thanks for helping me understand this better
@boopfer387
@boopfer387 2 жыл бұрын
Jack one of the best breakdowns I've seen on React Memo thank you very much!
@alisonhj
@alisonhj 2 жыл бұрын
Thank you for your amazing explanation! You made it so much clear to understand!
@artyomkorbut5623
@artyomkorbut5623 2 жыл бұрын
Great video, Jack! Thank you so much for your work! Keep it going.
@kashifniaz4627
@kashifniaz4627 Жыл бұрын
Thanks. it's really too much to digest. from-now I am your content follower.
@none0n
@none0n 2 жыл бұрын
My best KZbin channel
@dazjacktar6202
@dazjacktar6202 2 жыл бұрын
Thanks mate, perfect explanation!
@axe-z8316
@axe-z8316 2 жыл бұрын
wow the content is getting so much better ! great video !
@patrickren7395
@patrickren7395 2 жыл бұрын
I respect seasoned engineers putting out in-depth & yet easy to understand videos on topics that are intermediate or advanced. The internet is populated with "Learn XYZ for beginners", duh...
@fooked1
@fooked1 Жыл бұрын
Probably the best explanation on this topic.
@ukaszzbrozek6470
@ukaszzbrozek6470 2 жыл бұрын
Great stuff ! This topic was always confusing to me. Thanks !
@batumanav
@batumanav 2 жыл бұрын
This was purely informative, thank you so much.
@nafas-ki7ce
@nafas-ki7ce Жыл бұрын
You a wonderful teacher. thanks for your videos
@marcelsdev
@marcelsdev 2 жыл бұрын
Jack, awesome videos like always, and great detailed explanation. One thing, just before your "5 Things To Remember" section, your video background tilts and slides away - At that moment I looked away and from the corner of my eye it looked like my screen was falling off my desk! Hahahaha, I got a fright there for a split second! 🤣
@jherr
@jherr 2 жыл бұрын
Hahah, I'll put a warning on the net one. :P
@akramadil7502
@akramadil7502 2 жыл бұрын
Thank you, your explanation way is so amazing and I learned a lot and how you use examples is great.
@djitaispector2329
@djitaispector2329 2 жыл бұрын
Thank you for this. I've been watching several videos from you, and they are all great. You go deep and into details, and throughout the way you teach a lot of small things that can help build the bigger picture. I'm interested to know about your career history, can you make a video about that? like when you started to program, what languages, frameworks, talk about the evolution of computer science from your aspect and so on... Cheers! (btw finally subscribed!)
@ThomazMartinez
@ThomazMartinez 2 жыл бұрын
Couple of questions, 1. when you test JS code what exstention do you use to run the code straight away and display in editor? 2. what do you use to autocomplete code for you?
@jherr
@jherr 2 жыл бұрын
I often use WallabyJS, and for auto completion I use GitHub Copilot.
@SHIVAMPANDEYSJTG
@SHIVAMPANDEYSJTG 2 жыл бұрын
That was something I was looking for!
@sagarreddy7461
@sagarreddy7461 2 жыл бұрын
Awesome, thanks jack!!
@kishoreandra
@kishoreandra 2 жыл бұрын
Amazing video jack ... That comparison with loadash is great one to remember react.memo forever 🤘, just surprised that the button clicked times is not updating 🤔 is always 0 (oh my bad !! It's on color click 🤣)
@trenthm
@trenthm 2 жыл бұрын
Another great video! Thanks!
@haribhushan
@haribhushan Жыл бұрын
JACK your way of teaching makes you the best teacher i have ever seen .I am super impressed by the MFE video you explained .may i know what is that extension which is showing function output immediately
@chanduiit42
@chanduiit42 Жыл бұрын
Great video Jack 😊 Just a small observation, although the reconciliation algorithm found a better way to diff from O(n^3) to O(n), it doesn’t do it in O(1) time, so I guess sweating on these re-renders would really save the extra O(n) time. If so isn’t it fruitful to think of stopping the re-renders?
@jherr
@jherr Жыл бұрын
Unless your application is re-rendering huge trees from the root all the time I wouldn't worry too much.
@chanduiit42
@chanduiit42 Жыл бұрын
@@jherr Yes true indeed
@444ous
@444ous 2 жыл бұрын
Jack you are an amazing teacher! Thank you for this video!
@jerviemarquez5192
@jerviemarquez5192 8 ай бұрын
Thanks Jack!
@mani8586
@mani8586 2 жыл бұрын
Hi Jack can we have a video on how to deploy the final react app, covering different types of deployment, performance factors etc
@brilliantatosam
@brilliantatosam Жыл бұрын
Great content. You're a wonderful teacher. Keep up the good work, Sir.
Mastering React Batch Updating
10:23
Jack Herrington
Рет қаралды 44 М.
Making React Context FAST!
33:34
Jack Herrington
Рет қаралды 88 М.
He bought this so I can drive too🥹😭 #tiktok #elsarca
00:22
Elsa Arca
Рет қаралды 62 МЛН
АЗАРТНИК 4 |СЕЗОН 3 Серия
30:50
Inter Production
Рет қаралды 964 М.
From Small To Giant Pop Corn #katebrush #funny #shorts
00:17
Kate Brush
Рет қаралды 43 МЛН
小丑在游泳池做什么#short #angel #clown
00:13
Super Beauty team
Рет қаралды 41 МЛН
Mastering React's useEffect
25:20
Jack Herrington
Рет қаралды 174 М.
You Probably Shouldn't Use React.memo()
10:17
Theo - t3․gg
Рет қаралды 55 М.
A Jr Dev For Life?? | Prime Reacts
21:33
ThePrimeTime
Рет қаралды 303 М.
Goodbye, useEffect - David Khourshid
29:59
BeJS
Рет қаралды 500 М.
You're Doing React Hooks Wrong, Probably
20:11
Jack Herrington
Рет қаралды 64 М.
So You Think You Know Git - FOSDEM 2024
47:00
GitButler
Рет қаралды 1,1 МЛН
Picking From 20 React State Managers
35:18
Jack Herrington
Рет қаралды 85 М.
This is the Only Right Way to Write React clean-code - SOLID
18:23
Mastering React Context: Do you NEED a state manager?
37:26
Jack Herrington
Рет қаралды 99 М.
He bought this so I can drive too🥹😭 #tiktok #elsarca
00:22
Elsa Arca
Рет қаралды 62 МЛН