Product Cover Image

Node.js, MongoDB, and AngularJS Web Development, CourseSmart eTextbook

By Brad Dayley

Published by Addison-Wesley Professional

Published Date: Jun 13, 2014


Node.js, MongoDB and AngularJS Web Development is a complete guide for web programmers who want to integrate these three technologies into full working solutions. It begins with concise, crystal-clear tutorials on each of the three technologies and then quickly moves on to building several common web applications. Readers will learn how to use Node.js and MongoDB to build more scalable, high-performance sites, how to leverage AngularJS's innovative MVC approach to structure more effective pages and applications, and how to use all three together to deliver outstanding next-generation Web solutions.

Table of Contents



Part I: Getting Started


1 Introducing the Node.js-to-AngularJS Stack

Understanding the Basic Web Development Framework ¿

Understanding the Node.js-to-AngularJS Stack Components¿

2 JavaScript Primer

Defining Variables

Understanding JavaScript Data Types

Using Operators

Implementing Looping

Creating Functions

Understanding Variable Scope

Using JavaScript Objects

Manipulating Strings

Working with Arrays

Adding Error Handling

Part II: Learning Node.js


3 Getting Started with Node.js

Understanding Node.js

Installing Node.js

Working with Node.js Packages

Creating a Node.js Application

Writing Data to the Console

4 Using Events, Listeners, Timers, and Callbacks in Node.js

Understanding the Node.js Event Model

Adding Work to the Event Queue

Implementing Callbacks

5 Handling Data I/O in Node.js

Working with JSON

Using the Buffer Module to Buffer Data

Using the Stream Module to Stream Data

Compressing and Decompressing Data with Zlib

6 Accessing the File System from Node.js

Synchronous Versus Asynchronous File System Calls

Opening and Closing Files

Writing Files

Reading Files

Other File System Tasks

7 Implementing HTTP Services in Node.js

Processing URLs

Processing Query Strings and Form Parameters

Understanding Request, Response, and Server Objects

Implementing HTTP Clients and Servers in Node.js

Implementing HTTPS Servers and Clients

8 Implementing Socket Services in Node.js

Understanding Network Sockets

Understanding TCP Server and Socket Objects

Implementing TCP Socket Servers and Clients

Implementing TLS Servers and Clients

9 Scaling Applications Using Multiple Processors in Node.js

Understanding the process Module

Implementing Child Processes

Implementing Process Clusters

10 Using Additional Node.js Modules

Using the os Module

Using the util Module

Part III: Learning MongoDB


11 Understanding NoSQL and MongoDB

Why NoSQL?

Understanding MongoDB

MongoDB Data Types

Planning Your Data Model

12 Getting Started with MongoDB

Building the MongoDB Environment

Administering User Accounts

Configuring Access Control

Administering Databases

Managing Collections

13 Getting Started with MongoDB and Node.js

Adding the MongoDB Driver to Node.js

Connecting to MongoDB from Node.js

Understanding the Objects Used in the MongoDB Node.js Driver

Accessing and Manipulating Databases

Accessing and Manipulating Collections

14 Manipulating MongoDB Documents from Node.js

Understanding Database Change Options

Understanding Database Update Operators

Adding Documents to a Collection

Getting Documents from a Collection

Updating Documents in a Collection

Atomically Modifying Documents in a Collection

Saving Documents in a Collection

Using upsert to Insert Documents in a Collection

Deleting Documents from a Collection

Removing a Single Document from a Collection

15 Accessing MongoDB Documents from Node.js

Introducing the Data Set

Understanding Query Objects

Understanding Query options Objects

Finding Specific Sets of Documents

Counting Documents

Limiting Result Sets

Sorting Result Sets

Finding Distinct Field Values

Grouping Results

Applying MapReduce by Aggregating Results

16 Using Mongoose for Structured Schema and Validation

Understanding Mongoose

Connecting to a MongoDB Database by Using Mongoose

Defining a Schema

Compiling a Model

