Node.js for JavaScript Developers Training Course

Primary tabs

Course Language

This course is delivered in Polish or English.

Course Code

nodejsdev

Duration Duration

21 hours (usually 3 days including breaks)

Requirements Requirements

Students taking this course should have JavaScript programming experience.

Overview Overview

Overview

Node.js is a platform for easily building fast, scalable network applications. Learn how to use the event-driven, non-blocking I/O model to build data-intensive real-time applications that run across distributed devices. We will explore the design choices that make Node.js unique, how this changes the way applications are built and how systems of applications work most effectively in this model. Learn how to create modular code that’s robust, expressive and clear. Understand when to use callbacks, event emitters and streams. Use streams to easily manipulate data that would be impossible to fit in application memory. Gain confidence in handling errors effectively to ensure runtime reliability. The course has extensive lab exercises to reinforce the concepts and techniques covered.

Objectives

On completion of this course, students will be able to:

  • Clearly understand the platform design choices that led to Node.js choosing an event loop and what this means for applications built on that foundation.
  • Understand the unique trade-offs present in event-driven programming.
  • Create Node.js modules and express code modularity in an application.
  • Understand the core flow control patterns in Node.js and know when it is appropriate to use callbacks, event emitters or streams.
  • Create and manipulate buffers efficiently.
  • Understand how to manage error state and know when a process should exit due to an error.
  • Build network applications with Node.js.

Course Outline Course Outline

Intro to Node.js

  • RAM vs. I/O latency
  • Blocking vs. Non-Blocking
  • Event-driven Programming
  • Event Loop
  • Blocking The Event Loop
  • Node.js Philosophy

Node.js Platform Setup

  • Download and Install
  • Node REPL
  • First Hello World

Modules and npm

  • Anatomy of a module
  • Private code
  • Accessing and using modules
  • npm commands
  • package.json

The Callback Pattern

  • What are callbacks
  • Callback-last
  • Error-first

Events

  • When to use Event Emitters
  • Binding Functions to Events
  • Event Requests
  • Event Listening

Error Handling

  • Callbacks: Error-first
  • Errors in Event Emitters
  • Uncaught Exceptions
  • Using Domains

Buffers

  • Why Buffers exist
  • Creating Buffers
  • Reading and Writing Buffers
  • Manipulating Buffers

Streams

  • What are streams
  • Read and Write Stream API
  • Flow Control
  • Piping
  • Duplex Stream
  • Transform Stream

Express.js

  • Intro and Installing Express.js
  • Building a Hello Express application
  • Creating routes
  • Rendering Layouts
  • Using templates
  • Adding partials
  • Using locals and conditional templates
  • Modularizing routes

Socket.io

  • Listening for
  • Broadcasting
  • Answering questions

Connecting to Databases

  • No SQL and Document Stores
  • Relational DBs
  • Configuration and platform setup
  • CRUD Operations

Guaranteed to run even with a single delegate!
Public Classroom Public Classroom
Participants from multiple organisations. Topics usually cannot be customised
From 3236PLN
(72)
Private Classroom Private Classroom
Participants are from one organisation only. No external participants are allowed. Usually customised to a specific group, course topics are agreed between the client and the trainer.
From 3236PLN
Request quote
Private Remote Private Remote
The instructor and the participants are in two different physical locations and communicate via the Internet
From 8700PLN
Request quote

The more delegates, the greater the savings per delegate. Table reflects price per delegate and is used for illustration purposes only, actual prices may differ.

Number of Delegates Public Classroom Private Classroom Private Remote
1 3236PLN 3236PLN 8700PLN
2 2693PLN 2693PLN 5425PLN
3 2512PLN 2512PLN 4333PLN
4 2422PLN 2422PLN 3788PLN
Cannot find a suitable date? Choose Your Course Date >>
Too expensive? Suggest your price

Related Categories


Course Discounts

