תקציר
Overly regular module interfaces in object-oriented languages hamper modularization of complex applications. Aspect-oriented programming tackles this problem by allowing module boundaries to span and partition classes in a flexible manner. However, not without a cost. In order to achieve this flexibility, common modularity mechanisms, such as encapsulation and external composition, are lost. The ability to separately compile or reason about a modular unit is also compromised. Combining aspects and modules restores these properties to the aspect-oriented programming language. In restoring the properties, the programming units---Aspectual Collaboration in our case---become more verbose: Encapsulation requires that all collaborations describe their interface to the rest of the application; and composition of collaborations similarly requires that each module's interface be reconciled with the other. We give a brief introduction to Aspectual Collaborations, however, the main part of the paper covers a comparison study of AspectJ, Hyper/J, and Aspectual Collaborations in solving an AOP programming challenge. We derive the comparative cost of using encapsulation.
| שפה מקורית | אנגלית |
|---|---|
| מקום הפרסום | Boston, MA 02115 |
| סטטוס פרסום | פורסם - 1 דצמ׳ 2001 |
טביעת אצבע
להלן מוצגים תחומי המחקר של הפרסום 'Aspects and Modules Combined'. יחד הם יוצרים טביעת אצבע ייחודית.פורמט ציטוט ביבליוגרפי
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver