Aspectj in Action: Practical Aspect-Oriented Programming

This is a practical guide to AOP and Aspect J. The re-usable code examples will enable quick implementation of functionality.*ApectJ enables AOP programming in Java by adding a few new language constructs.By using Java as the base language and creating a final system that is compatible with Java byte code specification, AspectJ passes on all the benefits of Java. *The use of Java as the base language also makes AspectJ a relatively easy language to learn. *Book is divided into three parts: Introduction, Examples and everyday situations in which to use. A software system is the realization of a set of concerns. One of the central premises of object-oriented programming is that each concern should be implemented as a separate module. However, there are certain system-wide concerns, such as logging, security, performance and so forth, that often need to be addressed in many, if not all of the modules. Consequently, the code to handle these system-wide concerns may be mixed in with the core logic of a huge number of modules, resulting in lower productivity, poor quality and systems that are hard to evolve.Aspect-oriented programming overcomes these problems by modularizing the system-wide concerns. AspectJ enables AOP programming in Java by adding a few new language constructs. By using Java as the base language and creating a final system that is compatible with Java byte code specification, AspectJ passes on all the benefits of Java. The use of Java as the base language also makesd AspectJ a relatively easy language to learn.