In this course you’ll go under the hood of Node.js in two contrasting ways - by understanding how to develop servers from intuitive first-principles (HTTP, TCP/IP, Ports, Loopback, SSH) and by understanding the JavaScript features that make up Node (the event loop, streams, buffers, asynchronicity, prototypes). Taking these two approaches together you will develop a deeper understanding of servers, Node, and JavaScript itself!
Overview
Syllabus
- Introduction
- Node Overview
- JavaScript, Node & The Computer
- Executing JavaScript Code Review
- Executing Node Code
- Calling Node with JavaScript
- Calling Methods in Node
- Calling a Function Under the Hood
- Creating a Server Under the Hood
- Creating a Server Summary
- Node Under the Hood Q&A
- Request & Response with Node
- Express Q&A
- Preparing for HTTPRequestObject
- Parsing HTTPRequestObject
- HTTP Response in Node
- HTTP Request & Response Q&A
- Response Headers
- Intro to Require in Node
- JavaScript Node Development
- Cloud Node Development
- Local Node Development
- Node Pair Programming Setup
- Error Handling in Node
- Event Handling in Node
- Modifying the Node Server
- Node Event Handling in Action
- Introducing the File System API
- Importing with fs
- Reading from the File System with fs
- Call Stack Introduction
- File System Q&A
- Introducing Node Streams
- Node Streams Overview
- Setting Up the Stream
- Processing Data in Batches
- Checking the Callback Queue
- Node Streams Q&A
- Introduction to Asynchronicity
- Timer Queue
- IO Queue
- Check Queue
- Event Loop Completion
- Microtask & Close Queues
- Priority of Queue Execution
- Asynchronicity in Node Q&A
- Wrapping Up
Taught by
Will Sentance