Course Outline
Introduction to Node.js
- RAM versus I/O latency
- Blocking versus Non-Blocking operations
- Event-driven Programming
- The Event Loop
- Preventing the Event Loop from Blocking
- Node.js Design Philosophy
Node.js Platform Configuration
- Downloading and Installation
- The Node REPL
- Creating a First Hello World Program
Modules and npm
- Structure of a Module
- Encapsulating Private Code
- Accessing and Utilizing Modules
- Executing npm Commands
- The package.json File
The Callback Pattern
- Definition of Callbacks
- Callback-Last Convention
- Error-First Convention
Events
- Appropriate Use of Event Emitters
- Attaching Functions to Events
- Handling Event Requests
- Listening to Events
Error Handling
- Callbacks: Error-First Approach
- Managing Errors in Event Emitters
- Handling Uncaught Exceptions
- Implementing Domains
Buffers
- The Purpose of Buffers
- Creating Buffer Instances
- Reading from and Writing to Buffers
- Modifying Buffer Contents
Streams
- Concepts of Streams
- Read and Write Stream APIs
- Implementing Flow Control
- Using Piping
- Duplex Streams
- Transform Streams
Express.js
- Introduction and Installation of Express.js
- Developing a Hello Express Application
- Defining Application Routes
- Rendering Layouts
- Implementing Templates
- Incorporating Partials
- Utilizing Locals and Conditional Templates
- Structuring Modular Routes
Socket.io
- Listening for Events
- Broadcasting Messages
- Responding to Interactions
Database Integration
- NoSQL and Document Stores
- Relational Databases
- Configuration and Platform Setup
- Performing CRUD Operations
Requirements
Participants enrolling in this course are expected to possess prior experience in JavaScript programming.
Testimonials (7)
I enjoyed the interesting topics and touching on the various nuances of javascript/typescript/nodejs/
John - BMW SA
Course - Node.js for JavaScript Developers
The platform
Shaun Mbhiza - BMW SA
Course - Node.js for JavaScript Developers
Hands on exercises
Daniel - BMW SA
Course - Node.js for JavaScript Developers
I was not aware that is would be so interactive and code heavy, which I loved and thought it made the learning more fun and effective.
Ryan - BMW SA
Course - Node.js for JavaScript Developers
His Humour & Personailty
Karabo Mphahlele - BMW SA
Course - Node.js for JavaScript Developers
The practical examples
Werner - BMW SA
Course - Node.js for JavaScript Developers
I was benefit from doing the exercises to understand nodejs concepts.