Understanding the Query Object

Understanding the Document Object

Finding Documents by Using Mongoose

Adding Documents by Using Mongoose

Updating Documents by Using Mongoose

Removing Documents by Using Mongoose

Aggregating Documents by Using Mongoose

Using the Validation Framework

Implementing Middleware Functions

17 Advanced MongoDB Concepts

Adding Indexes

Using Capped Collections

Applying Replication

Implementing Sharding

Implementing a GridFS Store

Repairing a MongoDB Database

Backing Up MongoDB

Part IV: Using Express to Make Life Easier


18 Implementing Express in Node.js

Getting Started with Express

Configuring Routes

Using Request Objects

Using Response Objects

Implementing a Template Engine

19 Implementing Express Middleware

Understanding Middleware

Using the query Middleware

Serving Static Files

Handling POST Body Data

Sending and Receiving Cookies

Implementing Sessions

Applying Basic HTTP Authentication

Implementing Session Authentication

Creating Custom Middleware

Part V: Learning AngularJS


20 Getting Started with AngularJS

Why AngularJS?

Understanding AngularJS

An Overview of the AngularJS Life Cycle

Integrating AngularJS with Existing JavaScript and jQuery

Adding AngularJS to the Node.js Environment

Bootstrapping AngularJS in an HTML Document

Using the Global APIs

Creating a Basic AngularJS Application

21 Understanding AngularJS Modules and Dependency Injection

Overview of Modules and Dependency Injection

Defining AngularJS Modules

Implementing Dependency Injection

22 Implementing the Scope as a Data Model

Understanding Scopes

Implementing Scope Hierarchy

Emitting and Broadcasting Events

23 Using AngularJS Templates to Create Views

Understanding Templates

Using Expressions

Using Filters

Creating Custom Filters

24 Implementing Directives in AngularJS Views

Understanding Directives

Using Built-in Directives

Creating Your Own Directives to Extend HTML

25 Implementing AngularJS Services in Web Applications

Understanding AngularJS Services

Using the Built-in Services

Creating Custom Services

Part VI: Building Practical Web Application Components


26 Adding User Accounts to Your Website

Libraries Used

Project Directory Structure

Defining the User Model

Creating the Server

Implementing Routes

Implementing the User Controller Routes

Implementing the User and Authentication Views

Implementing the AngularJS Module and Controller

Using Social Media Accounts as Authentication Sources

27 Adding Comment Threads to Pages

Libraries Used

Project Directory Structure

Defining the Comment, Reply, Photo, and Page Models

Creating the Comments Server

Implementing Routes to Support Viewing and Adding Comments

Implementing the Model-Based Controller Routes

Implementing Photo and Comment Views

Implementing the AngularJS Module and Controller to Support Comment Views

Initializing the Application

28 Creating a Shopping Cart

Project Description

Libraries Used

Project Directory Structure

Defining the Customer, Product, and Orders Models

Creating the Shopping Cart Server

Implementing Routes to Support Product, Cart, and Order Requests

Implementing the Model-Based Controller Routes

Implementing Shopping Cart and Checkout Views

Implementing the AngularJS Module and Controller to Support Shopping Cart Views

Initializing the Application

29 Building Interactive Web 2.0 Application Components

Project Description

Libraries Used

Project Directory Structure

Defining the Project Model

Creating the Application Server

Implementing Routes to Support the Views

Implementing a Tabbed View

Implementing a Weather Service View

Implementing Draggable Elements

Implementing Dynamic Data Access

Initializing the Application

Purchase Info ?

With CourseSmart eTextbooks and eResources, you save up to 60% off the price of new print textbooks, and can switch between studying online or offline to suit your needs.

Once you have purchased your eTextbooks and added them to your CourseSmart bookshelf, you can access them anytime, anywhere.

Buy Access

Node.js, MongoDB, and AngularJS Web Development, CourseSmart eTextbook
Format: Safari Book

$24.99 | ISBN-13: 978-0-13-384437-5