For any intermediate (2+ years) developer audience
AspectJ is the first (and, arguably, the gold standard) of "aspect-oriented" programming languages. Developed to run on the Java Virtual Machine and be entirely compatible with other Java products and libraries, AspectJ brought an entirely new way of thinking about how to partition closely-related code across an inheritance hierarchy--"crosscutting concerns"--into sharp and clear focus. As a result, it marked a revolution in the way we think about code, and one that continues to provide some powerful design and reuse constructs to Java.
Published on 02 June 2023