The goal of this book is to enable you to write Node.js programs of any level of complexity, from simple utilities to complex applications that use several external modules and consist of several layers of code, talking to external systems and serving thousands of users.
In order to do so, you need to learn about all the different aspects of Node.js – the tools, the methodologies, the libraries, the APIs, the best practices – and you need to learn how to put all of that together to create a working whole.
Therefore, I have split this book into two parts: A collection of different basics in this part, and a thorough tutorial on how to put these basics together to build a complex application in Part 2, Building a Complete Web Application with Node.js and Angular.
In Part 1, every chapter stands on its own and isn't directly related to the other chapters. Part 2 is more like a continuous story that starts from scratch and gives you a finished and working application at the end.
Thus, let's start with Part 1 and look at all the different facets of Node.js software development.