Sefism is free for learners. We are here to help you grow, one step at a time.Join for free
Sefism.
Book · Otheraround $55

Design Patterns

The 1994 book by Gamma, Helm, Johnson and Vlissides, known as the Gang of Four, that named and catalogued 23 object oriented design patterns such as Factory Method, Observer, Strategy, Adapter and Decorator. It gave the industry a shared vocabulary for design decisions. It suits developers with solid object oriented experience who want the original, precise description of each pattern and the trade-off it makes, rather than a quick tutorial.

Get access
Edition

1st edition (1994)

Addison-Wesley · Sept 2026

Pages

416

Goodreads · Sept 2026

Goodreads rating

4.2/5 (12,053 ratings)

Goodreads · Sept 2026

Patterns

23

Addison-Wesley · Sept 2026

Format

Book

Topic

Other

Provider

Gamma, Helm, Johnson and Vlissides

Level

Advanced

Access

around $55

What the book contains

The book has two parts. The first introduces design patterns through a case study, the design of a document editor, and explains principles that run through the whole catalogue, most famously "program to an interface, not an implementation" and "favour object composition over class inheritance".

The second part is the catalogue of 23 patterns in three groups:

  • Creational (5): Abstract Factory, Builder, Factory Method, Prototype and Singleton.
  • Structural (7): Adapter, Bridge, Composite, Decorator, Facade, Flyweight and Proxy.
  • Behavioural (11): Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method and Visitor.

Each pattern follows the same structure: intent, motivation, applicability, structure diagram, participants, collaborations, consequences, implementation notes, sample code (in C++ and Smalltalk), known uses and related patterns. The consequences section, where the trade-offs are spelled out, is the most valuable part of each entry.

How it holds up

Goodreads shows an average of 4.2 out of 5 from about 12,000 ratings as of September 2026. It remains the reference that other patterns material builds on. Some patterns have since become language features (Iterator in almost every language, Strategy as a function passed as an argument), and Singleton is now widely treated as something to use sparingly. The examples use C++ and Smalltalk and 1990s GUI and editor scenarios, which can feel distant.

How to read it

  • Read the introduction and the case study first; they explain why patterns matter.
  • Do not read the catalogue cover to cover. Start with the most used patterns: Strategy, Observer, Factory Method, Adapter, Decorator, Composite, Command and Template Method.
  • For each pattern, focus on intent, applicability and consequences, then find an example in a framework you use.
  • Implement two or three patterns in your own language to see how the C++ structure simplifies.
  • Treat it as a reference afterwards, looking up a pattern when a design discussion names it.

Friendlier options

If you are new to patterns, a modern, visual introduction in your own language is an easier first pass, with this book as the follow up for precision. Head First Design Patterns and well known pattern websites with diagrams are common starting points.

Common questions

Is it outdated? The code examples are, but the pattern descriptions and their trade-offs are not. It is still the standard reference.

Do I need to know C++? It helps to read the samples, but the diagrams and prose carry the ideas.

Should I apply all 23 patterns? No. Patterns solve specific problems; using them where the problem does not exist makes code harder to read.

Best for: developers with a few years of object oriented experience who want the original, authoritative catalogue.

computer science

Ready to start?

Opens on Gamma, Helm, Johnson and Vlissides in a new tab.

Get access
Link broken or out of date?

Report a problem

With "Design Patterns". Only Tauseef reads this.

Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.