"Someone has already solved your problem."
Cada padrão:
Categorias básicas:
Decorator | Encapsula um objeto e fornece uma interface diferente para ele. |
State | As subclasses decidem como implementar passos de um algoritmo. |
Iterator | As subclasses decidem que classes concretas criar. |
Façade | Garante que um e apenas um objeto é criado. |
Strategy | Encapsula comportamentos intercambiáveis e usa delegação para decidir qual usar. |
Proxy | Os clientes tratam colecções de objetos e objetos individuais de maneira uniforme. |
Factory Method | Encapsula comportamentos baseados no estado e usa delegação para alternar entre comportamentos. |
Adapter | Fornece uma forma de percorrer uma colecção de objetos sem expor a sua implementação. |
Observer | Simplifica a interface de um conjunto de classes. |
Template Method | Encapsula um objeto para fornecer novo comportamento. |
Composite | Permite que um cliente crie famílias de objectos sem especificar suas classes concretas. |
Singleton | Permite que objectos sejam notificados quando um estado é alterado. |
Abstract Factory | Encapsula um objecto para controlar o acesso a ele. |
Command | Encapsula um pedido como um objeto. |
Head First Design Patterns
Eric Freeman, Elisabeth Freeman, Kathy Sierra, Bert Bates
2004 (Outubro), OReilly. ISBN 0596007124.
Índice (PDF), Errata
Design Patterns: Elements of Reusable Object-Oriented Software,
Erich Gamma, Richard Helm, Ralph Johnson e John Vlissides,
1995,
Addison Wesley Professional. ISBN 0201633612.