Books & Videos

Table of Contents

  1. Chapter 1 Introduction

  2. Chapter 2 What Is a Pattern?

    1. We Already Use Patterns Every Day

  3. Chapter 3 “Pattern”-ity Testing, Proto-Patterns, and the Rule of Three

  4. Chapter 4 The Structure of a Design Pattern

  5. Chapter 5 Writing Design Patterns

  6. Chapter 6 Anti-Patterns

  7. Chapter 7 Categories of Design Patterns

    1. Creational Design Patterns

    2. Structural Design Patterns

    3. Behavioral Design Patterns

  8. Chapter 8 Design Pattern Categorization

    1. A Brief Note on Classes

  9. Chapter 9 JavaScript Design Patterns

    1. The Constructor Pattern

    2. The Module Pattern

    3. The Revealing Module Pattern

    4. The Singleton Pattern

    5. The Observer Pattern

    6. The Mediator Pattern

    7. The Prototype Pattern

    8. The Command Pattern

    9. The Facade Pattern

    10. The Factory Pattern

    11. The Mixin Pattern

    12. Subclassing

    13. Mixins

    14. The Decorator Pattern

    15. Pseudoclassical Decorators

    16. Decorators with jQuery

    17. Advantages and Disadvantages

    18. Flyweight

  10. Chapter 10 JavaScript MV* Patterns

    1. MVC

    2. MVC for JavaScript Developers

    3. What Does MVC Give Us?

    4. Smalltalk-80 MVC in JavaScript

    5. MVP

    6. MVVM

    7. Pros and Cons

    8. MVVM with Looser Data Bindings

    9. MVC Versus MVP Versus MVVM

    10. Backbone.js Versus KnockoutJS

  11. Chapter 11 Modern Modular JavaScript Design Patterns

    1. A Note on Script Loaders

    2. AMD

    3. CommonJS

    4. AMD and CommonJS: Competing, but Equally Valid Standards

    5. ES Harmony

    6. Conclusions

  12. Chapter 12 Design Patterns in jQuery

    1. The Composite Pattern

    2. The Adapter Pattern

    3. The Facade Pattern

    4. The Observer Pattern

    5. The Iterator Pattern

    6. Lazy Initialization

    7. The Proxy Pattern

    8. The Builder Pattern

  13. Chapter 13 jQuery Plug-in Design Patterns

    1. Patterns

    2. A Lightweight Start Pattern

    3. Complete Widget Factory Pattern

    4. Nested Namespacing Plug-in Pattern

    5. Custom Events Plug-in Pattern (with the Widget Factory)

    6. Prototypal Inheritance with the DOM-to-Object Bridge Pattern

    7. jQuery UI Widget Factory Bridge Pattern

    8. jQuery Mobile Widgets with the Widget Factory

    9. RequireJS and the jQuery UI Widget Factory

    10. Globally and Per-Call Overridable Options (Best Options Pattern)

    11. A Highly Configurable and Mutable Plug-in Pattern

    12. What Makes a Good Plug-in Beyond Patterns?

    13. Conclusions

    14. Namespacing Patterns

    15. Namespacing Fundamentals

    16. Advanced Namespacing Patterns

  14. Chapter 14 Conclusions

  1. Appendix References

  2. Colophon