Since it’s creation in 2009, Node.js has grown into a powerful and increasingly popular asynchronous-development framework for creating highly-scalable network applications using JavaScript. Respected companies such as Dow Jones and LinkedIn are among the many organizations to have seen Node’s potential and adopted it into their businesses.
Pro Node.js for Developers provides a comprehensive guide to this exciting new technology. We introduce you to Node – what it is, why it matters and how to set it up – before diving deeply into the key concepts and APIs that underpin its operation.
Building upon your existing JavaScript skills you’ll be shown how to use Node.js to build both Web- and Network-based applications, to deal with data sources, capture events and deal with child processes to create robust applications that will work well in a wide range of circumstances.
Once you've mastered these skills we’ll go further, teaching you more advanced software engineering skills that will give your code a professional edge. You’ll learn how to create easily reusable modules that will save you time through code reuse, to log and debug your applications quickly and effectively and to write code that will scale easily and reliably as the demand for your application grows.
What youll learn
- Install, configure and deploy Node.js apps effectively
- Understand the Node.js asynchronous programming model in detail
- Create both web and network-based Node.js applications with ease
- Learn to work effectively with varied data sources and file types
- Discover advanced software engineering concepts that will will save you time and promote code reuse
Who this book is for
This book is for developers who already have a working knowledge of JavaScript and are interested in adopting Node.js into their projects. All other concepts will be introduced from first-principals.
Table of Contents
- Introducing Node.js
- The Node Module System
- The Event Loop
- Events
- Timers and Scheduling
- The Command Line Interface
- Accessing the File System
- Data Streams
- Binary Data
- Creating Child Processes
- Network Programming
- HTTP Server Development
- Connect
- Connecting to Databases
- Logging
- Application Scaling
- Appendix