售 价:¥
温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印
为你推荐
Title Page
Third Edition
Copyright
Web Development with MongoDB and Node
Third Edition
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Why subscribe?
Customer Feedback
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
Welcome to JavaScript in the Full Stack
A short introduction to Node.js
The advantage that the V8 engine brings in
Node.js is single-threaded!
Non-blocking asynchronous execution
npm - the Node Package Manager
Sharing and reusing JavaScript
Not just for building web servers!
Real-time web application with Socket.io
Networking and file IO
Microservices
Internet of things (IoT)
A simple server with Node.js
When to use Node.js
The NoSQL movement
A short introduction to MongoDB
JSON-friendly database
Schema-less design
Various performance facets
Node.js and MongoDB in the wild
What to expect from this book
Summary
Getting Up and Running
Installing Node.js
Mac OS X
Windows
Linux
Testing that Node.js is installed properly
Online documentation
Installing MongoDB
Mac OS X installation instructions
Windows 7/Windows 8 installation instructions
Linux installation instructions
Confirming successful MongoDB installation
Bookmarking the online documentation
Writing your first app
Creating the sample application
Getting the dependent modules in place
Adding the application code
Understanding the code
Launching the sample app
Checking the actual database
Summary
Node and MongoDB Basics
A JavaScript primer
Introducing es6
Syntax basics
Understanding the scope of variables
Data types
Operators and flows
Understanding objects
Understanding arrays
Understanding functions
Anonymous functions and callbacks
JSON
The basics of Node.js
Node.js architecture
Event-driven
Asynchronous execution
The module system
The Node.js core
HTTP
Net
Streams
Installing modules using npm
The basics of MongoDB
The Mongo shell
Inserting data
Querying
Updating data
Deleting data
Additional resources
Summary
Introducing Express
Web application frameworks
What is Express.js?
Building a complete web application
Designing the web application
Organizing the files
Creating the application's entry point
Booting up the application
Middlewares
Creating custom middleware
Order of middlewares
The configure module
Activating the configure module
Routers and controllers
Handlebars as View engines
Summary
Templating with Handlebars
Templating engines
Server-side and client-side templating
Client-side templating
Server-side templating
The basics of Handlebars
Binding an object to the template
Embedding presentation logic
Views
Layouts
Partial views
Handlebars helpers
Global helpers
View-specific helpers
Rendering the views
Summary
Controllers and View Models
Controllers
View models
Updating the home controller
Updating the image controller
Displaying an image
Uploading an image
Helpers for reusable code
The sidebar module
The stats module
The images module
The comments module
Testing the sidebar implementation
Iterating on the UI
Summary
Persisting Data with MongoDB
Using MongoDB with Node.js
Connecting to MongoDB
Inserting a document
Retrieving a document
Introducing Mongoose
Schemas
Models
Built-in validation
Static methods
Virtual properties
Context of method (this)
Connecting with Mongoose
Defining the schemas and models
The models index file
Adding CRUD to the controllers
The home controller
The image controller
Index - retrieving an image model
Create - inserting an image model
Testing everything out so far
The like button and updating an image model
Comment - inserting a comment model
Wrapping it up
Helpers
Introducing the async module
The comments helper
The sidebar helper
Troubleshooting
The stats helper
The popular images helper
Iterating by adding an image removal capability
Adding a route
Adding a controller handler
Updating the Handlebars image page template
Updating jQuery
Refactoring and improvements
Summary
Creating a RESTful API
What is an API?
What is a RESTful API?
Introducing Postman REST Client
Installation instructions
A quick tour of Postman REST Client
Using the JSONView Chrome extension
Creating a basic API server
Creating sample JSON data
Responding to GET requests
Receiving data - POST and PUT requests
Removing data - DELETE
Consuming external APIs from Node.js
Consuming an API endpoint using request
Summary
Testing Your Code
The tools of the trade
Running tests with the Mocha framework
Asserting tests with Chai.js
Getting started with Chai
Spies and stubs with Sinon.js
Stubbing node modules with Proxyquire
Writing and running your first test
Writing a test helper
Testing the application
Testing the routes
Testing the server
Testing a model
Testing a controller
Spy and stub everything!
Automating everything
Summary
Deploying with Cloud-Based Services
Cloud versus traditional hosting
Infrastructure as a Service versus Platform as a Service
An introduction to Git
Deploying your application
Nodejitsu
Heroku
Amazon Web Services
Creating a MongoLab account and database
Create and configure the AWS environment
Microsoft Azure
Digital Ocean
Summary
Popular Node.js Web Frameworks
Koa
Meteor
Sails
Flatiron
total.js
LoopBack
Hapi
Kick starting Hapi.js
Scaffolding the Hapi app
Setting up a server
Creating APIs
Creating a configuration-based architecture
Summary
Single Page Applications with Popular Frontend Frameworks
Why use a frontend framework?
What is a single page application?
The TodoMVC project
Backbone.js
Ember.js
React.js
Angular
Scaffolding the Angular app
Understanding TypeScript and es6
Modules and components
Angular data flow architecture
Services
Forms
Component communication
Frontend development tools
Automated build task managers
Dependency management
Modularity
HTML template-rendering engines
CSS transpiling
Testing and test-driven development
PhantomJS headless browser
Summary
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