Thinking in Patterns with Java
Downloading the book
The book is available as HTML pages with an index and frames for easy
navigation. This download contains the source code for the book, and
instructions for building the code.
Download Thinking in
Patterns here
Building the code for this book
The detailed instructions for building the code for this book are
included with the download of the book.
Genesis of this book
The more that I worked towards the deadline for Thinking in Java, 2nd
edition, the more I started to feel that either the schedule or the quality
would be compromised. However, when I broke the "Polymorphism" chapter into two
chapters based on my experience giving the seminar (the single chapter produced
a lecture that was too long by far), it reminded me of the roots of that book,
which was the Hands-On Java seminar. The biggest
bottleneck in the book was the one chapter that is not part of the seminar,
which was the last one ("Design Patterns"). In addition to being in very rough
form and promising a tremendous amount of work and research, which always
takes more time than I think it will to get in shape, this chapter kept
getting bigger and really deserves its own book. So that's what I have done
pulled the Design Patterns chapter out so that it can be turned into a separate
book. Because it's on the Web, this is not really taking anything away from the
reader, and it means that the schedule becomes far more practical. I will be
posting information here and in the newsletter as
this project develops.
Please don't ask when it will be done. I've been working on
understanding the patterns material since before the Gang of Four Design
Patterns book came out and I first heard the term and understood that's what
I was struggling with. The
seminar has also gone through a lot
of evolution. And I just finished doing two books back to back, and feeling
rushed and that I wasn't doing the kind of job that I've become accustomed to.
On the other hand, the interest in this seminar and this material seems to be
very high, and every time we give the seminar I get new and better ideas, so I
believe that this project will get a high priority. In the end, though, I want
to make it right before even thinking about putting it in print.