Design Pattern

Creational

  1. Abstract Factory
  2. Builder
  3. Dependency Injection
  4. Factory Method
  5. Lazy Initialization
  6. Multiton
  7. Object Pool
  8. Prototype
  9. Singleton

Structural

  1. Adapter
  2. Bridge
  3. Composite
  4. Decorator
  5. Facade
  6. Flyweight
  7. Proxy

Behavioral

  1. Chain of responsibility
  2. Command
  3. Iterator
  4. Interpreter
  5. Mediator
  6. Null Object
  7. Observer (pub/sub)
  8. Servant (util, helper)
  9. Specification
  10. State
  11. Strategy
  12. Template Method
  13. Visitor

Concurrency

  1. Active Object
  2. Balking
  3. Binding properties
  4. Compute Kernel
  5. Double-checked locking
  6. Event based async
  7. Guarded suspension
  8. Join
  9. Lock
  10. Message design pattern
  11. Monitor Object
  12. Reactor
  13. Read-write lock
  14. Scheduler
  15. Thread pool
  16. Thread-specific storage