目錄(264章)
倒序
- coverpage
- 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 更新時間:2021-07-08 10:33:22
推薦閱讀
- iOS Game Programming Cookbook
- 零基礎學Visual C++第3版
- Python 3.7網絡爬蟲快速入門
- HTML5 and CSS3 Transition,Transformation,and Animation
- Scala謎題
- 你不知道的JavaScript(中卷)
- 基于Swift語言的iOS App 商業實戰教程
- 自制編程語言
- Haskell Data Analysis Cookbook
- Android驅動開發權威指南
- RESTful Web Clients:基于超媒體的可復用客戶端
- 創意UI Photoshop玩轉移動UI設計
- Flink技術內幕:架構設計與實現原理
- Mastering PowerCLI
- Python深度學習(第2版)
- Node.js進階之路
- JavaScript前端開發程序設計教程(微課版)
- AngularJS by Example
- 編程改變生活:用PySide6/PyQt6創建GUI程序(進階篇·微課視頻版)
- 微信小程序開發實戰教程(PHP+Laravel+MySQL)(微課版)
- Machine Learning with R Cookbook
- 數據可視化之道:數據分析中的圖表制作思路與方法(全彩)
- 40 Algorithms Every Programmer Should Know
- 算法深潛:勇敢者的Python探險
- 網絡安全Java代碼審計實戰
- RESTful Web Services with Scala
- Building a Web Application with PHP and MariaDB:A Reference Guide
- Learn C# Programming
- 一步一步跟我學Scratch 3.0編程
- 滾雪球學Python