views:

1307

answers:

8

Hi, I'm thinking of buying Martin Fowler's "Patterns of Enterprise Application Architecture".

From what I can see it seems like a great book, it an architectural book with bias towards enterprise Java -- just what I need.

However, in computer years, it is quite old. 2003 was a long time ago, and things have moved on quite a bit since that time.

So I'm wondering if anyone can tell me: is this book still relevant, and worth the read?

Thanks

+27  A: 

Yes, it is still very relevant and an excellent resource.

Mitch Wheat
+7 for "yes"... I love SO :)
Dead account
+1  A: 

I disagree with the "bias towards Java" statement. Patterns, by their nature, are language-agnostic. They're defined as solutions to common problems. The copy of Fowler's book has examples in both Java and C#, so I can't see where the "bias" comes in. They're the most common object-oriented languages, and he's talking about object-oriented solutions to enterprise problems.

The GoF book has examples in Smalltalk and C++. Why are they so "biased" against Java and C#? Hint: the languages didn't exist when that book was written, but the patterns are as relevant as ever.

duffymo
Well, I haven't read the book, so I don't really know... I didn't mean bias in a bad way. It probably would have been more correct to say "the common object-oriented languages used in the enterprise", but I'm a Java guy -- when I think "object-oriented language used in the enterprise" I think Java.
Jack
Agreed, but other people reading your comment might think you had read it and shy away because they aren't Java folk. I wanted to clarify.
duffymo
+6  A: 

It's very relevant. I frequently refer other developers to particular patterns from that book, as links to his site (http://www.martinfowler.com/eaaCatalog/), such as Data Transfer Object and Service Layer.

The latter is one I thought I had invented until I saw that Fowler had already written about it.

John Saunders
+2  A: 

It's currently the textbook used at my university's Principles of Information Systems Design course.

Thomas Owens
+11  A: 

This book, and Eric Evans book about Domain-Driven Design, are my books of the year - every year ;) ...

mjustin
A: 

Yes the book is still relevant. You can pickup used copies on Amazon if you are worried about its value and sell it through the same channel.

jm04469
A: 

Absolutely!

The book is a classic. I've just been re-reading it to help with some work on event-driven accounting systems.

Fowler has been revisiting some of the patterns since and you can see his works in progress.

Andy Dent
+1  A: 

Very relevant, and certainly not chained to one language. Witness the upcoming Rails move to Merb, in a very real sense a move from one pattern in POEAA (ActiveRecord) to another (DataMapper).

Many other concepts, from ORM strategies to session management, are both relevant and language-agnostic. I'm still floored when I read this how vast Fowler's influence is. He didn't invent all of the concepts here, but he certainly codified and put names to these ideas in such an concise and accessible way as to make them common parlance across the industry. Still essential.

Dave Sims