Course description
This course includes all necessary information about Node.JS: NPM package manager, Express framework (routing, Pug template engine, middleware), REST approach, working asynchronously with NodeJS API, working with the file system, basic concepts of MongoDB, and how to use it from the Node.JS application.
Throughout the course, participants will build a real-life web application with REST API which stores data in session, files, and MongoDB database (frontend UI is provided). The course includes step-by-step solutions of the tasks and additional tasks to gain practical experience.
This program is suitable for web developers (React/Angular/Vue) and backend developers. Basic knowledge of JavaScript is required.
Upcoming start dates
Who should attend?
Prerequisites
JavaScript
Training content
Module 1. NodeJS basics [2 hours theory]
• What is Node.JS?
• Node.JS features
• Multithreaded server request processing
• Node.JS request processing with event loop
• NPM package manager
o package.json
o package-lock.json
o NPM folders
o Semantic versioning in NPM
o NPM commands
o Nodemon
• CommonJS and ES2015 module systems
• Simple http server
• Simple http server returning JSON
Module 2. Express framework [2 hours theory, 3 hours practice]
· Minimal Express app
· MVC pattern
· Express routing
o Request params
o Request query
o App.route()
o Put router to separate module
o Response methods
· Pug template engine
o Loops in Pug
o Conditions and variables
o Each
o Template inheritance
o Block append/prepend
o Mixins
· Middleware
o What is middleware
o How to create your own middleware (example with logging)
o Middleware to work with sessions
o Body-parser to parse POST requests body
o Express structure with middleware
o Middleware to serve static files
o Restricting middleware to route
o Order of middleware calls
· Express in practice
· Rest approach
o MVC pattern with REST server
o REST requests to obtain data
o Creating data in REST
o Updating and deleting data in REST
o Returning data format, Content-Type and Accept headers
o REST API summary and use cases
o REST statelessness vs statefulness
o REST statelessness and scalability
o REST statelessness and reliability
· Using Express to create REST service
· Error handling in Express
o Default error handler
o Custom error class
Practice: Implement REST service (keeping data in session) [2h
Module 3. Async/await syntax. Working with file system. [1 hour theory, 1 hour practice]
· Async/await syntax
o Async/await syntax and parallel execution
o Exception processing with Async/await
o Loops with async/await
o Async/await in Express
· Working with files
o Reading from file
o Writing to the file
o Reading file with async/await syntax
o Low-level work with files
o Sync calls exception handling
o Async calls exception handling
o Listing files in folder
· Practice: Implement REST service (keeping data in files)
Module 4. Using MongoDB with NodeJS [1 hour theory, 2 hours practice]
· What is MongoDB?
· What is Mongo Db good for?
· Impedance mismatch (object-oriented vs. relational)
· No impedance mismatch with MongoDB
Certification / Credits
Objectives
This course aims to introduce listeners to NodeJS platform and features and to demonstrate how these features can be used in practice.
Quick stats about Luxoft Training Center?
More than 200 training courses
Conducted over 1,500 training sessions
Customized training solutions for business
Contact this provider
Luxoft Training Center
Luxoft Training Center — an essential part of the global technology leader, Luxoft, a DXC Technology Company. We play a pivotal role in propelling B2B businesses forward by delivering customized training solutions. Emphasizing the significance of learning and employee development,...