What this book covers
Chapter 2, Setting up Node, goes over setting up a Node developer environment, including compiling and installing from source code. We briefly touch on Node deployment to production servers.
Chapter 3, Node Modules, explores the module as the unit of modularity in developing Node applications. We dive deep into understanding and developing Node modules, at npm, the Node Package Manager, and several scenarios using npm to manage installed packages, or developing npm packages for distribution to others.
Chapter 4, HTTP Servers and Clients – A Web Application's First Steps, starts exploring web development with Node, with the fundamentals of Node now in hand. We develop several small web-server and web-client applications in Node. We use the Fibonacci algorithm to explore the effects of heavy-weight long-running computations on a Node web application, and several mitigation techniques, including developing a simple REST-based backend server to compute Fibonacci numbers.
Chapter 5, Implementing a Simple Express Application, begins several chapters of developing a somewhat useful application with which we'll be exploring the Node platform. In this chapter we build the core skeleton of the application.
Chapter 6, Data Storage and Retrieval, helps add data storage capabilities to the application for data persistence, application robustness, and sharing data between application instances. The data storage engines we look at include the file system, LevelUP, SQLite3, Sequelize, MySQL, and MongoDB (using Mongoose).
Chapter 7, Multiuser Authorization, Deployment, Scaling, and Hosting, shows how to add user authentication capabilities to the application, allowing it to be used by both logged-in and anonymous users. We then look at several ways of deploying the application on real servers, including a cloud hosting platform.
Chapter 9, Unit Testing, shows how to implement unit testing and test first development methodologies with a Node application. We use this to find a few bugs in the code written for the previous chapters, and then walk through fixing those bugs.
Author: David Herron