NodeJS and Express Foundation
We won't dwell on older standards, but rather use newer versions of ECMAScript right away, making use of new language features such as classes, arrow functions and modules right away. We also know better than to NOT test our code, and so will take a look at how TDD fits into the process of writing Node.js services. We'll take a look at both unit testing as well as end-to-end testing, and see how they complement each other in a lot of ways.
As a participant, you will get the chance to build an application from scratch during the 2 days of the course. The course has a highly practical focus, and conveys the knowledge and experience that has been built up from numerous real-world projects involving Node.js by the developers at Edument.
What you will learn
The first day of the course will take a look at what Node.js is, and what it isn't. We'll start by building a really simple web application, and move onto looking at the new ES2015 syntax and compiling using babel-node. This first day also introduces promises and the Express framework.
- Node.js overview
- Creating a simple Node.js project
- npm and package management
- Moving to ECMAScript 2015 using babel-node
- Asynchrony, Node.js callbacks and promises
- A+/Promises and the Bluebird library
- Introduction to Express
- Routing requests in Express
- Server-side templating using handlebars
Now that we know about Node.js, npm, Express and promises, we can dig a bit deeper into all of these areas and start talking about REST in more detail. We'll see how serving presentable content from the server-side might differ from solely returning JSON and feeding that to a single-page application.
This day will take an in-depth look at REST principles, testing, security and error handling and deepen your knowledge about Express.
- REST-driven single-page applications vs. traditional web applications
- REST core principles and architectural overview
- RESTFulness and the Richardson maturity model
- Proxying requests
- Error handling
- Express middleware
- Building and testing services
- E2E testing and mocks
- Securing your application