Design Patterns
Guide to Users
Introduction
What Is a Design Pattern?
Design Patterns in Smalltalk MVC
Describing Design Patterns
The Catalog of Design Patterns
Organizing the Catalog
How Design Patterns Solve Design Problems
How to Select a Design Pattern
How to Use a Design Pattern
A Case Study: Designing a Document Editor
Design Problems
Document Structure
Formatting
Embellishing the User Interface
Supporting Multiple Look-and-Feel Standards
Supporting Multiple Window Systems
User Operations
Spelling Checking and Hyphenation
Summary
Design Pattern Catalog
Creational Patterns
Abstract Factory
Builder
Factory Method
Prototype
Singleton
Discussion of Creational Patterns
Structural Patterns
Adapter
Bridge
Composite
Decorator
Facade
Flyweight
Proxy
Discussion of Structural Patterns
Behavioral Patterns
Chain of Responsibility
Command
Interpreter
Iterator
Mediator
Memento
Observer
State
Strategy
Template Method
Visitor
Discussion of Behavioral Patterns
Conclusion
What to Expect from Design Patterns
A Brief History
The Pattern Community
An Invitation
A Parting Thought
Glossary
Guide to Notation
Class Diagram
Object Diagram
Interaction Diagram
Foundation Classes
List
Iterator
ListIterator
Point
Rect
Bibliography
Index
Introduction