A programming paradigm that separates cross-cutting concerns (like logging, security, or transactions) from business logic by encapsulating them into aspects that can be applied across multiple parts of an application. It uses techniques like method interception to weave aspects into the main program flow.
Developed by Gregor Kiczales at Xerox PARC in the 1990s, with AspectJ being the first major implementation. The term 'aspect' refers to concerns that cut across multiple modules, like how security affects many different parts of an application.
Try Another Word