Skip to content

Latest commit

 

History

History

README.md

Design Patterns

Design Patterns are typical solutions to commonly occurring problems in software design. They are like pre-made blueprints that you can customize to solve a recurring design problem in your code.

Classification of Patterns

3 main groups of patterns:

  • Creational patterns provide object creation mechanisms that increase flexibility and reuse of existing code
  • Structural patterns explain how to assemble objects and classes into larger structures, while keeping these structures flexible and efficient
  • Behavioral patterns take care of effective communication and the assignment of responsibilities between objects

Creational patterns

  • Factory Method
  • Abstract Factory
  • Builder
  • Prototype
  • Singleton

Structural patterns

  • Adapter
  • Bridge
  • Composite
  • Decorator
  • Facade
  • Flyweight
  • Proxy

Behavioral patterns

  • Chain of Responsibility
  • Command
  • Iterator
  • Mediator
  • Memento
  • Observer
  • State
  • Strategy
  • Template Method
  • Visitor