Print
AOP

Maybe this is not the best place to learn what AOP is

anyway, let's try and birefly do it the FAQ way...

Can you summarize AOP in a short sentence?

I can try. AOP proposes a new modularization unit, called aspect, that deals with an application's crosscutting concerns.

What are crosscutting concerns?

I'm not sure there is consensus on this, but AFAIK concerns are basically things you need to worry about when building an application. Crosscutting concerns are issues that need to be dealt with (e.g. users must authenticate) and that are related to many (if not all) of the existing decomposition units (i.e. classes).

What's the basic AOP jargon?

Let's do it the AspectJ way:

  • weaver: the guy that's going to get your base code and aspects (rememeber, this new modularization units you have already defined) and weaves them together, so that you get a nice, working system, that deals with all sorts of concerns.
  • joinpoint: a given moment during program execution where the weaver is able to do its job.
  • pointcut: basically a predicate that defines a set of joinpoints.
Powered by Atlassian Confluence