Tuesday, October 06, 2009
I have finally finished reading Spring 2.5 Aspect Oriented Programming by Massimiliano Dessì. PACKT Publishing sent a copy of this book to me many weeks ago and I finally found enough time to finish reading the book this weekend. This book is a great resource for anyone looking for a very detailed look into Spring 2.5's Aspect Oriented Programming support. There are plenty of real world examples and code snippets that make understanding the topic easier for mid to senior level Java developers who are already familiar with the Spring Framework and its conventions. The author not only addresses the "how-to" questions, but he also spends time answering the "why" questions. This is very important because many people have an understanding of Aspect Oriented programming, but struggle to find valid cases where it fits into a project.
Chapter 1, Understanding AOP Concepts, discusses code tangling or coupling, AOP inside the IoC container and configuration.
Chapter 2, Spring AOP Components, addresses the key Spring components; Aspects, Pointcuts, Advice, Joinpoints and Advisors.
Chapter 3, Spring AOP Proxies, takes a look into how AOP is possible with Spring. This chapter discusses how AOP is realized and how crosscutting is possible within a Spring project.
Chapter 4, AspectJ Support, takes a look at how Java 5 and AspectJ's annotation support makes AOP even easier.
Chapter 5, Design with AOP, looks into common design decisions for concurrency, caching and security that involves AOP solutions.
Chapter 6, Three-tier Spring Application, Domain Driven Design, sets up chapter 7 with a sample DDD application.
Chapter 7, Three-tier Spring Application, Tests and AOP, dives into how AOP fits into the development of the example created in chapter 6.
Chapter 8, Develop with AOP Tools, puts together the rest of the pieces; the IDE, application server and database to come full circle. So, not only do you learn the technology, but at the end you have a real world example of AOP in practice.
Overall, Spring 2.5 Aspect Oriented Programming is great book that takes a detailed look at Spring 2.5's AOP support.