Essential Programming Books
12 books |
2 voters
Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series)
by Erich Gamma
|
|
Sign in to Goodreads to see your friends' reviews of this book.
discuss this book
friend reviews (0)
To see what your friends thought of this book, please sign up.
lists with this book
other reviews (showing 1-20 of 317)
Read in April, 2004
One of the most influential books to be published in the field of software engineering, this book continues to deliver and surprise me, even years after I took the university course that made me buy it. The idea of design patterns is so potent and applicable, the concept so rich, that its importance can hardly be understated. And what better book to read than the original source?
In this classic, Vlissides, Gamma, Helm and Johnson, a.k.a. the Gang of Four, catalogued something they called sof...more
In this classic, Vlissides, Gamma, Helm and Johnson, a.k.a. the Gang of Four, catalogued something they called sof...more
Like this review?
yes
add a comment
bookshelves:
math-code
I know this is an unpopular opinion, but I think the concept of a design pattern is just this side of bogus.
Part of the issue is that the languages the industry has chosen have weak powers of abstraction and thus these patterns seem necessary. Perhaps it's becoming a cliche (or became one 10 years ago?), but I'm sure some haven't yet been exposed to this thought: in a decent language like Lisp, most of these design patterns are trivial. The patterns are only there to make up for the problem...more
Part of the issue is that the languages the industry has chosen have weak powers of abstraction and thus these patterns seem necessary. Perhaps it's becoming a cliche (or became one 10 years ago?), but I'm sure some haven't yet been exposed to this thought: in a decent language like Lisp, most of these design patterns are trivial. The patterns are only there to make up for the problem...more
Like this review?
yes
add a comment
I don't like it as much as I used to, as I've found that using dynamic languages (ruby, perl, etc) made many of the design patterns unnecessary. Still, when I first read this book it changed the way I thought about software design and I remember my friend and I frantically re-writing huge chunks of our codebase to throw in several design patterns. I recall being amazed at seeing good, reusable solutions to problems we kept encountering.
Anyways, if you're not using Java/C++/other "stat...more
Anyways, if you're not using Java/C++/other "stat...more
Like this review?
yes
(1 person liked it)
add a comment
recommends it for:
Software developers
This is the classic software design patterns book.
Much of this material is assumed knowledge in many development shops so a understanding of this book is very valuable. However, there seems to be a design pattern mania and some developers take the information in this book a bit too literally and assume these patterns are inflexible. The patterns themselves are of value but the bigger take away from this book is how to solve problems with object oriented languages. This is an excellent reso...more
Much of this material is assumed knowledge in many development shops so a understanding of this book is very valuable. However, there seems to be a design pattern mania and some developers take the information in this book a bit too literally and assume these patterns are inflexible. The patterns themselves are of value but the bigger take away from this book is how to solve problems with object oriented languages. This is an excellent reso...more
Like this review?
yes
add a comment
Read in October, 2004
recommends it for:
professional software engineers, or anyone who wants to be.
This old warhorse is pretty much required reading for anybody who does professional software engineering. It's not that the concepts are all revolutionary ("I did that on my old IIgs!"); rather, this book provides the vocabulary for talking about high level software design. And not to go all Sapir-Whorf on you, but it's good to make that vocabulary as big as possible.
That said, this isn't really a how-to. It's a reference.
That said, this isn't really a how-to. It's a reference.
Like this review?
yes
add a comment
This book is great not for what it contains, a catalog of idioms that every professional programmer probably already recognizes, but rather for introducing the concept of design patterns to the larger community and making us think about software design at a higher level.
Unfortunately, it is also the genesis of innumerable newbies declaring, "My code is great. It has, like, nine different patterns in just this one function!"
Unfortunately, it is also the genesis of innumerable newbies declaring, "My code is great. It has, like, nine different patterns in just this one function!"
Like this review?
yes
add a comment
bookshelves:
non-fiction,
software-engineering
Ahhhh ... design patterns. Most software engineers have probably used several of the patterns in this book without even realizing it. Still, I found it to be a useful validation of some of my design approaches as well as a valuable resource for streamlining my design. Reading it cover to cover will put any software architect in a position to solve many design issues faster than they may have otherwise.
Like this review?
yes
add a comment
Read in January, 2004
This is a software architecture classic. If you want to build maintainable and extensible software then you need to learn about patterns and this book is the place to start.
This isn't really a book you just read once. At two different companies I've gone through this book with the entire team. We'd meet once a week or so to discuss the individual patterns and how to apply them to our work.
This isn't really a book you just read once. At two different companies I've gone through this book with the entire team. We'd meet once a week or so to discuss the individual patterns and how to apply them to our work.
Like this review?
yes
1 comments
bookshelves:
programming--theory-
Read in December, 2007
На удивление быстро прочитал. Где-то недели за 2. Честно говоря эта книга не научит тебе писать хорошо спроектированные программы. Все, что она сделает, - это покажет некоторые удачные приемы.
Like this review?
yes
add a comment
Has a copy to sell/swap
—
Read in January, 2005
recommends it for:
someone who already has a VERY strong understanding of design patterns
While the information is fairly good, the ability of the authors to present this information in such a way that anyone without a firm grasp of design patterns could understand it is sorely lacking. There are much better books out there now on the practical use of design patterns.
Like this review?
yes
add a comment
Read in April, 2008
By far the most readable and sure-footed OOP book. Every time I read it, i have a new eureka moment... Pretty hard to believe it was written in 1994. Feels more pertinent than anything you read concerning new technologies.
Like this review?
yes
add a comment
bookshelves:
computers
Perhaps more referenced than read...that's certainly the case for me. I've never tried to implement one of these things, but every once and a while I skim the patterns and it's useful to have the ideas filed away.
Like this review?
yes
add a comment
bookshelves:
non-fiction,
software-development,
technical
A classic in the area of pattern oriented software development. There are many other titles in this area that are good, but this one remains useful to those who want to understand patterns in software development.
Like this review?
yes
add a comment
bookshelves:
currently-reading
So far this book is really good. Before reading it I thought I knew what object oriented programming was all about but this book made me realize what I was missing. For me, it is full of those "Aha" moments.
Like this review?
yes
add a comment
This is one of those books every programmer needs to know. Design patterns give you the benefit of enlisting the products of years of Big Thinker time in your designs with comparatively little effort.
Like this review?
yes
add a comment
bookshelves:
tech-books
Read in January, 2003
Groundbreaking book, but very dry and abstract reading though. I think there are other books out there now that are better introductions to the subject. (e.g. the Head First series.)
Like this review?
yes
add a comment
bookshelves:
work
Has a copy to sell/swap
—
Read in January, 2004
recommends it for:
n00b developers
Cliche at this point. In Java some of these, like Singleton, are actually anti-patterns. Most developers with 5-10 years OO development experience should already know these anyway.
Like this review?
yes
add a comment
bookshelves:
cs,
own
Read in January, 2001
recommends it for:
Anyone who programs in an OO language
While I'm not convinced the design patterns presented are "universal," this book unquestionably provides a basis for thinking and talking about object oriented programming.
Like this review?
yes
add a comment
Well, if your a programmer this is a 5 star text. Very handy in my work life and I'm not technically employed as a programmer.
Like this review?
yes
add a comment
bookshelves:
favorites
Read in January, 1998
Every time I pick up this book, I'm excited all over again about the power and elegance of well-designed software.
Like this review?
yes
add a comment
book data (includes all editions)
avg rating (all editions): 4.21 (194 ratings) avg rating (this edition): 4.21 (192 ratings) number of reviews: 33Goodreads is hiring!
If you like books like these and love to build cool products, we may be looking for you.
Check it out!






















