
Node.js Design Patterns
Design and implement production-grade Node.js applications using proven patterns and techniques, 3rd Edition
- 660 pages
- English
- ePUB (mobile friendly)
- Available on iOS & Android
Node.js Design Patterns
Design and implement production-grade Node.js applications using proven patterns and techniques, 3rd Edition
About this book
Learn proven patterns, techniques, and tricks to take full advantage of the Node.js platform. Master well-known design principles to create applications that are readable, extensible, and that can grow big.Purchase of the print or Kindle book includes a free eBook in the PDF format.
Key Features
- Learn how to create solid server-side applications by leveraging the full power of Node.js
- Understand how Node.js works and learn how to take full advantage of its core components as well as the solutions offered by its ecosystem
- Avoid common mistakes and use proven patterns to create production grade Node.js applications
Book Description
In this book, we will show you how to implement a series of best practices and design patterns to help you create efficient and robust Node.js applications with ease.We kick off by exploring the basics of Node.js, analyzing its asynchronous event driven architecture and its fundamental design patterns. We then show you how to build asynchronous control flow patterns with callbacks, promises and async/await. Next, we dive into Node.js streams, unveiling their power and showing you how to use them at their full capacity. Following streams is an analysis of different creational, structural, and behavioral design patterns that take full advantage of JavaScript and Node.js. Lastly, the book dives into more advanced concepts such as Universal JavaScript, scalability and messaging patterns to help you build enterprise-grade distributed applications.Throughout the book, you'll see Node.js in action with the help of several real-life examples leveraging technologies such as LevelDB, Redis, RabbitMQ, ZeroMQ, and many others. They will be used to demonstrate a pattern or technique, but they will also give you a great introduction to the Node.js ecosystem and its set of solutions.
What you will learn
- Become comfortable with writing asynchronous code by leveraging callbacks, promises, and the async/await syntax
- Leverage Node.js streams to create data-driven asynchronous processing pipelines
- Implement well-known software design patterns to create production grade applications
- Share code between Node.js and the browser and take advantage of full-stack JavaScript
- Build and scale microservices and distributed systems powered by Node.js
- Use Node.js in conjunction with other powerful technologies such as Redis, RabbitMQ, ZeroMQ, and LevelDB
Who this book is for
This book is for developers and software architects who have some prior basic knowledge of JavaScript and Node.js and now want to get the most out of these technologies in terms of productivity, design quality, and scalability. Software professionals with intermediate experience in Node.js and JavaScript will also find valuable the more advanced patterns and techniques presented in this book.This book assumes that you have an intermediate understanding of web application development, databases, and software design principles.
]]>
Frequently asked questions
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Information
6
Coding with Streams
- Why streams are so important in Node.js
- Understanding, using, and creating streams
- Streams as a programming paradigm: leveraging their power in many different contexts and not just for I/O
- Streaming patterns and connecting streams together in different configurations
Discovering the importance of streams
Buffering versus streaming


Spatial efficiency
import buffer from 'buffer' console.log(buffer.constansts.MAX_LENGTH) Gzipping using a buffered API
import { promises as fs } from 'fs' import { gzip } from 'zlib' impor...Table of contents
- Preface
- The Node.js Platform
- The Module System
- Callbacks and Events
- Asynchronous Control Flow Patterns with Callbacks
- Asynchronous Control Flow Patterns with Promises and Async/Await
- Coding with Streams
- Creational Design Patterns
- Structural Design Patterns
- Behavioral Design Patterns
- Universal JavaScript for Web Applications
- Advanced Recipes
- Scalability and Architectural Patterns
- Messaging and Integration Patterns
- Other Books You May Enjoy
- Index