Skip to main Content

Professional Node.js

  • Course Code LO035419
  • Duration 4 days

Course Delivery

Public Classroom Price

Please call

Request Group Training Add to Cart

Course Delivery

This course is available in the following formats:

  • Public Classroom

    Traditional Classroom Learning

Request this course in a different delivery format.

Course Overview

Top

Node.js is considered a game changer. It is the biggest shift of the decade in web development. Node.js applications are written in JavaScript, which enables scenarios such as single-language application stacks and the sharing of code between the server and the client.

The goal of this course is to guide you through the emerging world of patterns, techniques, and practices, helping you to understand proven solutions to common problems.

Throughout the course, you will be presented with several libraries and technologies. They will be used to demonstrate a pattern or technique, and will also give you great exposure to the Node.js ecosystem and its set of solutions.

Course Schedule

Top

Target Audience

Top

This course is for developers who have already had initial contact with Node.js and now want to get the most out of it in terms of productivity, design quality, and scalability. You are only required to have some prior exposure to the technology through some basic examples, since this course will cover some basic concepts as well. Developers with intermediate experience in Node.js will also find the techniques presented in this course beneficial.

Course Objectives

Top

This course will uncover a set of patterns to solve common problems encountered in Node.js design and coding. Finally, you will explore writing modular and efficient Node.js applications.

Course Content

Top

Lesson 1: Welcome to the Node.js Platform

  • The Node.js Philosophy
  • Introduction to Node.js 6 and ES2015
  • The Reactor Pattern

Lesson 2: Node.js Essential Patterns

  • The Callback Pattern
  • The Module System and its Pattern
  • The Observer Pattern

Lesson 3: Asynchronous Control Flow Patterns with Callbacks

  • The Difficulties of Asynchronous Programming
  • Using Plain JavaScript
  • The async Library

Lesson 4: Asynchronous Control Flow Patterns with ES2015 and Beyond

  • Promise
  • Generators
  • Async/Await Using Babel
  • Comparison

Lesson 5: Coding with Streams

  • Discovering the Importance of Streams
  • Getting Started with Streams
  • Asynchronous Control Flow with Streams
  • Piping Patterns

Lesson 6: Design Patterns

  • Factory
  • Revealing Constructor
  • Proxy
  • Decorator
  • Adapter
  • Strategy
  • State
  • Template
  • Middleware
  • Command

Lesson 7: Wiring Modules

  • Modules and Dependencies
  • Patterns for Wiring Modules
  • Wiring Plugins

Lesson 8: Universal JavaScript for Web Applications

  • Sharing Code with the Browser
  • Introducing Webpack
  • Fundamentals of Cross-Platform Development

Course Prerequisites

Top

Hardware:

This course will require a computer system for the instructor and one for each student. The minimum hardware requirements are as follows:

  • Processor: Pentium 4 (or equivalent)
  • 2GB RAM
  • Hard disk space: 10GB
  • A projecting device (for the instructor only)
  • An internet connection
  • A keyboard, mouse, or other pointing device

Software: