Pro JavaScript Design Patterns

By Dustin Diaz , Ross Harmes

Pro JavaScript Design Patterns Cover Image

Open up JavaScript to full throttle by discovering its object-oriented capabilities.

Full Description

  • ISBN13: 978-1-59059-908-2
  • 269 Pages
  • User Level: Beginner to Advanced
  • Publication Date: December 16, 2007
  • Available eBook Formats: EPUB, MOBI, PDF
  • Print Book Price: $44.99
  • eBook Price: $31.99
Buy eBook Buy Print Book Add to Wishlist

Related Titles

Full Description

As a web developer, you’ll already know that JavaScript is a powerful language, allowing you to add an impressive array of dynamic functionality to otherwise static web sites. But there is more power waiting to be unlocked—JavaScript is capable of full object–oriented capabilities, and by applying object-oriented principles, best practices, and design patterns to your code, you can make it more powerful, more efficient, and easier to work with alone or as part of a team.

With Pro JavaScript Design Patterns, you’ll start with the basics of object–oriented programming in JavaScript applicable to design patterns, including making JavaScript more expressive, inheritance, encapsulation, information hiding, and more. With that covered, you can kick–start your JavaScript development in the second part of the book, where you’ll find detail on how to implement and take advantage of several design patterns in JavaScript, including composites, decorators, façades, adapters, and many more.

Each chapter is packed with real–world examples of how the design patterns are best used and expert advice on writing better code, as well as what to watch out for. Along the way you’ll discover how to create your own libraries and APIs for even more efficient coding.

  • Master the basics of object–oriented programming in JavaScript, as they apply to design patterns
  • Apply design patterns to your kick–start your JavaScript development
  • Work through several real–world examples

What you’ll learn

  • How to apply object–oriented programming techniques in JavaScript
  • How to take advantage of inheritance, interfaces, and encapsulation and information hiding to kick–start your JavaScript development
  • How to implement several design patterns in your JavaScript projects, including factory, façade, bridge, composite, adapter, decorator, flyweight, proxy, command, observer, and chain of responsibility
  • How to make your code easier to manage in a team environment, as well as on your own
  • How to create your own libraries and APIs

Who this book is for

This book will be an invaluable learning tool for any experienced JavaScript developer.

Table of Contents

Table of Contents

  1. Expressive JavaScript
  2. Interfaces
  3. Encapsulation and Information Hiding
  4. Inheritance
  5. The Singleton Pattern
  6. Chaining
  7. The Factory Pattern
  8. The Bridge Pattern
  9. The Composite Pattern
  10. The Facade Pattern
  11. The Adapter Pattern
  12. The Decorator Pattern
  13. The Flyweight Pattern
  14. The Proxy Pattern
  15. The Observer Pattern
  16. The Command Pattern
  17. The Chain of Responsibility Pattern
Source Code/Downloads

Downloads are available to accompany this book.

Your operating system can likely extract zipped downloads automatically, but you may require software such as WinZip for PC, or StuffIt on a Mac.

Errata

Please Login to submit errata.

On page 89:
I found a couple of errors with the callback/chaining example:

window.API = window.API || {};
Should be changed to
window.API = window.API || function(){};

API should be a function instead of an object; otherwise you'll get an error once you try to instantiate a new instance of the API class.

Also the 2 privileged methods (setName and getName) should be wrapped in a return statement.

Same 2 problems with the API2 class.

Also, one suggestion for readability would be to not omit the optional parenthesis when instantiating a new API and API2 object.
e.g., var o = new API();