Keywords: Distribution specification, Aspect-Oriented Programming, Object-Oriented Design
Abstract: It is generally accepted that object-oriented programming and distributed computing fit together well, because distribution can be easily integrated into object-oriented systems in a transparent manner. But while transparency is desirable with respect to code readability and reusability, it can cause severe performance problems, because the programmer loses control over distribution. This paper presents an approach to solving this conflict with Aspect-Oriented Programming: The basic functionality of the program can be formulated in a completely distribution-transparent manner, whereas the programmer retains complete control over the distribution through the aspect language D2AL. D2AL differs from other aspect languages in that it is based on the design of the application, not on its implementation. We show that using the design as the basis of D2AL gives access to abstractions that greatly increase the expressiveness, as compared to an implementation-based aspect language.