Customer Reviews


17 Reviews
5 star:
 (13)
4 star:
 (1)
3 star:
 (3)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 
Only search this product's reviews

The most helpful favorable review
The most helpful critical review


40 of 42 people found the following review helpful:
5.0 out of 5 stars Holub on Holub
This is a very enjoyable book. Reading it is a little like sitting down with an oldfashioned master craftsman. I mean the kind who shows you, step by step, how he plies his trade, and offers a cantankerous side-commentary of opinion on just about everything while he does it. The commentary on p.283, for example, describes a very questionable programming trick that he...
Published on October 29, 2004 by wiredweird

versus
11 of 14 people found the following review helpful:
3.0 out of 5 stars It's OK, not great.
I looked at one other book before purchasing this one, Refactoring to Patterns, but I picked this one because this one had 5/5 average review. I should have picked the other one, though. :-(

This book starts out great, the first 2 chapters (out of 4) give you quite a few tips and rules of thumb. However, once you get to chapter 3 and 4, the chapters on...
Published on January 11, 2005 by S. Kubasek


‹ Previous | 1 2 | Next ›
Most Helpful First | Newest First

40 of 42 people found the following review helpful:
5.0 out of 5 stars Holub on Holub, October 29, 2004
Amazon Verified Purchase(What's this?)
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
This is a very enjoyable book. Reading it is a little like sitting down with an oldfashioned master craftsman. I mean the kind who shows you, step by step, how he plies his trade, and offers a cantankerous side-commentary of opinion on just about everything while he does it. The commentary on p.283, for example, describes a very questionable programming trick that he pulled, and why, and why this one violation of normal practice is acceptable in this one case. In other words, it's real - a little gritty, not like didactically pure textbook examples. It's what real programmers really do.

The book is basically a commentary on the Gang of Four. It's certainly not the first, but it has a unique format. He demonstrates all 23 of the GoF patterns by applying them to two modest-sized Java applications. This is great for people who need concrete code to see what the pattern really means. It's even better because it shows multiple patterns overlapping, where one application class has different duties in the different classes. A large part of the book's bulk is code listings for the applications - some classes exceed 1000 lines of source code. I normally consider that to be a waste of paper. This time, however, the code is complex enough that it really does need to be presented right next to the commentary. (The code is also available electronically at holub.com .)

Towards the end of the book, he says "So, that's all of the Gang of Four design patterns, all tangled together in the two programs ... the way the patterns appear in the real world ..." That tang of realism is what gives this book such an unfamiliar format, and gives such contrast to the standard, one-at-a-time reductionist descriptions of each pattern in isolation. I'm not saying this holist approach is better; a beginner will just get lost in the whirl. Holub's holism isn't worse, either, it's a complement to the microscopic, academic presentations seen elsewhere. This book plus the analytic pattern catalogs form a sum much more valuable than the parts.

I recommend this very highly. The successful reader already is already quite familiar with Java and with design patterns. That reader is ready to take the next step, from the theory of patterns into their practical application. Seasoned pros may not get much form this book. An advanced beginner, with a little determination to see it through, will get a lot.

//wiredweird
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


10 of 10 people found the following review helpful:
5.0 out of 5 stars Pragmatic patterns, Holub style, January 3, 2005
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
In order to read Allen Holub's new book, you'll certainly need some programming skills (Java, OOP and patterns to be more specific). On the back of the book, there's specified 'Intermediate to Advanced'. It certainly depends on what you mean by 'Intermediate'... because the book is not exactly a light read. But then again, we don't expect that from Allen Holub. We want interesting, insightful books from him, and 'Holub on Patterns' falls nicely into that cathegory. However, some 'intermediates' should prepare themselves for a harsh ride.
The volume is structured in 4 chapters. The first one contains some 'preliminaries'. Meaning : short explanations about why OOP is still incorrectly used, design patterns are not fully understood, plus a bonus of controversial statements like 'getters and setters are evil' and 'Swing is an over-engineered piece of junk' [well, maybe not exactly these words]. As a direct consequence of reading this chapter, the 'intermediates' will start banging their heads on the closest wall available : "My code sucks ! I swear I'll never blindly copy/paste again !".
In the second chapter things really start to heat up. Allen explains why 'extends is evil' and interfaces are not evil. In case we needed an example of fragile-base-class problem, here we go with some MFC bashing (usual stuff). The chapter focuses also on some creational patterns such as Factory and (at great lenghts) Singleton. I especially liked the cool explanations of how to shut down a Singleton.
The third chapter discusses an [overly complex, on purpose] implementation of the 'Game of Life'. Between huge chunks of code (a bit much for my taste) scattered throughout the chapter, the author explains all the implementation choices: from Visitor to Flyweight. Some 60% of the GoF patterns are encountered in this chapter's code.
The fourth and last chapter contains 'production code', as the author declares. It's a small in-memory database, with and embedded SQL interpreter and a JDBC driver. Very solid example, but it'll probably scare away a few 'intermediates'.
It all ends with an Appendix containing a great 'Design-Pattern Quick Reference', presenting the most used patterns in a very pragmatic format. Each pattern is explained via a diagram, some Java code snippets, its motivation, pros and cons, and a very original 'Often Confused With' paragraph.
Unlike all the other pattern books you've read before, this is not a reference. It's a real programming book that you'll have to read from cover to cover. You'll also need solid programming skills in order to understand the last two chapters (and especially the last one).
My gripes:
- too much code. Probably more than 1/3 of the pages are just printed code.
- typos. There is a slightly disturbing amount of typos in the book, even in some code snippets [like for instance 'Sting' instead of 'String'].
However, these problems should not scare away any potential readers. Because of its original pragmatic approach, 'Holub on Patterns' is surely in the Top 10 Java books for 2005.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


6 of 6 people found the following review helpful:
5.0 out of 5 stars Practical Usage of the Design Pattern, May 3, 2005
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
I read the GoF book, Design Patterns Explained before reading the 'Holub on Patterns'. They treat same subject but take different approaches.

GoF is the nominal Bible of Design Pattern. Everybody would accept this fact. But this is a dictionary like reference book. As like reading great books to write a good composition, programmers must read great code to write a good program. Dictionary is only assistant tool. It is perfect but not real. Too Abstract!

Design Patterns Explained, i think, is a good book. This give us new perspective to the real OO. But DPE is not code-oriented. Good conceptual explanation, but not great amount of great code. And DPE also not treat all GoF Patterns.

This is the reason Holub on Patterns came to live. Holub give us new perspective through Chapter 1, 2. Chapter 1 mainly treats 'getter/setter' and Chapter 2, 'extends relationship'. But there are more to those. Especially 'Pushing vs Pulling' and 'Cellular Automata', 'Don't ask information, but ask help' was very helpful.

Chapter 3. Game of Life. This chapter treate Conway's Game of Life implementation in the perspective of Design Pattern. Somewhat good. Holub took hardcore design pattern approach in this chapter, so reading a code was somewhat difficult. but this is also his intent. He tells overuse and misuse of patterns would only increase the complexity of program without benefits indirectly. (Of course Game of Life is not too much hardcore).

Chapter 4. SQL Interpreter. This code is really great! I wrote the similar program with similar functionality in C when I learn database. And through Holub's implementation comparing my impl in 'procedual C', I could feel real OO's benefit. Again. Great!

And... Apendix. Good abreviation version of GoF Catalog. More clear 'Intent' explanation, and more practical code examples.

To my thought, learning patterns through real code, not toy code also is more efficient in memorizing aspect cuz we can remember pattern in the context of total program.

Recommand to you!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 9 people found the following review helpful:
5.0 out of 5 stars Saint Allen or Programming's Travis Bickle?, December 16, 2004
By 
R. Williams "code slubber" (Los Angeles, CA United States) - See all my reviews
(VINE VOICE)    (REAL NAME)   
Amazon Verified Purchase(What's this?)
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
It's not surprising the ecumenical reactions here; the statements on the jacket sound like Lutherian proclamations. But one of the great things about Allen's stuff is that the message is in the medium: even if you don't go in for every inch of his list of 'evil' things, watching him take things apart is what is compelling. The statements he makes about how every self-respecting programmer should have the Gang of Four committed to memory and know how they interlock is totally true, and having hired and worked with a lot of programmers in the last few years, it is sad how few of them have a good grip even on a couple of the patterns.

That said, the examples here are mixed. The Game of Life was a curious choice. The SQL interpreter was a good idea. Many people will crack this book and think 'I'm never going to write a little language,' but in fact, interpreter is cropping up all over the place these days (as the metadata portion of the coding corpus continues to grow). I also really like this edition: the diagrams are fantastically concise and well-integrated into the text.

Contrary to some of the other claims here, many have tried to do this from Mark Grand (a good 4 years ago), through the slew of books in the last two years proclaiming catalogs. This one makes those look like tinkertoys.

Finally, another book that came out recently, Refactoring to Patterns takes a great line. Sometimes, Allen's world is a tad too clean for me. Most of the world is filled with dirt. And in fact it is a good thing to learn how to work your way into pattern implementations. Rarely do you start, for instance, with Visitor. Unfortunately, that book is a tad thin. The best work I've ever seen in that direction is the Cook's Tour of JUnit by Kent Beck and Erich Gamma which is a short article about how JUnit evolved (starting w/one or two patterns, growing to something crazy, then actually pruning a few).

Anyway, this is really well done all around.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 5 people found the following review helpful:
5.0 out of 5 stars Highly Recommended, May 17, 2005
By 
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
I have been programming procedurally for over 6 years, this book was my plunge into the object oriented world. This books starts out with an enlightening introduction to object oriented concepts, this makes it accessible to people with incomplete knowledge of OO techniques.
Until I read this book I thought I knew OO and was convinced that I was practicing it for the last couple of years, turns out I was deeply mistaken and this book taught me just how little I know.
Two involved examples are given; my initial reaction to the UML and pattern diagrams given was that of confusion. But as Allen walked me through, the confusion faded and I was struck by the depth of their meaning, from then on I use UML a lot more extensively.
At the end of the book there is a short reference to all of the patterns, this 50 page reference is worth the price of the book just by itself.
Awesome stuff, this book is a must read for anybody looking to take the plunge into OO, it has definitely made me a much better programmer. I have read it twice and intend to read it a few more times in the future.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


7 of 8 people found the following review helpful:
5.0 out of 5 stars accessible, October 27, 2004
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
Holub attacks a pedagogic treatment of patterns that tends to focus on the abstract description. Of course, this abstraction is important, in order to generalise from specific instances. The whole point of patterns, after all. But Holub points out that often these descriptions are a little too abstract. Many of us learn from well chosen examples. So he follows this precept by elaborating on 2 nontrivial case studies. One is John Conway's classic Game of Life. From this you can see various common patterns emerge from the gestalt, like Visitor and Composite.

The other case study is an embedded SQL interpreter. Neither example is complicated. But each consists of several interlocking parts that contributes to an overall complexity that can be challenging if you don't use patterns.

Granted, if by one means or another, you're already familiar with patterns, perhaps from the GoF book, then Holub's text will do little for you. But if you're new to patterns, he can offer an accessible insight.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


11 of 14 people found the following review helpful:
3.0 out of 5 stars It's OK, not great., January 11, 2005
By 
S. Kubasek (Garfield, New Jersey) - See all my reviews
(REAL NAME)   
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
I looked at one other book before purchasing this one, Refactoring to Patterns, but I picked this one because this one had 5/5 average review. I should have picked the other one, though. :-(

This book starts out great, the first 2 chapters (out of 4) give you quite a few tips and rules of thumb. However, once you get to chapter 3 and 4, the chapters on patterns, the author does a so-so job. Quite frankly, I had hard time reading those chapters. I thought that by looking at code you might learn more about patterns. Not true. Especially, when you have to look at GUI code, as is the case with this book. I did not like that.

Maybe that's only me, but I would recommend the Kirovski's book instead (at least look into it).
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 10 people found the following review helpful:
5.0 out of 5 stars Strong opinions, practical advice, October 12, 2004
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
This is a unique book. The idea is that you learn patterns through examples in code, as opposed to the architectural level presented in the Gang of Four book. The patterns are presented in a couple of primary case studies. One is the game of life, whose code alone takes up a significant number of pages without sufficient annotation.

The author has strong opinions about how to do patterns right and this is what I appreciate most about the book. Other standout features include the a very concise condensation of the GoF patterns at the end of the book.

I fault the book for the run-on code fragments, but these do not detract enough to take away from the books unique compelling features. For anyone who is interested in a more pragmatic face to patterns this book is well worth the look.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful:
5.0 out of 5 stars Unique and highly recommended look at design patterns, June 26, 2007
By 
Justin (Oakland, CA) - See all my reviews
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
Holub on Patterns focuses on applying design patterns, as they exist in the real world. That is, many overlapping patterns, tangled up, and deliberately so. Holub teaches patterns by example, rather than the encyclopedia-style format we're used to. There's a strong "real world" focus, and it's both a unique and compelling format. It's also a great deal of fun. Holub's a strong writer, and very opinionated. He also advocates a purist's form of OO design, which I happen to agree with: don't use getters/setters, don't use extends, etc. If you aren't used to real OO programming, that'll also take some adjustment, but it's time VERY well spent.

You'll need to be a java developer, or at least comfortable with the language, and have some familiarity with design patterns.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful:
5.0 out of 5 stars Design Patterns explained in a very unique and simplified manner, April 4, 2007
This review is from: Holub on Patterns: Learning Design Patterns by Looking at Code (Hardcover)
After reading the first chapter of this book, I felt that Mr. Holub had a very unique way of explaining things which kept me going on. Sure enough, at the end I can say that this was the most interesting and informative book on design patterns that I have ever read !!! He often seems opinionated about how things are implemented in the OO world but he justifies them with relevant real world examples. The design patterns are explained with an example implementation along with a reference of the pattern in the Java API. This makes a lot of impact since most of the readers are familiar with the API and helps in correlating and remembering the patterns easier.

Some of the golden rules suggested in the book that I will always keep in mind from now on:

1) Dont ask for information from an object, rather give the object the information it needs and ask it do the work for you.
2) Getters and Setters are evil because they compromise encapsulation.
3) 'extends' is evil as it can cause fragile base classes.

My only complaint about the book is the example of 'Game of Life' (Chapter 3) that was chosen. If you are one of those that havent heard of the game earlier, you would find it a little difficult to follow the code. It would have been better if the author had chosen any other real world application similar to the SQL Interpreter application that was explained in Chapter 4.

The Appendix section is a great ending with concise descriptions about each one of the patterns. I am sure I will refer to this book for a long time and it definitely deserves a space on every serious Java developer's book shelf.

Happy reading....
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


‹ Previous | 1 2 | Next ›
Most Helpful First | Newest First

This product

Holub on Patterns: Learning Design Patterns by Looking at Code
Holub on Patterns: Learning Design Patterns by Looking at Code by Allen I. Holub (Hardcover - September 30, 2004)
Used & New from: $42.96
Add to wishlist See buying options