Course Venue Course Date Course Price [Remote/Classroom]
Administracja serwerem Apache Tomcat Kraków, ul. Rzemieślnicza 1 Mon, 2016-10-03 09:00 2344PLN / 1736PLN
Programming in Scala Poznan, Garbary 100/63 Tue, 2016-10-04 09:00 3479PLN / 2114PLN
Web Application Development in PHP Szczecin, ul. Małopolska 23 Tue, 2016-10-04 09:00 2688PLN / 2081PLN
Visual Basic for Applications (VBA) in Excel - Introduction to programming Warszawa, ul. Złota 3/11 Tue, 2016-10-04 09:00 1941PLN / 1504PLN
Introduction to Linux Poznan, Garbary 100/63 Tue, 2016-10-04 09:00 1640PLN / 1100PLN
Docker for Developers and System Administrators Gdańsk, ul. Powstańców Warszawskich 45 Wed, 2016-10-05 09:00 2507PLN / 1963PLN
Adobe InDesign Lublin, ul. Spadochroniarzy 9 Wed, 2016-10-05 09:00 1220PLN / 1144PLN
ITIL® Foundation Certificate in IT Service Management Warszawa, ul. Złota 3/11 Mon, 2016-10-10 09:00 2639PLN / 2076PLN
Visual Basic for Applications (VBA) in Excel - Advanced Wroclaw, ul.Ludwika Rydygiera 2a/22 Mon, 2016-10-10 09:00 1689PLN / 1296PLN
Market Forecasting Poznan, Garbary 100/63 Thu, 2016-10-13 09:00 2936PLN / 2112PLN
ITIL® Foundation Certificate in IT Service Management Łódź, ul. Tatrzańska 11 Mon, 2016-10-17 09:00 2639PLN / 2160PLN
Excel and VBA Programming for Audit and Finance Professionals Katowice ul. Opolska 22 Mon, 2016-10-17 09:00 1941PLN / 1682PLN
Effective working with spreadsheet in Excel Rzeszów, Plac Wolności 13 Tue, 2016-10-18 09:00 598PLN / 737PLN
Market Forecasting Warszawa, ul. Złota 3/11 Wed, 2016-10-19 09:00 2936PLN / 2112PLN
ITIL® Foundation Certificate in IT Service Management Szczecin, ul. Małopolska 23 Wed, 2016-10-19 09:00 2639PLN / 2134PLN
Podstawy inżynierii wymagań i analizy Gliwice ul. Karola Marksa 11 Thu, 2016-10-20 09:00 2735PLN / 1967PLN
ITIL® Foundation Certificate in IT Service Management Zielona Góra, ul. Reja 6 Mon, 2016-10-24 09:00 2639PLN / 2118PLN
Apache Tomcat and Java EE Administration Warszawa, ul. Złota 3/11 Mon, 2016-10-24 09:00 2344PLN / 1555PLN
A Practical Guide to Successful Pricing Strategies Poznan, Garbary 100/63 Wed, 2016-10-26 09:00 1427PLN / 1093PLN
Creating and delivering presentations in Power Point (social skills workshop) Poznan, Garbary 100/63 Thu, 2016-10-27 09:00 1572PLN / 1121PLN
Agile Project Management with Scrum Kraków, ul. Rzemieślnicza 1 Wed, 2016-11-02 09:00 1746PLN / 1449PLN
Adobe InDesign Lublin, ul. Spadochroniarzy 9 Mon, 2016-11-07 09:00 1220PLN / 1144PLN
Agile Project Management with Scrum Poznan, Garbary 100/63 Mon, 2016-11-07 09:00 1746PLN / 1315PLN
Administration of Linux System Olsztyn, ul. Kajki 3/1 Tue, 2016-11-08 09:00 1940PLN / 1509PLN
SQL Fundamentals Warszawa, ul. Złota 3/11 Wed, 2016-11-09 09:00 1358PLN / 853PLN
Excel For Statistical Data Analysis Warszawa, ul. Złota 3/11 Mon, 2016-11-14 09:00 1343PLN / 1031PLN
Visual Basic for Applications (VBA) in Excel - Advanced Białystok, ul. Malmeda 1 Mon, 2016-11-14 09:00 1689PLN / 1413PLN
Python Programming Szczecin, ul. Małopolska 23 Tue, 2016-11-15 09:00 5790PLN / 3824PLN
Creating and managing Web sites Kraków, ul. Rzemieślnicza 1 Mon, 2016-11-21 09:00 3410PLN / 2836PLN
Graphic techniques (Adobe Photoshop, Adobe Illustrator) Wroclaw, ul.Ludwika Rydygiera 2a/22 Tue, 2016-12-06 09:00 1963PLN / 1470PLN

Upcoming Courses

VenueCourse DateCourse Price [Remote/Classroom]
Lublin, ul. Spadochroniarzy 9Mon, 2016-10-17 09:003788PLN / 2595PLN
Opole, Wladyslawa Reymonta 29Mon, 2016-10-17 09:003788PLN / 2678PLN
Szczecin, ul. Małopolska 23Tue, 2016-10-18 09:003788PLN / 2513PLN
Kielce, ul. Warszawska 19Wed, 2016-10-19 09:003788PLN / 2595PLN
Łódź, ul. Tatrzańska 11Mon, 2016-10-24 09:003788PLN / 2537PLN

Some of our clients