Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series) | Erich Gamma, Richard Helm, ... | Source of concepts for scaling software
books:
Design Patterns: E...
Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series)
Erich Gamma
,
Richard Helm
, ...
Addison-Wesley Professional
, 1994 - 416 pages
average customer review:
based on 249 reviews
view larger image
for more information click here
highly recommended
"Design Patterns" Excellent Intro/Catalog
"
Design
Patterns
" provides an excellent introduction to design patterns through a running example using a number of different patterns. Further it provides very well-structured descriptions, diagrams, and example source code for the 20some widely used patterns in its catalog.
Source of concepts for scaling software
I have been doing real-time C/C++ systems for the last 25 years (out of a 40 year prog. career). The I have worked on systems have gotton bigger and bigger. The concepts of the
Design
Patterns
books become more important to me as the systems got larger.
The point is that Design Patterns may seem irrelevant to programmers working on smaller projects.
It seems to me that the larger systems have more
object
s dedicated to work flow, collaboration, and policy than smaller systems. For example, a wireless switch project I worked on had radios, mobile stations, vlans, etc. but the majority of the system objects seemed to be dedicated to how these devices interacted rather than on support for the devices themseleves. Unfortunately, for this project, this behavior was stuffed into the classes associated with the devices. This caused class bloat and those annoying little "do nothing" classes.
The design patterns book gives suggestion about how to separate classes into smaller chunks while maintaining a rational and systematic collaboration. In my copies, those end of section for creational, structural and behaviorial pattern have little yellow postits for fast access.
To remember the behaviorial patterns, I came up with: crazy cat interest in mickey mouse on stacked salad tasty vitals.
One of the problems with C++, especially for real time use, is lack of a widely known set of classes that could serve to make design patterns "more real" to more RT C++ programmers. In the past 6 months I started to learn python/twisted/nevow for testing, tools, and personal organization (email, web site). Python and the class libraries that go along with use many design patterns, for example use of factories in web servers, templates for HTML parsers, blah, blah. Anyone who knows C++ will easily learn Python.
I own 2 copies of Design Patterns, one for home and one for work.
for more information click here
_The_ Patterns book
This was the first
patterns
book, this was the book that started the "patterns" movement... A must have for anyone interested in
Software
Design
Patterns.
Contains all the essential patterns, nicely organized =)
Excellent Design Book
This book was discussed in the C# Users Group I belong to. It is probably a book I should have read a long time ago. It is well written and is excellent at describing when and how to use these fundamental
Patterns
. A book every OO programmer should read.
Nice Overview
This book gives a nice overview of what high-level abstractions to think about, mostly when writing new
software
. It is used extensively as a college undergraduate textbook for team-approach programming courses in order to supply a vocabulary for student discussions. Some of the concepts are outdated by now (2006), and are not domain-specific enough for some purposes, but as an overview or first approach to the subject of
patterns
it is the gold standard.
for more information click here
reviews
:
1
,
2
,
3
,
4
,
5
,
6
,
7
,
8
,
9
,
page 10
,
11
,
12
,
13
,
14
,
15
,
16
,
17
,
18
,
19
products you might be interested in
recommendations
Essential Programmer Bookshelf
OO Software Architecture
Best books on Software
Software Engineering
Desired Reading
search for books
elements of reusable
,
addison-wesley
,
computing
,
object-oriented
,
professional
,
software
toavi.com
web
randomly chosen
book:
The Bottom Billion: Why the Poorest Countries are Failing and What Can Be ...