• Node Web Development

A practical introduction to Node.js, an exciting server-side JavaScript web development stack.

Node.js is a JavaScript platform using an event-driven, non-blocking I/O model allowing users to build fast and scalable data-intensive applications that run in real time.

This book gives you an excellent starting point and goes straight to the heart of developing web applications with Node.js. You will go from a rudimentary knowledge of JavaScript or server-side application development to being able to create and maintain your own Node.js application.

Node Web Development shows that JavaScript is not just for browsers anymore. It can be used for web application development, for developing any Internet protocol, for real-time applications, and much more. With this book you will learn through practical examples how to use the HTTP Server and client objects as well as both SQL and MongoDB databases. The book explains how application algorithms are expected to cooperate correctly with the event loop, and gives advice on algorithm refactoring for asynchronous execution through the event loop.

What this book covers

Chapter 1, About Node, introduces you to the Node platform. It covers its uses, the technological architectural choices in Node, its history, the history of server-side JavaScript, and why JavaScript should be liberated from the browser.

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 8, Dynamic Interaction between the Client and Server Application, explores the real-time web by using the Socket.IO library to enable real-time communication between the server and client. We experience firsthand the power of having JavaScript on both server and client.

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

Write a review

Note: HTML is not translated!
    Bad           Good

Node Web Development

  • Product Code: Node
  • Availability: In Stock
  • $25.00
  • $15.00

  • Ex Tax: $15.00

Tags: Node Web Development