News for hackers. Stuff that matters.
Re:Books you shouldn't read when starting out as a programmer by gruseom on Tuesday December 01, 2009 @01:14PM (#970259)
I disagree that Patterns of Enterprise Application Architecture is an excellent book. I found it to be poorly written and appallingly edited. (Martin Fowler is capable of much better.) More importantly, the patterns themselves give an impression of coherence and well-understoodness to a space that is in fact incoherent and poorly understood. This results in people thinking and talking more about patterns than about the problems they're actually trying to solve with software. In other words, the whole enterprise (pun intended) is premature optimization at a meta level.

Refactoring is better because it's on a smaller scale and thus able to deliver roughly what it promises.

As far as the enterprise-OO space goes, though, the best book by far IMO is Eric Evans' Domain Driven Design. One reason it's better (apart from being superbly written) is that it's much more exploratory: it doesn't pretend to have figured things out, but rather offers principles you can use to figure things out. Also, the principles, though deep, are easy to understand (as opposed to "enterprise application architecture patterns" which get more confusing the more you try to understand them). In fact, the only weak spots in DDD are the points at which it veers closer to the PEAA approach.

(Disclosure: I worked with Eric for several years. But my high opinion of his book was not caused by this; it was the other way around.)

There are no comments on this comment yet.