Because of the way they cross module boundaries we say they crosscut the program structure .
Aspects are a new unit of software modularity that cleanly encapsulate crosscutting concerns.
AOP facilitates working with aspects by providing explicit mechanisms for programming first-class crosscutting modularities. Aspects make the structure of the crosscutting concerns more clear and easy to reason about. They also make the interaction between the crosscutting concerns and the primary modularity clear. All rights reserved.