Node.js Under the Hood | Understanding Node.js Core Concepts FREE VERSION
ฝัง
- เผยแพร่เมื่อ 22 ส.ค. 2024
- Grab the complete and premium version of the course using this link:
www.udemy.com/...
In this video, we take a deep look at what Node.js really is.
The Course - Free Version: • Understanding Node.js ...
--------------------------------------------------------------------
My LinkedIn Profile: / joseph-heidari
Cododev Website: www.cododev.ca
Never stop to make videos, now you are my favorite dev channel!
📖Chapters
00:00 - What we’ll learn?
01:46 - How do Processors Understand Code?
06:01 - Assembly Language Application Demo
10:36 - C++ Application Demo
19:33 - JavaScript and JavaScript Engines
21:18 - V8 JavaScript Engine
27:26 - Taking a Look at V8’s Source Code
35:23 - Understanding How V8 is used by Node.js
39:32 - Taking a Look at Node’s Dependencies
41:47 - Project Ideas using V8
43:43 - Taking a Look at Node’s Source Code
52:34 - Taking a Look at other Node.js Files
56:20 - A Brief History of JavaScript & Node.js
01:00:50 - Understanding LibUV (Processes & Threads)
01:07:50 - Understanding Node.js Process
01:11:37 - Event Loop in Node.js
01:29:12 - Thread Pool or Worker Pool
01:31:02 - Don’t Block the Main Thread
01:36:46 - Wrap Up
This was a really adventurous journey of exploring V8 and Node.js source code.
It is going to be the most popular Node.js course in couple of years, I can see the future. All the best 😊
Definitely the best video for understanding node js ❤❤❤
Amazing high-quality content! Such well structured explanations are very difficult to find right now on the web. When looking online, you typically find a lot of tutorials/articles that explain how NodeJs works by showcasing it through a package like express. This can be proved extremely useful, but if you want to dive deeper into NodeJs, more material like the ones you post are necessary. Anyone who wants to dive deeper can benefit from those. Keep up, I'll follow every video you post!
they all read from wikipedia except this one , this video is truly a masterpiece and i love it
I kept searching for course explaining the concepts of the nodejs not just jump in to express framework and here you go.keep going you are doing such a great work
I've read Operating Systems book in this year to get some computer science knowledge as a front-end developer but still I discover something new from computer science topics when I watching your videos. Come to learn Node - upgraded in computer science ^^. You definitely should keep going man!
For the first time in my life i started watching double ads of TH-cam for the whole length of video as a way of expressing my gratitude to you brother..Thank you so much
Thought you had 962K subscribers, until I realized it was just 962 subscribers. Your content is so amazing, I wasn't a bit surprised when I thought you were close to a million subscribers. You deserve it.
I've watched this video and the ones prior, plus the buffer one so far and I'm so thankful, I landed on your page. Literally speechless, it's amazing. Thanks for being so thorough.
I am thankful for this serious. I like my learning mediums to be either books or official documentation but bring a variety to how I learn, I always look for videos with high quality teaching material.
Thank you for your effort and we hope to see more videos from you.
Thank you very much Sayed Dileri! Glad you’ve learned valuable things here! I’ll try my best so that you can learn even more in future contents! Thanks again!
Hands down best explanation. Answered all my questions and cleared any doubts about Nodejs. Even more how you can access the underlying structure to add your own c++ functions. Amazing 🤯
I'm coding on javascript about 6years but this is something new I never know. Very useful thanks!
bro PLEASE continue making videos! It's so helpful and explained very well. I'm a full stack developer and your in depth explaining of nodejs and how it works under the hood has gotten me more appreciative of C++ and Linux/UNIX etc. Watching your vids is what I do when I'm losing motivation to study and procrastinating, it's so helpful!
just wow.. i'm bown.. i really wish and hope you'd finish this series i'll be there
Thanks soo much for this video. I am on the road to becoming a fullStack developer. I have already gotten to an intermediate level on the frontEnd side, b ut when i initially started learning the backend with NodeJs, it felt a little bit different and i felt oi needed a way to learn about the core concepts. I am verry happy i found this video. I am looking forward to finishing the rest of the course with you. ❣
Yeah I understand that first feeling you're talking about! Fortunately after a while and learning these core concepts it won't be like that anymore! Glad you found this useful and thanks for your comment!
I can't believe this video series is free! Thanks soo much bro
This chanel is underrated man, god bless you for sharing this for free .
Astonishing. I'm taking the time to grasp Node.JS concepts - particularly because I'm looking for a career migration. This video was relaxing, helpful, and extremely well-explained. I am closer to being a software engineer now than I was before watching this video.
Thank you.
Masterpiece . The course we all deserve . Kudos 🤲
Bro you should have atleast million subscribers for this content otherwise who would have known idk. subscribed! great content!.
Very informative and deep. Needs this kind of video to understand things clearly. Thank you so much 😀
best programming content i have ever seen. thanks for it
You have unveiled node js in a manner which is both fun to watch and mind blowing...
Please make more videos...
I presume you are well versed and have command over a multitude of languages... Like c++ rust and a bunch more... I have started to learn to code little over a year now.. these days I'm learning node js and alongside this learning some fundamentals like dsa... Please make a video describing your coding journey. Would love to watch it and take notes
Outstanding course ! Oriented to people with inquisitive minds , who need to understand why and how things work.
This is a hidden diamond .. I am so lucky that i found this, i filled a lot of holes in my understanding thank you man
By far one of the best series of videos I’ve come across during my time of TH-cam. Simply incredible work, thank you very much
This is probably the best Node.js course on Internet. Thank you for this amazing material and I hope you keep creating more content like this.
You are an artist ✨
I have noticed that the more detailed and helpful videos will almost always be the ones with the fewest views. But the most superficial gain millions
That's because the most of people have learning lazy of right way, because that is the harder way, but also the more efficiently way.
Great job, @Cododev. I really appreciate all the work you put in the video. It clarified most of the questions I had about how NodeJS works behind the scenes.
Looking forward to watching your the rest of your content :)
Cheers!
Thanks Gabriel!
never seen just a high-quality video before. Great job !!
you are a great teacher sir, you can teach a topic on an entertaining way on a great depth. i can watch whole video on single sit and entertained like watching movies or animes.
man, i'm truly learning javascript, i didn't know nodejs damn. I really hope you keep up with the good work. just finished this video, i'll continue with the entire series
bro really knows what it is actually required before learning things like node environment
Only two minutes in the video and I fall in love ❤️
Best video on the subject, so easy to understand.
Thank you so much. May God increase you in knowlegde.
Keep it up bro. This was an awesome explanation. Highly recommend for anyone who really wants to understand low level understanding of NodeJS.
Finally something that makes sense. Thank you. ❤
This is the best tutorial I ever seen on the youtube.❤
Oh man.. this play list is just too good!!!!! Thanks a looott!!!!!!!! ❤❤❤
read a comment on a different video that you are thinking of releasing the node js complete course on udemy, so i hope you do so because currently there's no course on node js that even is close to the way that you teach. there's a desperate need for people who teach in depth like you do. waiting for the release of your course though, take care!
thank you so much for making this video. I would really appreciate more this kind of videos related to back end and nodejs. Thanks again.
Detailed explanation , with good content, keep it coming❤
Your tutorial is simply the best...
Typescript will improve the stability of the runtime, which could possibly improve the performance of your team, but not the performance of your code because it ultimately this will be converted into js >> c++ >> assembly including the deoptimizer, 31:50 . This content is very high quality btw.
Thanks for this content, really appreciate your hard work
the best content i have ever seen
priceless content
very informative, liked the way you explained everything
This stuff is really amazing.
Looking forward to watch the full series.
This is excelent and exactly what i was looking for. Thank you so much ! Please keep doing videos like this
Shut up and take my money. I do not care how costly your course is I AM GOING TO BUY IT
Nice man, great jog. From Brazil!!!
That's called real engineering ❤
it was simply amazing, great explanation, just keep making these kind of videos. :)
Thanks for this well illustrated video and easy to understand examples
Great work!
You have amazing story telling skill man, very rare.
Thanks dude you give everything you got to help us keep it up ❤❤
great level of info buddy... exactly the one I was looking for
That was amazing, extraordinary explaination 🔥
Amazing work! Congratulations and thanks you for share this content
Thank you!!
'_"
This is worth more than 1000 tutorials.
Very underestimated channel.
I really wish that you'd teach a degree or something cause this is literally amazing work.
yohh!!!! wow quite amazing .. i like the way u explained with the diagrams cool hatsoff dude..!!!
i learned a lot of content from this
I have learned so many things. Thank you so much.
Really good man! Thank you!
just brilliant, please continue
Great content with high quality!!!
Amazing content, many thanks.
Hope you are planning to continue making advanced videos
Thank you for amazing video!!
Need more videos... great work 👍👍
you're a legend
This video was really great and helpful. Thank you.
great explanation of Event Loop
hands down nest channel for nodejs core
Excellent Video. Thanks for sharing
Thank you, you level up me
Outstanding explanation ❤
Incredible good content! ❤❤❤
Great 🎉 Please keep on
great stuff - thanks
Excellent Stuff keep up the good work
Amazing work, Subscribed! 👍
Subscribed!!!!! Great work Bro!
ARM46 - I’m for it
You are King
I appreciate your effort and what will come next? I am looking for the content that you put on this channel next time.
Thanks! Cododev :)
Thanks Yahya for your kind words!
Next up we'll learn about these core concepts in node: EventEmitters, File System, Streams, Net, and HTTP. Once we learn about them, we will have enough knowledge to build some intricate projects, so the course is going to get project-based after that (we'll build a very complex application and learn about so many new things along the way).
And of course, once we complete our application, we’re going to learn about deployment, scaling, monitoring, security and so much more!
Thanks again for your interest in the channel Yahya!
Welcome @@Cododev.Thanks for replying!
I am waiting and really excited about that path. ☺☺🤗
keep going!
Great video.Thank you so much!
This is a great course!
Really nice. Perfect done. Do you plan to release more? If yes, waht are you planning to release?
I have a query regarding the async programming, my earlier assumption was that because javascript is single threaded hence while performing any I/O operation the libuv used to open a thread to perform the I/O and then return the data and then the callback gets queued in the event loop. This was the general idea i had about async programming and i thought every async operation worked this way. Then i was reading through multiple languages that perform async and i found some blogs which said async programming has nothing to do with multiple threads and a single thread can be used for async operation . I saw this mainly in C# and you pointed that out at 1:29 that network requests do not require any threads from libuv. My whole confusion is if the main thread isn't executing the task , i am assuming it is being outsourced to someone else and for them to execute that task we need to open a thread but it looks like it doesn't seem to be the case.
That’s a great question! Well to start, async programming is totally different from multi-threading programming. And about the network requests, yes libuv doesn’t open a new thread to handle each request, rather the operating system will somewhat somehow get the requests and handles them USING ITS OWN THREAD(S). So technically there are multiple threads involved but those OS threads have nothing to do with our threads, in other words, we don’t need to care about them in our code, so we are doing all these in only one thread, and we are also doing these asynchronously.
This outsourcing you mentioned is the case, if you can send me a link to these articles, I will take a look and let you know with more details. Thanks!
@@Cododev You are completely right , i did some digging few days ago and turns out most of I/O operations are non blocking and the device driver is actually responsible for completing the task . Internally, OS uses I/O Request Packets(IRP, think of it as an object which carries the state of the task and the metadata) to send to the device driver which changes the status of the IRP (lets say we are writing to a file , it will set the status to pending and give the control back) and as soon as the I/O is done , an interrupt signal is sent to continue the execution of the code which was written after await (and here the event loop is beneficial as the callback that is pushed into the stack gets executed only when the call stack is empty so we get the kind of execution that we see in node). There are languages like c# which actually does more/different optimisation on the compiler level (like breaking the code which has async operation into 2 parts , 1st is just before the async operation and the other is after the async and when it receives the interrupt signal , the code after the async operation starts executing)
blog.stephencleary.com/2013/11/there-is-no-thread.html
Well done! Keep it up 👍 Subscribed!
Thanks Vahan! Appreciate it!
Thanks
1:00:56 libuv started
I have a question, probably a dumb one? Why does an “executable file” created on one machine have to match the operating system and processor architecture if we want to run it on a different machine? From my understanding, the “executable file” is made up of 0’s and 1’s, and every computer can understand 0’s and 1’s. Shouldn’t “the executable file” be independent of the machine’s operating system and processor technology? (Forgive my English)
Event loop is a part of libuv, V8 use libuv's event loop, isn't it? Watching 1:30:00 I started to doubt that event loop is in V8, but is not.
Thank you, I enjoyed this a lot and learnt so much