Introduction to Node.js Course

Register this course for $390
USA & Canada: +1 240-200-6131
International Call: +1 240-391-8360
9am-6pm DC time or 1pm-10pm GMT

Course Code: hsts-c7

Course Overview

HSTS's Intro to Node.js training course is designed to demonstrate the power and flexibility of the Node.js platform. This course is a combination of lectures and hands-on exercises that provide practical real-world experience.
Since its introduction in 2009, Node.js has become one of the go-to platforms from developing everything for massively scaleable real-time enterprise web applications to automating Internet of Things embedded devices. Because it is written in JavaScript, the most popular and widely used programming language in the world, and has more than 200,000 publicly available opensource packages in its module ecosystem, developing Node.js applications increases developer productivity and reduces infrastructure costs. In our Intro to Node.js training course, students will learn:

  • The fundamentals of asynchronous server-side JavaScript
  • Node.js standard library including Streams, Buffers and HTTP servers
  • How to create, deploy and distribute Node.js applications
  • Workflow automation with Gulp and Grunt task runners
  • Interacting with NoSQL databases like MongoDB and Redis
  • The basics of building a real-time web application in the Express.JS framework

Course Prerequisites

Students must have a good working knowledge of computers, operating systems, using a mouse, keyboard, standard menus and commands. Students must be able to open, save, and close applications, files, as well as navigate to other folders.
To participate in the hands-on code demos, students should have a basic working knowledge web browsers. Previous experience with HTML, CSS and JavaScript/jQuery is helpful, but students without programming backgrounds still will be able to follow along and run sample code.

Job Roles For This Course

- Web developers
- DevOps engineers
- Data Scientists
- Game developers

Projects Using This Course

Websites and web applications
RESTful APIs and other data microservices
Robotics, physical computing and Internet of Things devices

Related Training and Courses

PHP and MySQL Coding
Cross-platform Native App Development Using HTML5, CSS3 and JavaScript
Advance JavaScript, jQuery Using JSON and Ajax
Advance Website Design Using HTML and CSS

Class Info

Highlights

  • 10 sessions each 1.5 hours with hands-on training led by experienced instructors
  • Digital courseware and online course tracking
  • Final course project delivery
  • Certificate of Completion for each course
  • Session-based assignment

Enrollment Fee

In-person in DC or Online: $390 per course

Course Session Dates

Our courses are offered all year around. Upon registration we enroll you to the earliest available class but you can reschedule it free of charge.

Location

  • In Person at our office (1525 Newton St, NW, Ste 212 Washington DC, 20010) located 2 blocks from the Columbia Height metro
  • Private custom training on site or at your location
  • Project based training cn site or at your location

Time

  • In Person: 9AM-3:00PM (1 hour Lunch)
  • Private custom & project based training: your preference

Software Versions

Our classes are taught on the most current version of software whenever possible. To request a specific version, please Contact Us or call us at 240-200-6131


Course Outline


1. What Is Node.js?

Introduction to Node.js

Installing Node.js two ways


2. Why Node.js?

A brief history of the World Wide Web

The evolution of JavaScript for 1994 to present

Requirements of modern web applications

The road to Node through Ruby on Rails

Understanding the problems Node.JS aims to solve


3. A Crash Course in JavaScript

Datatypes: The building blocks of an application

Functions: Getting stuff done

Control structures

Understanding objects and object-oriented programming

JSON

Synchronous and asynchronous programming


4. The Node.js Runtime

“Hello, world!” writing your first program

JavaScript in the browser vs. the server

Visualizing the heap, the stack and the event loop

Understanding callbacks

Handling errors


5. Understanding Modules

Dependency management 101

Common.JS and EMCA 2016 imports

Defining a program with package.json

Versioning with SemVer 2.0


6. Using npm

Node vs. npm

Defining your own module with npm

Writing scripts

Managing dependencies with npm

Sharing your module


7. The Node.js Standard library

Understanding the API documentation

The process and global objects

Accessing the filesystem

Using Streams

Manipulating data with Buffers

Creating an HTTP server


8. Event-based Programming

What is an event?

Listening for an event

Event-based I/O

Defining your own events


9. Designing Your Application

Getting out out “callback hell”

Control flow with async.js

Using ECMA 2016 Promises

The road ahead: EMCA 2017 async/await


10. NoSQL Databases

Relational vs. non-relational databases

Using MongoDB in Node

Using Redis in Node


The following topics may be included at the discretion of your instructor.


11. Building an Express web application

What is a web app?

Configuring Express

Understanding routers

Using data to create dynamic views

Sockets and real-time communication


12. Deploying Your Application

Installing an application on a live server

Running multiple node apps as microservices


13. Task Runners

Workflow automation

Introduction to Grunt

Introduction to Gulp


14. Extending Node.js With C++ Add-ons

Transcending JavaScript with Node

Using node-gyp to compile and run an extension

Register this course for $390