Introduction
  • Introduction
SOLID Design Principles
  • Overview
  • Single Responsibility Principle
  • Open-Closed Principle
  • Liskov Substitution Principle
  • Interface Segregation Principle
  • Dependency Inversion Principle
  • Summary
Builder
  • Gamma Categorization
  • Overview
  • Life Without Builders
  • Builder
  • Fluent Builder
  • Groovy-Style Builder
  • Builder Facets
  • Builder Coding Exercise
  • Summary
Factories
  • Overview
  • Point Example
  • Factory Method
  • Factory
  • Inner Factory
  • Abstract Factory
  • Functional Factory
  • Factory Coding Exercise
  • Summary
Prototype
  • Overview
  • Record Keeping
  • Prototype
  • Prototype Factory
  • Prototype via Serialization
  • Prototype Coding Exercise
  • Summary
Singleton
  • Overview
  • Singleton Implementation
  • Testability Issues
  • Singleton in Dependency Injection
  • Singleton Lifetime in DI Container
  • Monostate
  • Multiton
  • Singleton Coding Exercise
  • Summary
Adapter
  • Overview
  • Vector/Raster Demo
  • Adapter Caching
  • Adapter Coding Exercise
  • Summary
Bridge
  • Overview
  • Pimpl Idiom
  • Shrink-Wrapped Pimpl
  • Bridge Implementation
  • Bridge Coding Exercise
  • Summary
Composite
  • Overview
  • Geometric Shapes
  • Neural Networks
  • Array-Backed Properties
  • Composite Coding Exercise
  • Summary
Decorator
  • Overview
  • Dynamic Decorator
  • Static Decorator
  • Functional Decorator
  • Decorator Coding Exercise
  • Summary
Façade
  • Overview
  • Façade
  • Summary
Flyweight
  • Overview
  • Handmade Flyweight
  • Boost.Flyweight
  • Text Formatting
  • Flyweight Coding Exercise
  • Summary
Proxy
  • Overview
  • Smart Pointers
  • Property Proxy
  • Virtual Proxy
  • Communication Proxy
  • Proxy vs Decorator
  • Proxy Coding Exercise
  • Summary
Chain of Responsibility
  • Overview
  • Pointer Chain
  • Broker Chain
  • Chain of Responsibility Coding Exercise