Overview

Design patterns are not finished pieces of code, but rather templates for how to solve a problem. They represent best practices evolved by experienced software developers over time.

Categories

  • Creational Patterns: Deal with object creation mechanisms.
  • Structural Patterns: Deal with object composition and relationships.
  • Behavioral Patterns: Deal with communication between objects.

Famous Reference

The 'Gang of Four' (GoF) book, Design Patterns: Elements of Reusable Object-Oriented Software, which introduced 23 classic patterns.

Related Terms