Async JavaScript
Build More Responsive Apps with Less Code
by: Trevor Burnham
Published | 2012-11-28 |
---|---|
Internal code | tbajs |
Print status | In Print |
Pages | 104 |
User level | |
Keywords | jQuery, Backbone.js, Async.js, async, PubSub, evented, promises |
Related titles | |
ISBN | 9781937785277 |
Other ISBN |
Channel epub: 9781680503128 Channel PDF: 9781680503135 Kindle: 9781937785291 Safari: 9781941222782 Kindle: 9781937785291 |
BISACs | COM051260 COMPUTERS / Programming Languages / JavaScript |
Highlight
With the advent of HTML5, front-end MVC, and Node.js, JavaScript is ubiquitous—and still messy. This book will give you a solid foundation for managing async tasks without losing your sanity in a tangle of callbacks. It’s a fast-paced guide to the most essential techniques for dealing with async behavior, including PubSub, evented models, and Promises. With these tricks up your sleeve, you’ll be better prepared to manage the complexity of large web apps and deliver responsive code.
Description
With Async JavaScript, you’ll develop a deeper understanding of the JavaScript language. You’ll start with a ground-up primer on the JavaScript event model—key to avoiding many of the most common mistakes JavaScripters make. From there you’ll see tools and design patterns for turning that conceptual understanding into practical code.
The concepts in the book are illustrated with runnable examples drawn from both the browser and the Node.js server framework, incorporating complementary libraries including jQuery, Backbone.js, and Async.js. You’ll learn how to create dynamic web pages and highly concurrent servers by mastering the art of distributing events to where they need to be handled, rather than nesting callbacks within callbacks within callbacks.
Async JavaScript will get you up and running with real web development quickly. By the time you’ve finished the Promises chapter, you’ll be parallelizing Ajax requests or running animations in sequence. By the end of the book, you’ll even know how to leverage Web Workers and AMD for JavaScript applications with cutting-edge performance. Most importantly, you’ll have the knowledge you need to write async code with confidence.
What You Need:
Basic knowledge of JavaScript is recommended. If you feel that you’re not up to speed, see the “Resources for Learning JavaScript” section in the preface.
Contents and Extracts
- Acknowledgments
- Introduction
- Trouble in Paradise
- Who Is This Book For?
- Resources for Learning JavaScript
- Where to Turn for Help?
- Running the Code Examples
- Code Style in This Book
- A Word on altJS
- Resources for This Book
- Understanding JavaScript Events
- Scheduling Events
- Types of Async Functions
- Writing Async Functions
- Handling Async Errors
- Un-nesting Callbacks
- What We’ve Learned
- Distributing Events
- PubSub
- Evented Models
- Custom jQuery Events
- What We’ve Learned
- Promises and Deferreds excerpt
- A Very Brief History of Promises
- Making Promises
- Passing Data to Callbacks
- Progress Notifications
- Combining Promises
- Binding to the Future with pipe
- jQuery vs. Promises/A
- Replacing Callbacks with Promises
- What We’ve Learned
- Flow Control with Async.js
- The Async Ordering Problem
- Async Collection Methods
- Organizing Tasks with Async.js
- Dynamic Async Queuing
- Minimalist Flow Control with Step
- What We’ve Learned
- Multithreading with Workers excerpt
- Web Workers
- Node Workers with cluster
- What We’ve Learned
- Async Script Loading
- Limitations and Caveats
- Reintroducing the <script> Tag
- Programmatic Loading
- What We’ve Learned
- Tools for Taming JavaScript
- TameJS
- StratifiedJS
- Kaffeine
- Streamline.js
- Node-Fibers
- The Future of JavaScript: Generators