Basic & Advanced JavaScript and Node.JS Training Course

Basic & Advanced JavaScript and Node.JS Training Course

Overview

Course

This workshop teaches the participants how to design and develop server side applications using the event-driven, non-blocking model framework Node.js. This program inducts the participant in some of the advanced concepts of the JavaScript language so that the participant is well equipped to build end-to-end application using JavaScript.

Objectives

-
DAY-1

JAVASCRIPT
  • Introduction oLanguage Overview 
        oData Types oProgramming constructs
        oHandling Exceptions
        oObjects, Functions & Arrays
        oTimer Functions
  • Expressive JavaScript 
        oThe Flexibility of JavaScript
        oJavaScript as a Loosely Typed Language
        oFunctions as First-Class Objects
        oObject Mutability
  • Functions In Depth 
        oFunction Objects
        oFunction Literal
        oFunction Invocation Patterns
        oAugmenting Types
        oRecursion & Closures
        oFunctions as Callbacks
        oFunction Currying & Memorization
  • Closures In Depth 
        oHow Closures Work
        oPrivate Variables, Callbacks and Timers
        oBinding Function Contexts
        oOverriding Function Behavior
  • Object Orientation With Prototypes 
        oObject Instantiation
        oConstructors
        oInheritance and Prototype Chain
        oExtending Object
        oExtending Number
        oInstantiation Issues
        oWriting class-like code ES6

  • New in ES6 oClasses olet and const
        oArrow functions
        oEnhanced Object Literals
        oDestructuring
        oSpread Operator
        oGenerators and Iterators
        oSymbols
        oComprehensions
        oAsync Programming using Promises
  • Using Babel.js 

DAY-2 & 3

NODE.JS
  • Introduction to Node.js
        oInstalling Node.js
        oNode‚Äôs Event Loop
        oAlternatives to Node.js
        oWriting asynchronous code
  • Modularizing code
        oUnderstanding built-in modules
        oTechniques for modularizing JavaScript code
        oUsing require() to modularize application code
        oUsing npm for third-party modules oHandling Exceptions
  • Events and Streams 
        o Understanding Events
        o EventEmitter class
        o Understanding Streams
        o Reading and writing streams
        o Using pipe()
  • Accessing Local Resources
        o Process Object
        o Manipulating File System
        o Understanding Buffers

  • Node.js and the web
        o Handling web requests
        o Building a web server
        o Understanding the need for web sockets
        o Realtime interaction using socket.io

  • Building web applications using Express.js 
        o Installing Express.js
        o Routing
        o Parameters and queries in routing
        o Building views using view engine of choice (ejs / jade / handlebars)         o Using blocks for layout ODisplaying data OWorking with forms         O         Serving files
        o Working with cookies and sessions
        o Authentication and authorization
        o Error Handling
  • NodeJs Addons using C++ 
        o Overview of N-API
        o Using node-gyp and node-addon-api
        o Configuring application
        o Building and using C++ Api in Node.js
  • Scaling Node applications 
        o The Child process model
        o Exec, spawn, and fork functions
        o Using the Cluster module
  • Node.js Eco System 
        o Node Packages
        o Packages of interest
        o Deciding Factors
  • Debugging Node Applications
Must Have
  • Experience in application development in any programming language
  • Basic knowledge of the JavaScript language 
Good To Have
  • Exposure to any server technology (J2EE, .NET, Ruby etc)

Course ID:
BA-JAVASCRIPT-NJS


Show Schedule for: