Jump to ratings and reviews
Rate this book

Design Patterns: Elements of Reusable Object-Oriented Software

Rate this book
Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves.

The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems. With Design Patterns as your guide, you will learn how these important patterns fit into the software development process, and how you can leverage them to solve your own design problems most efficiently.

Each pattern describes the circumstances in which it is applicable, when it can be applied in view of other design constraints, and the consequences and trade-offs of using the pattern within a larger design. All patterns are compiled from real systems and are based on real-world examples. Each pattern also includes code that demonstrates how it may be implemented in object-oriented programming languages like C++ or Smalltalk.

416 pages, Hardcover

First published January 1, 1994

Loading...
Loading...

About the author

Erich Gamma

16 books128 followers
Erich Gamma is a Swiss computer scientist and co-author of the influential software engineering textbook, Design Patterns: Elements of Reusable Object-Oriented Software.

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
5,392 (44%)
4 stars
4,276 (35%)
3 stars
1,840 (15%)
2 stars
406 (3%)
1 star
122 (1%)
Displaying 1 - 6 of 6 reviews
11 reviews
February 27, 2026
Un libro muy importante para entender object-oriented programing. Te ayuda a comprender la razón de ser de varias estructuras de clases y objetos, que simplemente leyendo el código no puedes ver.
Como bien dicen los autores, muchos programadores podrán decir que estos patrones son muy utilizados dentro de la practica y no hay necesidad de ponerles nombre, pero juntamente nombrarlos puede ayudarnos a identificarlos, describirlos y mejorarlos.

Este libro es necesario si quieres mejorar la arquitectura de tus programas (haciendo diseños más modulares, escalables y con código mas fácil de leer para otros progrmadores).
7 reviews
August 23, 2025
El manual de los GoF constituye una referencia fundamental y orientadora sobre los principales patrones de diseño empleados en el desarrollo de aplicaciones. Cada patrón es explicado de manera estructurada, lo que facilita comprender su propósito y aplicación práctica en diferentes contextos.
Profile Image for Diego.
171 reviews
July 10, 2012
Este libro presenta un catálogo de varios patrones de diseño orientado a objetos, los cuales son usados comúnmente en sistemas y en frameworks de desarrollo. Se considera que este libro ha sido influyente en el campo de diseño orientado a objetos desde su publicación en 1995.
Para el programador novato es un "must-read": resume soluciones a problemas comunes en el diseño de sistemas orientados a objetos, describe las condiciones bajo las cuales es útil hacer uso de estas soluciones y las consecuencias de usarlas, y ayuda a comprender mejor el paradigma de la programación orientada a objetos gracias a los ejemplos presentados y la descripción de la terminología usada.
Tal como mencionan los autores, muchos de estos patrones son usados en los frameworks de desarrollo y en bibliotecas de varios lenguajes. Comprender estos patrones ayuda a adoptar de manera más rápida las herramientas que proveen estos frameworks y bibliotecas.
Por estas razones, es un libro recomendable para cualquier programador.
Displaying 1 - 6 of 6 reviews