Libraries - gusenov/software-design-patterns GitHub Wiki
Creational patterns
Abstract factory
Builder
Dependency Injection
Factory method
Lazy initialization
Multiton
Object pool
C++
Unity
Prototype
Resource acquisition is initialization (RAII)
Singleton
Structural patterns
Adapter, Wrapper, or Translator
Bridge
Composite
Decorator
Extension object
Facade
Flyweight
Front controller
Marker
Module
Proxy
Twin
Behavioral patterns
Blackboard
Chain of responsibility
Command
Interpreter
Iterator
Mediator
Memento
Null object
Observer or Publish/subscribe
Servant
Specification
State
Strategy
Template method
Visitor
Fluent Interface
Concurrency patterns
Active Object
Balking
Binding properties
Compute kernel
Double-checked locking
Event-based asynchronous
Guarded suspension
Join
Lock
Messaging design pattern (MDP)
Monitor object
Reactor
Read-write lock
Scheduler
Thread pool
Thread-specific storage
Safe Concurrency with Exclusive Ownership
CPU atomic operation