Design Pattern
Explore software design patterns for creating objects, structuring code, and managing behavior, with practical examples of common solutions.
Articles in this section
-
Singleton Pattern - Ensuring Single Instance Access
-
Factory Pattern - Creating Objects Without Specifying Exact Classes
-
Abstract Factory Pattern - Creating Families of Related Objects
-
Builder Pattern - Constructing Complex Objects Step by Step
-
Observer Pattern - Defining One-to-Many Dependencies Between Objects
-
Prototype Pattern - Creating Objects by Cloning Existing Instances
-
Decorator Pattern - Adding Behavior to Objects Dynamically
-
Adapter Pattern - Making Incompatible Interfaces Work Together
-
Bridge Pattern - Separating Abstraction from Implementation
-
Command Pattern - Encapsulating Requests as Objects
-
Composite Pattern - Treating Individual Objects and Compositions Uniformly
-
Facade Pattern - Providing Simplified Interface to Complex Subsystems
-
Template Method Pattern - Defining Algorithm Skeleton with Customizable Steps
-
Flyweight Pattern: Minimizing Memory Usage with Shared Objects
-
Proxy Pattern - Providing Placeholder or Surrogate for Another Object
-
State Pattern - Allowing Object Behavior to Change When Internal State Changes
-
Chain of Responsibility Pattern - Passing Requests Along Chain of Handlers
-
Iterator Pattern - Providing Sequential Access Without Exposing Internal Structure
-
Mediator Pattern: Coordinating Complex Object Interactions
-
Memento Pattern: Capturing and Restoring Object State
-
Visitor Pattern: Separating Algorithms from Object Structures
-
Interpreter Pattern: Building Domain-Specific Language Processors