[Tutor] The Gang of Four (was: A Book for You and Me)
Scot W. Stevenson
scot@possum.in-berlin.de
Wed, 4 Sep 2002 11:48:32 +0200
Hello Sean,
> Yeah, it is expensive and so are all of the Addison Wesley books. The
> main selling point is that almost all of them are good enough that
> numerous colleges use them as required texts for classes.
And "Design Patterns" is written like a college book, in a terrible,
deadly, dehumanized, and completely humorless prose that is the exact
opposite of the clear, friendly style of writing that has helped make
English the international language of science and technology. In fact, if
you were to capitalize the nouns, make the sentences a bit longer and move
the verbs to the end, "Design Patterns" could pass as a German college
text. This is not a compliment: A lot of Germans in my biochemistry class
were using American textbooks instead of German ones simply because of the
style of writing.
As well structured as "Design Patterns" is and as great the insights might
be (I don't claim to even understand a third of it yet), it is very much a
book where you get the feeling that the people who wrote it are very, very
serious, don't have much fun in life, and don't think their thoughts
should be generally accessable. Also, the book is from 1995, and still in
the first edition. I would expect OOP has progressed somewhat since then,
so somebody should sit down and rewrite the whole thing to a) bring it up
to date with current developments, b) humanize the prose, and c) replace
the Smalltalk examples with Python.
My suggestion to other amateur newbies is to wait with this book until you
keep running up against terms like "Flywheel" and "Factory" and "Mediator"
all the time - this book is far more in the science section of computer
science, and you're probably going to want to read a whole lot of other
stuff before you get to it. I occassionally take down my copy and am
amazed how, say, it can take 15 pages of robotic prose to explain in very
abstract terms what an iterator does, and how amazingly complicated they
seem to be to implement in C++.
Simply put, this book is far too advanced for me, and I wish I had bought
"Code Complete" by McConnell first and "Design Patterns" sometime in the
future when I am able (and willing) to think about objects on that level
of abstraction - and can stomach the prose. For Python beginners, this is
definitely a "We read Knuth so you don't have to" (Tim Peters in the
"Python Cookbook") kind of book.
Y, Scot
--
Scot W. Stevenson wrote me on Wednesday, 4. Sep 2002 in Zepernick, Germany
on his happy little Linux system that has been up for 1880 hours
and has a CPU that is falling asleep at a system load of 0.08.