{ by david linsin }

May 16, 2008

Book Review: Building Spring 2 Enterprise Applications

Apress was kind enough to pass me a copy of this book, which I agreed to review in return.

Building Spring 2 Enterprise Applications is the second book of an Apress series about the Springframework. It cover topics like Aspect Oriented Programming (AOP), persistence and transaction management, as well as different view technologies all related to Spring.

Each book of the series addresses a different user level. Although this one is meant for an intermediate audience, I think a beginner would have no problems. The book describes each concept depicted, in a brief, but adequate introduction. Almost 30 pages, for instance, are devoted to the concept of AOP, followed by it's Spring specific implementation - Spring AOP.

The book contains a lot of code, probably more than I've ever seen in any other book. Well, most of it is not really code, but XML, used to configure the Spring container. I still call it code though, cause the amount of XML configuration in a Spring application can be extensive. The fact that the book is full of it, is actually positive, because it shows you on the spot how to implement the concepts depicted. The Springframework is all about applying concepts declaratively through XML and the book make a good job pointing that out.

Building Spring 2 Enterprise Applications is written in a very readable manner. I actually enjoyed reading it, which is not very common, when it comes to programming books. The code is also easy to read, which I think is important. I know how draggy it can be to rifle through extensive amount of other people's code.

After all the praises, I do have a couple of pain points. First of all the book suffers from the syndrome most framework related books do: they are out of date as soon as they hit the shelves. The book doesn't cover the latest release of the Springframework, which is currently 2.5.x. But I think that's not really a problem. All the concepts should be the same. However, there might be some differences in Springs implementations. What really bothers me is that fact that only JDBC is covered as a persistence strategy. I do realize that including JPA or iBatis probably would have raised the user level quite a bit. However, I think those frameworks and particularly their integration with Spring are important and shouldn't have been omitted. Last but not least, I think the level of the book is not quite intermediate - it's basic at most. One could argue that that's a good thing, but if you bought the book, expecting an intermediate level, you might be disappointed. I just think the book doesn't present enough best practices and coding idioms to be an intermediate level.

Overall I like the book, it's easy to read and a good reference to quickly recap on various topics or concept related to the Springframework.

4 comments:

Anonymous said...

Good review, thanks! A couple of questions though:

How does the book do compared to the free, excellent reference documentation? Would you say that you need a book at all?

Can you recommend a book about spring that also teaches concepts and best practices? I've got an EJB background and used only small parts of Spring so far. There are lots of books about Spring 1 but very few about Spring 2 ...

David Linsin said...

unmaintainable> How does the book do compared to the free, excellent reference documentation?

The book cannot keep up with the reference documentation. It's just not as up-to-date and extensive as the reference docs. However, what the book gives you is a compiled knowledge and experience of the authors. To me that's the reason why I read books, although I'm a big fan of online articles and tutorials.

I guess you don't need the book to get started with Spring. It's helpful though, because it provides a consistent example for all topics covered.

unmaintainable> Can you recommend a book about spring that also teaches concepts and best practices?

Best practises - unfortunately no. I'm thinking of reviewing either Spring 2.5 Recipes: A Problem-Solution Approach or Pro Java EE Spring Patterns: Best Practices and Design Strategies Implementing Java EE Patterns with Spring Framework, because they could potentially be what I'm looking for: a book which tells you how to do the stuff and why you should do it that way. As for the concepts of the Springframework, I can really recommend the the book reviewed above. It does a good job explaining the concepts, but doesn't go too deep.

We have Spring in Action 2nd Ed at work and my colleges tell me it's really good, but I haven't checked it out yet.

Anonymous said...

Looking forward to your review on Pro Java EE Spring Patterns: Best Practices and Design Strategies Implementing Java EE Patterns with Spring Framework

Anonymous said...

A bit old review, but very nice one nonetheless. I'm just starting up in Spring and was looking for a nice review before buying a book.

Will have to look around for more reviews though.

Thanks


com_channels

  • mail(dlinsin@gmail.com)
  • jabber(dlinsin@gmail.com)
  • skype(dlinsin)

recent_postings

loading...