Subject-oriented Programming - Relationship To Aspect-oriented Programming

Relationship To Aspect-oriented Programming

The introduction of aspect-oriented programming in 1997, raised questions about its relationship to subject-oriented programming, and about the difference between subjects and aspects. These questions were unanswered for some time, but were addressed in the patent on Aspect-oriented programming filed in 1999 in which two points emerge as characteristic differences from earlier art:

  • the aspect program comprises both a) a cross-cut that comprises a point in the execution where cross-cutting behavior is to be included; and b) a cross-cut action comprising a piece of implementation associated with the cross-cut, the piece of implementation comprising computer readable program code that implements the cross-cutting behavior.
  • the aspect transparently forces the cross-cutting behavior on object classes and other software entities

In the subject-oriented view, the cross-cut may be placed separately from the aspect (subject) and the behavior is not forced by the aspect, but governed by rules of composition. Hindsight makes it also possible to distinguish aspect-oriented programming by its introduction and exploitation of the concept of a query-like pointcut to externally impose the join-points used by aspects in general ways.

In the presentation of subject-oriented programming, the join-points were deliberately restricted to field access and method call on the grounds that those were the points at which well-designed frameworks were designed to admit functional extension. The use of externally imposed pointcuts is an important linguistic capability, but remains one of the most controversial features of aspect-oriented programming.

Read more about this topic:  Subject-oriented Programming

Famous quotes containing the words relationship to, relationship and/or programming:

    Artists have a double relationship towards nature: they are her master and her slave at the same time. They are her slave in so far as they must work with means of this world so as to be understood; her master in so far as they subject these means to their higher goals and make them subservient to them.
    Johann Wolfgang Von Goethe (1749–1832)

    But the relationship of morality and power is a very subtle one. Because ultimately power without morality is no longer power.
    James Baldwin (1924–1987)

    If there is a price to pay for the privilege of spending the early years of child rearing in the driver’s seat, it is our reluctance, our inability, to tolerate being demoted to the backseat. Spurred by our success in programming our children during the preschool years, we may find it difficult to forgo in later states the level of control that once afforded us so much satisfaction.
    Melinda M. Marshall (20th century)