23 of 23 people found the following review helpful
key book for enterprise patterns,
This review is from: Patterns of Enterprise Application Architecture (The Addison-Wesley Signature Series) (Hardcover)
Even if you find enterprise stuff immensely dull, dealing with databases and web pages is a pretty common task, most of the action in software development revolves around it, and who wants to be completely ignorant of the the alphabet soup of various technologies the IT blogs, books and websites are floating in?
So if you must immerse yourself in this area, what better than a Martin Fowler book? The code is mainly in Java, with a fairly large smattering of C#. It would probably help if you understood some basics of enterprise development in those languages, e.g. servlets and JDBC for Java.
The patterns in this book cover organising domain logic, database mapping and access, web presentation, concurrency, and the book finishes by covering base patterns, a mixture of lower level abstractions of the sort covered in Fowler's first book Analysis Patterns (e.g. Money) and those that bear a close resemblance to the classic vanilla Gang of Four patterns, with an enterprise twist (e.g. Plugin and Gateway). Nearly all the other patterns refer to these, so I don't know why these didn't appear first. Apart from that though, the book is very well organised. And the opening essay, that discusses the trade offs of every pattern and how they fit together in an application, is immensely helpful.
Wizened enterprisers looking for new material will not find much new here, but surely the point of patterns catalogues are to get down on paper the practices of those same wizened enterprisers, not to strike off in new directions. Therefore, an experienced developer should see this as a way to organise what they already know, and maybe in doing so, reveal some new insights.
A newcomer to enterprise development will definitely get a lot out of this, as the underpinnings to the plethora of modern enterprise applications are laid bare. You're not going to become a Hibernate, Struts or EJB expert from this book, but you should at least have a clue about what problems they're trying to solve.
As usual, Fowler manages to be a model of clarity, while still injecting regular touches of wry humour, quite an achievement given the potentially bone-dry material. If you want to know the basics of enterprise software, start here.