Aspect-oriented Programming - Join Point Models

Join Point Models

The advice-related component of an aspect-oriented language defines a join point model (JPM). A JPM defines three things:

  1. When the advice can run. These are called join points because they are points in a running program where additional behavior can be usefully joined. A join point needs to be addressable and understandable by an ordinary programmer to be useful. It should also be stable across inconsequential program changes in order for an aspect to be stable across such changes. Many AOP implementations support method executions and field references as join points.
  2. A way to specify (or quantify) join points, called pointcuts. Pointcuts determine whether a given join point matches. Most useful pointcut languages use a syntax like the base language (for example, AspectJ uses Java signatures) and allow reuse through naming and combination.
  3. A means of specifying code to run at a join point. AspectJ calls this advice, and can run it before, after, and around join points. Some implementations also support things like defining a method in an aspect on another class.

Join-point models can be compared based on the join points exposed, how join points are specified, the operations permitted at the join points, and the structural enhancements that can be expressed.

Read more about this topic:  Aspect-oriented Programming

Famous quotes containing the words join, point and/or models:

    “We become male automatically because of the Y chromosome and the little magic peanut, but if we are to become men we need the help of other men—we need our fathers to model for us and then to anoint us, we need our buddies to share the coming-of-age rituals with us and to let us join the team of men, and we need myths of heroes to inspire us and to show us the way.”
    —Frank Pittman (20th century)

    “I stand here tonight to say that we have never known defeat; we have never been vanquished. We have not always reached the goal toward which we have striven, but in the hour of our greatest disappointment we could always point to our battlefield and say: “There we fought our good fight, there we defended the principles for which our ancestors and yours laid down their lives; there is our battlefield for justice, equality and freedom. Where is yours?””
    —Anna Howard Shaw (1847–1919)

    “The parents who wish to lead a quiet life I would say: Tell your children that they are very naughty—much naughtier than most children; point to the young people of some acquaintances as models of perfection, and impress your own children with a deep sense of their own inferiority. You carry so many more guns than they do that they cannot fight you. This is called moral influence and it will enable you to bounce them as much as you please.”
    —Samuel Butler (1835–1902)