If you're like most developers, you rely heavily on JavaScript to build interactive and quick-responding web applications. The problem is that all of those lines of JavaScript code can slow down your apps. This book reveals techniques and strategies to help you eliminate performance bottlenecks during development. You'll learn how to improve execution time, downloading, interaction with the DOM, page life cycle, and more.
Yahoo! frontend engineer Nicholas C. Zakas and five other JavaScript experts—Ross Harmes, Julien Lecomte, Steven Levithan, Stoyan Stefanov, and Matt Sweeney—demonstrate optimal ways to load code onto a page, and offer programming tips to help your JavaScript run as efficiently and quickly as possible. You'll learn the best practices to build and deploy your files to a production environment, and tools that can help you find problems once your site goes live.
If you're like most developers, you rely heavily on JavaScript to build interactive and quick-responding web applications. The problem is that all of those lines of JavaScript code can slow down your apps. This book reveals techniques and strategies to help you eliminate performance bottlenecks during development. You'll learn how to improve execution time, downloading, interaction with the DOM, page life cycle, and more.
Yahoo! frontend engineer Nicholas C. Zakas and five other JavaScript experts—Ross Harmes, Julien Lecomte, Steven Levithan, Stoyan Stefanov, and Matt Sweeney—demonstrate optimal ways to load code onto a page, and offer programming tips to help your JavaScript run as efficiently and quickly as possible. You'll learn the best practices to build and deploy your files to a production environment, and tools that can help you find problems once your site goes live.
Table of Contents
Chapter 1 Loading and Execution
Script Positioning
Grouping Scripts
Nonblocking Scripts
Summary
Chapter 2 Data Access
Managing Scope
Object Members
Summary
Chapter 3 DOM Scripting
DOM in the Browser World
DOM Access and Modification
Repaints and Reflows
Event Delegation
Summary
Chapter 4 Algorithms and Flow Control
Loops
Conditionals
Recursion
Summary
Chapter 5 Strings and Regular Expressions
String Concatenation
Regular Expression Optimization
String Trimming
Summary
Chapter 6 Responsive Interfaces
The Browser UI Thread
Yielding with Timers
Web Workers
Summary
Chapter 7 Ajax
Data Transmission
Data Formats
Ajax Performance Guidelines
Summary
Chapter 8 Programming Practices
Avoid Double Evaluation
Use Object/Array Literals
don't Repeat Work
Use the Fast Parts
Summary
Chapter 9 Building and Deploying High-Performance JavaScript Applications
Apache Ant
Combining JavaScript Files
Preprocessing JavaScript Files
JavaScript Minification
Buildtime Versus Runtime Build Processes
JavaScript Compression
Caching JavaScript Files
Working Around Caching Issues
Using a Content Delivery Network
Deploying JavaScript Resources
Agile JavaScript Build Process
Summary
Chapter 10 Tools
JavaScript Profiling
YUI Profiler
Anonymous Functions
Firebug
Internet Explorer Developer Tools
Safari Web Inspector
Chrome Developer Tools
Script Blocking
Page Speed
Fiddler
YSlow
dynaTrace Ajax Edition
Summary
Colophon
Відгуки про High Performance JavaScript Build Faster Web Application Interfaces