Design Patterns Book Published (Gang of Four)
October 1994SoftwareStandard publishedDate precision, monthEvidence grade, primary1 primary source
Drivers:
Growing OO adoption needed design guidance. Enterprise development required transferable expertise. The pattern community sought to codify best practices.
Design patterns are tried-and-tested solutions to common programming problems. Instead of inventing solutions from scratch, developers can use patterns like 'Factory' (creating objects), 'Observer' (notifications), or 'Strategy' (swappable algorithms). The 'Gang of Four' book named 23 patterns that developers still use today.
Design Patterns Book Published (Gang of Four) event plate
Structured atlas record showing date, domain, evidence grade, source count, and predecessor and successor links.
Forecasts and counterfactuals stay labelled as opinion in the event data. Source: Computer History Museum.
Before
Object-oriented programming was growing but design expertise was hard to transfer. Developers repeatedly solved similar problems without shared vocabulary. Best practices were scattered across individual experience.
What changed
The 'Gang of Four' (GoF) book catalogued 23 design patterns for object-oriented software. It established patterns as a way to communicate design expertise. The vocabulary (Factory, Singleton, Observer, Strategy, etc.) became universal among developers.
How it happened
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides published 'Design Patterns: Elements of Reusable Object-Oriented Software' in October 1994. Drawing on Christopher Alexander's architectural patterns, they codified common OO design solutions. The book sold over 500,000 copies.
Outcomes
- Created shared vocabulary for software design
- Established patterns as knowledge transfer mechanism
- Influenced frameworks and libraries design
- Sparked pattern movement (enterprise, integration, etc.)
Limitations
- Some patterns less relevant in modern languages
- Overuse can lead to unnecessary complexity
- C++/Smalltalk focus dated some examples
- Patterns can be cargo-culted without understanding
Lessons learnt
- Named solutions enable communication
- Patterns capture design trade-offs
- Context determines pattern applicability
- Vocabulary shapes how we think about design
Stakeholders and artefacts
Individuals
- Erich GammaAuthor, TaligentCo-authored Design Patterns book
- Richard HelmAuthor, IBMCo-authored Design Patterns book
- Ralph JohnsonAuthor, University of IllinoisCo-authored Design Patterns book
- John VlissidesAuthor, IBMCo-authored Design Patterns book
Artefacts
- Design PatternsmethodologyReusable solutions to common design problems
- Gang of Four Patternsspecification23 patterns: Creational, Structural, Behavioural
Key terms
Causality
Preceded by: Waterfall Model Described (and Critiqued).
Made possible: Agile Manifesto Published.
On this course
Read in the path Software Development: Waterfall to DevOps.