Head First Design Patterns by Eric Freeman, Elisabeth Robson
1 Intro to Design Patterns
GOF Patterns
GOF pattern simply means design pattern that is defined by Gang of 4.
Originally defined in the book "Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides.
23 classic software design patterns that are reusable solutions to common problems in software design.
They are categorized into three main types: Creational, Structural, and Behavioral patterns.
Creational Patterns: Object Creation pattern, Focus on how objects are created.
Structural Patterns: Object Relationships pattern, Focus on how classes and objects are connected.
Behavioral Patterns: Object Communication pattern, Focus on how objects interact with each other.