Speaker
J. Hrivnac
(LAL)
Description
Aspect-Oriented Programming (AOP) is a new paradigm promising to allow
further modularization of large software frameworks, like those developed
in HEP. Such frameworks often manifest several orthogonal axes of contracts
(Crosscutting Concerns - CC) leading to complex multidepenencies. Currently
used programing languages and development methodologies don't allow to easily
identify and encapsulate such CC. AOP offers ways to solve CC problems by
identifying places where they appear (Joint Points) and specifying actions to
be applied at those places (Advices). While Aspects can be added in principle
to any programming paradigm, they are mostly used in Object-Oriented
environments. Thanks to wide acceptance and rich object model, most
Aspect-Oriented toolkits have been developed for Java language. Probably the
most used AOP language is AspectJ.
The presentation will demonstrate using AspectJ language to solve several common
HEP Crosscutting Concerns from simple cases (like logging or debugging) to
complex ones (like object persistency, data analysis or graphics).
Primary author
J. Hrivnac
(LAL)