Call us at 1-978-250-4299
Hands On Technology Transfer

Node.js Training Course

Attend face-to-face, remote-live, on-demand or on site at your facility

On-Demand Training with Personal Facilitation
Top

Node.js Application Development

Delivery Options: Attend face-to-face in the classroom, remote-live or via on-demand training.

Pricing

Face-to-face or remote-live: CDN$2,775

On-demand: CDN$1,975

Discounts: We offer multiple discount options. Click here for more informaiton.

Duration

Face-to-face or remote-live: 4 Days

On-demand: Approximately 28 hours of coursework with personal facilitation, to be completed in a four week span.

Registration

Face-to-face: Click here to view our schedules and register for in-person sessions.

Remote-live: Click here to register for live remote class sessions within a date range of your choosing.

On-demand: Click here to register for on-demand training with personal facilitation, on a start date of your choosing.

Students Will Learn

  • Installation and configuration of Node.js
  • Using npm to install and manage modules
  • Working with the V8 Engine
  • Building HTTP servers and HTTP clients
  • Synchronous and asynchronous design patterns
  • Building Node.js applications
  • Storing application data in NoSQL databases
  • Working with Web application frameworks such as Express
  • Testing and Debugging Node.js applications
  • Using Node.js core modules
  • Using the Node.js event system and event emitters
  • Interacting with the file system using buffers and streams
  • Using Node.js networking API's to build internetworked applications
  • Creating and consuming RESTful Web services

Course Description

This hands on Node.js training course will teach front end designers and server side developers how to rapidly create, maintain, and deploy Node.js applications. This course includes thorough coverage of the Node.js architecture, the V8 engine and the Node Ecosystem. The course takes a practical approach to creating and organizing Node.js applications using functions and modules as part of the Node.js organizational structure. This course will provide attendees with a comprehensive understanding of Node.js core modules and how to procure and install packages using npm. Attendees will learn to identify and correct problems through unit testing and exception handling.

Attendees will learn how to use Node.js to create Command Line Interface applications for system administration and process management, use Node.js networking modules to communicate with TCP/IP clients and servers such as HTTP servers, and create / consume REST (Representational State Transfer) data services. Attendees will learn how to leverage frameworks such as Express to rapidly build Web Applications. Attendees will learn how to use Node.js to connect to NoSQL databases such as MongoDB to store, retrieve, and manipulate data (i.e., achieve data persistence).

Comprehensive hands on exercises are integrated throughout to reinforce learning Node.js and develop real competency.

Course Prerequisites

Knowledge of JavaScript equivalent to attending the JavaScript Programming course. Attendees should also have familiarity with a Windows, Linux, or OS X command line interface as well as a basic understanding of network protocols such as HTTP.

Course Overview

About Node.js
  • Server Side JavaScript
  • The Event Loop
  • Asynchronous Execution
  • npm
  • Node.js Architecture
  • Node.js Core Modules
  • Node.js Projects and Applications
  • Node.js Command Line Arguments
Node.js Global Environment
  • Timers
  • Global Objects
  • The process Object
  • Buffers and Buffer Manipulation
ES6 Enhancements
  • Arrow Functions
  • let and const Keywords
  • Enhanced Object Literals
  • Map and Set Collections
  • WeakMap and WeakSet Collections
  • String Template Literals
Installation and Configuration
  • Node.js
  • npm
  • Express
  • MongoDB
  • Mongoose
Programming Fundamentals with Node
  • Using Modules to Organize Code
    • Creating and Reusing Code with Modules
  • Asynchronous Programming Fundamentals
  • Using Callbacks to Handle Events
  • Using EventEmitters to Handle Repeating Events
  • Type Testing with the util Module
  • The Node.js Module Loading System
  • Module Caching
Unit Testing and Debugging with Node.js
  • Implementing Unit Tests with the Assert Module
  • Test Driven Development with Nodeunit
  • Behavioral Testing with Mocha
  • Facilitating Debugging with the Console Module
  • Working with the Node.js Debug Utility
System and Data Interaction With Node
  • Interacting with the System Using the os Module
  • Working with the File System Using the fs and path Modules
  • Managing Data Flow with Pipes and Streams
  • Synchronous vs. Asynchronous File System Interaction
  • Using Buffers to Read and Manipulate Binary Data
  • Handling and Transforming File Path Information with the path Module
  • Spawning and Managing Processes using the process Module
Data Persistence with Node.js
  • Data Persistence Mechanisms
  • MongoDB Capabilities
  • Connecting to MongoDB
  • Using the fs Module to Read and Write Files Synchronously and Asynchronously
Web Application and Network Programming
  • Using Express to Rapidly Build and Deploy Web Applications
  • REST-Based Web Service Fundamentals
  • Creating HTTP Servers and Clients Using the http Module
    • Sending HTTP Requests and Receiving HTTP Responses
  • Making DNS Requests with the dns Module
  • Creating TCP Clients and Servers with the net Module
Process Management with the process Module
  • Executing External Applications
  • Attaching and Detaching Child Processes
  • Facilitating Inter-Process Communication between Node.js Processes
  • Making Node.js Applications Executable
Creating Modules
  • Planning Modules
  • Working with the package.json File
  • Working with Dependencies
  • Understanding Semantic Versioning
  • Testing Modules
 

Related Courses

Testimonials

The instructor did an amazing job. This was one of the best classes I've taken. The class passed all my expectations. Because of this experience I will certainly recommend and consider HOTT for future training.
— C.N., The Federal Reserve Bank of Chicago


This is the best training class I ever had! This instructor obviously has significant practical experience and it shows. The pace of the class was very good and it kept my attention.
— K.C., Aegon

Course Schedule

Choose a city below to view a schedule of courses. Attend regularly scheduled classes across Canada, or attend via our Remote-Live and On-Demand training options.