Wednesday, April 25, 2012

Java Design Patterns

Simply design pattern is a solution for the common software problem. Design patterns can be categorized into 3 sections.
  • Creational design patterns
  • Structural design patterns
  • Behavioral design patterns
Lets discuss those topics one by one.

Creational Design Patterns

As the name of  creational design patterns create objects (instantiate) and give it to the user. But the way of creating object or instantiating object, the logic of creating object, is hidden from the user. In other words encapsulated. Followings are creational design patterns.


Structural Design Patterns

Structural design patterns describe how classes relate or combine with each other. Followings are the structural design patters.
  • Adapter pattern
  • Composite pattern
  • Proxy pattern
  • Flyweight pattern
  • Facade pattern
  • Bridge pattern
  • Decorator pattern

Behavioral Design Patterns

Behavioral design patterns are describe the way of objects interact with each other. Followings are the behavioral design patterns.
  • Template pattern
  • Mediator pattern
  • Chain of responsibility pattern
  • Observer pattern
  • Strategy pattern
  • Command pattern
  • State pattern
  • Visitor pattern
  • Iterator pattern
  • Momento pattern