Course Outline
Introduction to Node.js
- RAM versus I/O latency
- Blocking versus Non-Blocking mechanisms
- Event-driven Programming
- The Event Loop
- Preventing Event Loop Blocking
- Core Node.js Philosophy
Setting Up the Node.js Platform
- Downloading and Installation
- Using the Node REPL
- Creating a First Hello World application
Modules and npm
- Structure of a module
- Encapsulating Private code
- Accessing and utilizing modules
- Essential npm commands
- Managing package.json
The Callback Pattern
- Defining callbacks
- Callback-last convention
- Error-first convention
Events
- Identifying when to use Event Emitters
- Binding Functions to specific Events
- Initiating Event Requests
- Listening for Events
Error Handling
- Callbacks: Error-first approach
- Handling Errors within Event Emitters
- Managing Uncaught Exceptions
- Utilizing Domains
Buffers
- The purpose of Buffers
- Creating Buffers
- Reading and Writing Buffer data
- Manipulating Buffers
Streams
- Defining Streams
- Read and Write Stream APIs
- Implementing Flow Control
- Using Piping
- Duplex Streams
- Transform Streams
Express.js
- Introduction and Express.js Installation
- Developing a Hello Express application
- Defining application routes
- Rendering Layouts
- Integrating Templates
- Incorporating Partials
- Working with locals and conditional templates
- Modularizing route definitions
Socket.io
- Listening for events
- Broadcasting messages
- Responding to user queries
Database Connectivity
- NoSQL and Document Stores
- Relational Databases
- Configuration and Platform Setup
- Performing CRUD Operations
Requirements
Participants enrolled in this course are expected to possess prior programming experience in JavaScript.
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.