Chapter 16. Aspect-Oriented Software Development with Java Aspect ComponentsRENAUD PAWLAK, LIONEL SEINTURIER, LAURENCE DUCHIEN, LAURENT MARTELLI, FABRICE LEGOND-AUBRY, AND GÉRARD FLORIN This chapter presents the Java Aspect Components (JAC) programming environment [10]. While the two primary goals of this framework are supporting dynamicity and distribution, JAC is nevertheless a general-purpose AOP environment, complete with a programming model, a design notation, and an API. Prior papers described the programming model [24] of JAC, its aspect composition mechanism [22], the first elements of our UML notation [21], and the architecture for distribution [23]. This article sums up the main features of JAC and describes in detail our UML notation. In Section 16.1, we introduce the JAC programming model, in Section 16.2, our UML notation, and in Section 16.3, the architecture of JAC for distribution support. Implementation details and performance measurements are provided in Section 16.4. Section 16.5 provides a comparison with other tools and closely related technologies. Finally, we conclude in Section 16.6. |