Design Patterns and over 2 million other books are available for Amazon Kindle . Learn more


or
Sign in to turn on 1-Click ordering.
Trade in Yours
For a £8.40 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Sorry, this item is not available in
Image not available for
Colour:
Image not available

 
Start reading Design Patterns on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Design patterns : elements of reusable object-oriented software [Hardcover]

Erich Gamma , Richard Helm , Ralph Johnson , John Vlissides
4.4 out of 5 stars  See all reviews (65 customer reviews)
RRP: £38.99
Price: £26.77 & FREE Delivery in the UK. Details
You Save: £12.22 (31%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 1 left in stock (more on the way).
Dispatched from and sold by Amazon. Gift-wrap available.
Want it Wednesday, 24 Sep.? Choose Express delivery at checkout. Details

Formats

Amazon Price New from Used from
Kindle Edition £25.43  
Hardcover £26.77  
Paperback --  
Multimedia CD, Audiobook £34.00  
Trade In this Item for up to £8.40
Trade in Design patterns : elements of reusable object-oriented software for an Amazon Gift Card of up to £8.40, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Book Description

31 Oct 1994 0201633612 978-0201633610 1

  • 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.


Frequently Bought Together

Design patterns : elements of reusable object-oriented software + Clean Code: A Handbook of Agile Software Craftsmanship (Robert C. Martin) + Refactoring: Improving the Design of Existing Code (Object Technology Series)
Price For All Three: £92.35

Buy the selected items together


Product details

  • Hardcover: 416 pages
  • Publisher: Addison Wesley; 1 edition (31 Oct 1994)
  • Language: English
  • ISBN-10: 0201633612
  • ISBN-13: 978-0201633610
  • Product Dimensions: 23.6 x 19.4 x 2.6 cm
  • Average Customer Review: 4.4 out of 5 stars  See all reviews (65 customer reviews)
  • Amazon Bestsellers Rank: 4,134 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Authors

Discover books, learn about writers, and more.

Product Description

Amazon Review

Design Patterns is based on the idea that there are only so many design problems in computer programming. This book identifies some common program-design problems--such as adapting the interface of one object to that of another object or notifying an object of a change in another object's state--and explains the best ways (not always the obvious ways) that the authors know to solve them. The idea is that you can use the authors' sophisticated design ideas to solve problems that you often waste time solving over and over again in your own programming.

The authors have come up with some ingenious ways to solve some common vexations among object-oriented programmers. Want to build a page-layout program that embeds inline images among characters of various sizes? How about building a program that converts files of one format to another? Chances are, some programmer already has thought of a better solution than you will and the recipes you need are here. Solutions are presented in generalised diagrams of data and logic structures. The idea is that you can take the concepts presented here and adapt them--in whatever language you use--to your individual situation. You may have to read some of the chapters several times before you fully understand them, but when you find a solution in this book, it will make your job easier and your results more elegant. --Jake Bond

From the Back Cover

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.



0201633612B07092001


Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index | Back Cover
Search inside this book:

What Other Items Do Customers Buy After Viewing This Item?


Customer Reviews

Most Helpful Customer Reviews
8 of 8 people found the following review helpful
5.0 out of 5 stars This is the one the others talk about 10 Oct 2006
Format:Hardcover
I read a couple of design patterns books before this one and quickly realised that I need to get this book as soon as possible. The others I've read all referenced it and as a design patterns catalog it presents patterns in the purest form. It is extremely easy to read in terms of clarity and layout and certainly in a format that will appeal to programmers. Although most examples are either in C++ or SmallTalk you should have no problem keeping up if you specialise in other languages including scripting languages like PHP5.
Was this review helpful to you?
20 of 21 people found the following review helpful
3.0 out of 5 stars In need of a re-write 9 Oct 2010
By KJ
Format:Hardcover|Verified Purchase
I've worked in the IT industry exclusively since 2006 when I graduated from university. This book was required reading for the Design Patterns module I elected to do. Back to 2010 and I've found myself doing more OO and re-factoring of some complex code bases. I picked up my copy and realised just how out-dated the examples are, especially for developers using Java / C#. The examples might be more relevant to C++ developers but I find the book really heavy going and quite hard to digest.

Design patterns are not difficult and books like Head First Design Patterns are better introductions to Designs Patterns than the GoF book. Unfortunately the Head First series does not cover all the patterns in the GoF and the Head First book is not designed to be a reference book. That said I remember much more of what I read when compared to this text.

Unfortunately there is no alternative that provides essential coverage of some of the most common patterns used day to day.

In short if your new to patterns and have a limited budget go for the Head First Book, while not a reference its a much gentler introduction.
Comment | 
Was this review helpful to you?
100 of 108 people found the following review helpful
2.0 out of 5 stars a must-read that is also a must-rewrite 5 May 2000
Format:CD-ROM
This book is compulsory reading with no real competition.
However it's very badly written. People often mention (without complaining? ) of what a lot of hard work this book is. In fact almost all the patterns are easy to grasp, but rubbish explanations in conjunction with inconsistent use of terminology and weak examples obscures each pattern to the extent that the reader's brain soon falls out of their head.
I can't point to any one example in the book since they are all as bad as each other. But re-reading the visitor pattern finally inspired this diatribe.
I can't understand how these guys have got away with it. It's absurd. There must be an unimaginable number of people who have given up on Design Patterns due to this book, seminal or not. What a shame. The value of patterns is almost incalculable.
If only Odell & Martin or Martin Fowler would condescend to give us something readable!
Was this review helpful to you?
5 of 5 people found the following review helpful
5.0 out of 5 stars The best book for OO designers and developers 26 May 1999
By A Customer
Format:Hardcover
Starting from what design patterns are, this book then presents how patterns can be used to build a document editor. What follows is a list of great patterns for various purposes. This book is a great tool for anyone who is interested in OO design. You read it, and read it, and read it...and then when you finish you read it again! This book lives on my desk now... I was a bit dissapointed that multi-threaded patterns were not discussed at all in this book, but I'll still give it a 5 because I do think it is excellent.
Comment | 
Was this review helpful to you?
11 of 12 people found the following review helpful
5.0 out of 5 stars Great quality references for a decent price 2 Mar 2009
By D. Baas
Format:Hardcover
I recently ordered "Design Patterns: AND Applying UML and Patterns, an Introduction to Object-Oriented Analysis and Design and Iterative Development: Elements of Reusable Object-oriented Software". Although i could not find information as to whether it concerned two separate books or two books in one, i was looking for references on both Design Patterns and UML. It turned out to concern two books and although i haven't finished reading both from front to cover, i am impressed with the quality of the material in both. Design Patters is a book that i use a lot for reference and for a great perspective on how to set up object-oriented software designs. Applying UML and patters provides valuable information on how to apply UML and patterns during real-life software development. It it written in a down-to-earth fashion and is a great help because it explains all stages of iterative sofware development and all points that need attention. It also tells you when not to use UML and how UML was intended.
Comment | 
Was this review helpful to you?
12 of 13 people found the following review helpful
5.0 out of 5 stars Required Reading 29 Dec 2004
By C. Jack
Format:Hardcover|Verified Purchase
As you will have guessed from the other reviews this is required reading but if you do find it hardgoing I'd recommend reading "Design Patterns Explained" which is a lighter introduction ("Applying UML and Patterns" by Craig Larman is also useful for this).

Once you get the patterns, and more importantly once you understand why they are good designs, I would recommend looking at "Pattern Hatching", "Agile Software Development (2nd edition)" and "Refactoring to Patterns" which cover the use of patterns.
Comment | 
Was this review helpful to you?
16 of 18 people found the following review helpful
Format:Hardcover|Verified Purchase
My subject title says it all. These guys are to developers and architects what geeks are to business people. Ever heard business people complain they can't speak tech speak and we'd better shape up and learn the language of business if we want to keep our jobs? Well you'll be complaining about how these guys try to explain their subject to you.

These guys would have been first out the door in your business as they can't explain how to boil and egg without shrouding it in mystery and science. Talk about surrounding yourself in importance then this book is probably aimed at that because the patterns are simple and easy to understand in practice, BUT NOT IF YOU READ THIS BOOK! No doubt if they had written it simply in the first place it would not have not been received in the academic world and would not have its place in history today. As it is, if you want to look important and well clued up then buy this book to show off on your shelves and while your at it put it next to a Charles Petzold book.

These guys get 5 stars for their research and nothing for authorship. If you really want to do your job well, steer clear of this and look elsewhere for real examples of how to make patterns work for you.
Was this review helpful to you?
Would you like to see more reviews about this item?
Were these reviews helpful?   Let us know
Most Recent Customer Reviews
5.0 out of 5 stars Five Stars
Very useful for C++ software architecture design
Published 8 days ago by Gnasambandapillai Ramtharan
5.0 out of 5 stars This book is exceptional. It has given me a ...
This book is exceptional. It has given me a new perspective on design within C++. It's definitely difficult to fully understand due to the conceptual level, but it is very clear... Read more
Published 16 days ago by A. N. Robertson
5.0 out of 5 stars A must-have for any programmer
I timeless classic. I have it in several copies: PDF, Kindle, HTML. But nothing equals than holding the actual print in your hands.
Published 2 months ago by FILIP Marius
4.0 out of 5 stars A Classic Text
This was recommended by plenty of programming professionals and it does not disappoint. It takes a while to become familiar with the terminology but it pays off in the end. Read more
Published 3 months ago by Beaufort Abenefor
5.0 out of 5 stars What can I say? Our lectures were built from this book and it's proven...
"If you only buy one book, this is it", our lecturer said and I have to agree. An entire section of a module later in the year turned out to have been based on it and with... Read more
Published 3 months ago by S. Munsey
3.0 out of 5 stars Specific to C++ and pretends it's not
Superb for C++ devs, but inaccurate/misleading if you're programming in any modern OO language. Doesn't deserve to be on uni reading lists anymore for this reason.
Published 6 months ago by T
3.0 out of 5 stars Good Starting Reference
I liked this, but there are better and more up-to-date references for this type of thing on the internet.

I rarely look at books these days - a failing of mine perhaps
Published 10 months ago by Anthony Johnston
4.0 out of 5 stars The item was in nice condition
Very good book at nice condition. The book is "must-have" for every software designer and specialist. The price is little higher, but not so fateful
Published 14 months ago by senser
4.0 out of 5 stars Quite Useful
I found the book quite useful. I have been coding professionally for over a decade now. There are some patterns that experienced programmers may have come up with by themselves, so... Read more
Published 15 months ago by I. Papamargaritis
2.0 out of 5 stars Wait for the 2nd edition (if there ever is one)
This book was obviously seminal in 1994 when it was published but it is now VERY dated! The chapter on "How design patterns solve design problems" is useful as an answer to... Read more
Published 16 months ago by Ian Rogers
Search Customer Reviews
Only search this product's reviews

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

Search Customer Discussions
Search all Amazon discussions
   


Look for similar items by category


Feedback