JavaScript at Scale

Build web applications that last, with scaling insights from the front-line of JavaScript development

JavaScript at Scale

Adam Boduch

1 customer reviews
Build web applications that last, with scaling insights from the front-line of JavaScript development
Mapt Subscription
FREE
$29.99/m after trial
eBook
$28.00
RRP $39.99
Save 29%
Print + eBook
$49.99
RRP $49.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$28.00
$49.99
$29.99p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781785282157
Paperback266 pages

Book Description

JavaScript applications of today look a lot different from their predecessors of just five years ago. Because of this rapid growth in sophistication and capabilities, we've seen an explosion in JavaScript frameworks; the JavaScript development landscape is a fragmented one. To build large-scale JavaScript applications, we need more than just tools – we need scalable architectures. We create scalable JavaScript architectures by looking at what aspects of our application need to scale and why. Only then can we apply the best patterns and components to our architecture, scaling it into the future.

JavaScript at Scale will show you how to deal with scalability from a number of perspectives; addressability, testability and component composition.

The book begins by defining ‘scale’ from a JavaScript point of view, and dives into the influencers of scale, as well as scalable component composition and communication. We will also look at how large-scale architectures need the ability to scale down, and recover from failing components, as well as scale up and manage new features or a large user base.

Filled with real-world JavaScript scaling scenarios, and code-first examples, JavaScript at Scale is your guide to building out applications that last. Each topic is covered in a way that it can be applied to your own unique scenarios; by understanding the fundamentals of a scaling issue, you’ll be able to use that knowledge to tackle even the most difficult of situations.

The code examples follow the same approach, using ECMAScript 6 syntax that can be translated to the framework of choice.

Table of Contents

Chapter 1: Scale from a JavaScript Perspective
Scaling influencers
Architectural perspectives
The browser is a unique environment
Making architectural trade-offs
Frameworks versus libraries
Summary
Chapter 2: Influencers of Scale
Scaling users
Scaling features
Scaling development
Influencer checklist
Summary
Chapter 3: Component Composition
Generic component types
Extending generic components
Mapping features to components
Decomposing components
Pluggable business logic
Organizing component code
Summary
Chapter 4: Component Communication and Responsibilities
Communication models
Communication data schema
Traceable component communication
Communication overhead
Areas of communication responsibility
Loosely-coupled communication
Component layers
Summary
Chapter 5: Addressability and Navigation
Approaches to routing
How routers work
URI parts and patterns
Mapping resources to URIs
Triggering routes
Router configuration
Troubleshooting routers
Summary
Chapter 6: User Preferences and Defaults
Preference types
Supporting locales
Setting the locale
Generic component configuration
Configuring behavior
Changing the look and feel
Performance implications
Summary
Chapter 7: Load Time and Responsiveness
Component artifacts
Loading components
Communication bottlenecks
Component optimization
API data
Optimizing components at runtime
Summary
Chapter 8: Portability and Testing
Decoupling the backend
Feature design process
Unit testing tools
Testing mock scenarios
End-to-end tests and continuous integration
Summary
Chapter 9: Scaling Down
Scaling constraints
Conflicting features
Design failures
Application composition
Summary
Chapter 10: Coping with Failure
Failing fast
Fault tolerance
Failure recovery
Performance and complexity
Logging and debugging
Improving the architecture
Summary

What You Will Learn

  • Identify and evaluate the external scaling influencers of your application
  • Build out component composition in large-scale JavaScript applications
  • Design for inter-component communication that scale
  • Understand the importance of addressable resources in JavaScript applications, and approaches to scaling addressability
  • Customize and configure components to meet scaling demands
  • Ensure a highly-performant user experience, despite the size and complexity of your application
  • Design a portable and testable application that's not constrained to one environment
  • Make architectural trade-offs by removing or refactoring components
  • Design components that fail in a scalable way

Authors

Table of Contents

Chapter 1: Scale from a JavaScript Perspective
Scaling influencers
Architectural perspectives
The browser is a unique environment
Making architectural trade-offs
Frameworks versus libraries
Summary
Chapter 2: Influencers of Scale
Scaling users
Scaling features
Scaling development
Influencer checklist
Summary
Chapter 3: Component Composition
Generic component types
Extending generic components
Mapping features to components
Decomposing components
Pluggable business logic
Organizing component code
Summary
Chapter 4: Component Communication and Responsibilities
Communication models
Communication data schema
Traceable component communication
Communication overhead
Areas of communication responsibility
Loosely-coupled communication
Component layers
Summary
Chapter 5: Addressability and Navigation
Approaches to routing
How routers work
URI parts and patterns
Mapping resources to URIs
Triggering routes
Router configuration
Troubleshooting routers
Summary
Chapter 6: User Preferences and Defaults
Preference types
Supporting locales
Setting the locale
Generic component configuration
Configuring behavior
Changing the look and feel
Performance implications
Summary
Chapter 7: Load Time and Responsiveness
Component artifacts
Loading components
Communication bottlenecks
Component optimization
API data
Optimizing components at runtime
Summary
Chapter 8: Portability and Testing
Decoupling the backend
Feature design process
Unit testing tools
Testing mock scenarios
End-to-end tests and continuous integration
Summary
Chapter 9: Scaling Down
Scaling constraints
Conflicting features
Design failures
Application composition
Summary
Chapter 10: Coping with Failure
Failing fast
Fault tolerance
Failure recovery
Performance and complexity
Logging and debugging
Improving the architecture
Summary

Book Details

ISBN 139781785282157
Paperback266 pages
Read More
From 1 reviews

Read More Reviews

Recommended for You

Mastering Web Application Development with AngularJS Book Cover
Mastering Web Application Development with AngularJS
$ 26.99
$ 5.40
Object-Oriented JavaScript - Second Edition Book Cover
Object-Oriented JavaScript - Second Edition
$ 29.99
$ 21.00
Mastering JavaScript Design Patterns Book Cover
Mastering JavaScript Design Patterns
$ 26.99
$ 18.90
Node.js Design Patterns Book Cover
Node.js Design Patterns
$ 29.99
$ 6.00
React.js Essentials Book Cover
React.js Essentials
$ 23.99
$ 16.80
AngularJS Web Application Development Cookbook Book Cover
AngularJS Web Application Development Cookbook
$ 29.99
$ 6.00