Programming JavaScript Applications 1st edition by Eric Elliott – Ebook PDF Instant Download/DeliveryISBN: 1491950250, 9781491950258
Full download Programming JavaScript Applications 1st edition after payment.
Product details:
ISBN-10 : 1491950250
ISBN-13 : 9781491950258
Author : Eric Elliott
Take advantage of JavaScript’s power to build robust web-scale or enterprise applications that are easy to extend and maintain. By applying the design patterns outlined in this practical book, experienced JavaScript developers will learn how to write flexible and resilient code that’s easier—yes, easier—to work with as your code base grows. JavaScript may be the most essential web programming language, but in the real world, JavaScript applications often break when you make changes. With this book, author Eric Elliott shows you how to add client- and server-side features to a large JavaScript application without negatively affecting the rest of your code. Examine the anatomy of a large-scale JavaScript application Build modern web apps with the capabilities of desktop applications Learn best practices for code organization, modularity, and reuse Separate your application into different layers of responsibility Build efficient, self-describing hypermedia APIs with Node.js Test, integrate, and deploy software updates in rapid cycles Control resource access with user authentication and authorization Expand your application’s reach through internationalization
Programming JavaScript Applications 1st Table of contents:
1. The JavaScript Revolution
Advantages of JavaScript
Performance
Objects
Syntax
First-Class Functions
Events
Reusability
The Net Result
Anatomy of a Typical Modern JavaScript App
Infrastructure
JSON: Data Storage and Communication
NoSQL Data Stores
RESTful JSON Web Services
2. Functions
Minimize Side Effects
Function Definition
Named Function Expressions
Lambdas
Immediately Invoked Function Expressions
Method Context
Function.prototype.bind()
Function Scope
Hoisting
Closures
Method Design
Named Parameters
Function Polymorphism
Method dispatch
Generics and Collection Polymorphism
Method Chaining and Fluent APIs
Functional Programming
Stateless Functions (aka Pure Functions)
Partial Application and Currying
Asynchronous Operations
Callbacks
Promises and Deferreds
Conclusion
3. Objects
Classical Inheritance Is Obsolete
Fluent-Style JavaScript
Prototypes
Delegate Prototypes
Prototype Cloning
The Flyweight Pattern
Object Creation
Factories
Prototypal Inheritance with Stamps
Conclusion
4. Modules
Principles of Modularity
Interfaces
The Module Pattern
Asynchronous Module Definition
Plug-Ins
Node-Style Modules
npm
ES6 Modules
Building Client-Side Code with CommonJS, npm, Grunt, and Browserify
Defining the App
Feature Implementation
Bundling and Deployment
Conclusion
5. Separation of Concerns
Client-Side Concerns
Module Management
Getting started
Registration, loading, and rendering
Events
Event emitters
Event aggregators
Queues and stacks
Choosing the right event model
Events by example
Model View Controller/MV*
Presentation and DOM Manipulation
View events
Event delegation
Templates
Web Components
Server-Side Concerns
Getting Started with Node and Express
Installing Node and Express
Organizing files in Node
Node libraries
Configuration
Express
Create your app
Routing
Middleware
Let it crash
Templates
Next steps
Conclusion
6. Access Control
Authentication
Passwords
Rainbow tables
Password salts
Brute force
Variable time equality
Stolen passwords
Credential
Multifactor Authentication
Knowledge factor
Possession factor
Inherence factor
Federated and Delegated Authentication
Mozilla Persona
WebID
Delegated authentication
Authorization
Authorizing Applications
OAuth 2.0
Conclusion
7. Logging
Debugging
Server Operations
Security
Auditing
Business Analytics
Viral Factor
Logging Checklist
Logging Requests
Logging Errors
Sample Log Output
Logging Service Alerts
Logging Goals
Profiling and Instrumentation
Logging Client-Side Events
Deciphering Data
Conclusion
8. Building RESTful APIs
Usable
Focus
Consistency
Use common conventions
Resourceful routing
Self-Describing: Hypermedia
Affordances
HATEOAS
HTML as an API Media Type
Jade
Jiron
Responsive APIs
Optimizing for Speed
Conclusion
9. Feature Toggle
Organizing Features
Scale of a Feature
Feature Groups
Lifespan of a Feature
Development
Staging
Production Testing
Feature Rollout
Default Activation
Full Integration
Implementation
Conclusion
10. Internationalization
Conclusion
A. JavaScript Style Guide
Example Tests
QUnit Primer
Code Quality
Best Practices Quick Reference
Indentation: Be Consistent
Use Semicolons
Bracket Placement: Right Side
Avoid Name Collisions
Always Use var
Use One var Statement per Function
Avoid Constant Abuse
Use Functional Iterators When Possible
Be Careful with if Statements
Avoid Side Effects
Don’t Use switch
Don’t Use eval()
People also search for Programming JavaScript Applications 1st:
programming javascript applications by eric elliott
applications of javascript programming language
javascript programming for web applications
what is javascript programming used for
what are the applications of javascript