Thursday, November 15, 2007

What is a design pattern?

A design pattern is something describes a simple and elegant solutions to a specific problem in object-oriented software design.

They capture solutions that have developed and evolved over time. Therefore, they are not the design people tend to generate initially.

Types of Patterns

Creational Patterns
  • Abstract Factory
  • Builder
  • Factory Method
  • Prototype
  • Singleton
Structural Patterns
  • Adapter
  • Bridge
  • Composite
  • Decorator
  • Facade
  • Flyweight
  • Proxy
Behavioral Patterns
  • Chain of Responsibility
  • Command
  • Interpreter
  • Iterator
  • Mediator
  • Memento
  • Observer
  • State
  • Strategy
  • Strategy
  • Template Method
  • Visitor

The Beginning

Sources:

Design Patterns, Elements of Reusable Object-Oriented Software

By

Erich Gamma
Richard Helm
Ralph Johnson
John Vlissides

Publish 1995 by Addison-Wesley