Proceedings ArticleDOI
JAsCo: an aspect-oriented approach tailored for component based software development
Davy Suvee,Wim Vanderperren,Viviane Jonckers +2 more
- pp 21-29
Reads0
Chats0
TLDR
A new "aspect-enabled" component model, which contains build-in traps that enable to interfere with the normal execution of a component, is proposed that is backward-compatible with the Java Beans component model.Abstract:
In this paper we introduce a novel aspect oriented implementation language, called JAsCo. JAsCo is tailored for component based development and the Java Beans component model in particular. The JAsCo language introduces two concepts: aspect beans and connectors. An aspect bean describes behavior that interferes with the execution of a component by using a special kind of inner class, called a hook. The specification of a hook is context independent and therefore reusable. A connector on the other hand, is used for deploying one or more hooks within a specific context. To implement the JAsCo language, we propose a new "aspect-enabled' component model, which contains build-in traps that enable to interfere with the normal execution of a component. The JAsCo component model is backward-compatible with the Java Beans component model. Furthermore, the JAsCo component model allows very flexible aspect application, adaptation and removal at run-time. The necessary tool support for the JAsCo approach has been implemented. In addition, we present a performance assessment of our current implementation.read more
Citations
More filters
Essential AOP: The A Calculus
TL;DR: A calculus that models essential AOP, both simpler and more general than existing formalizations, and includes type ranges, an intuitive and concise alternative to explicit type variables that allows advice to be polymorphic over intercepted methods.
Journal ArticleDOI
There are no Aspects
TL;DR: It is claimed that a specialized aspect module is not required and a seamless transition from design to implementation is achieved because no specialized aspect modules exist both at the design and implementation level.
Jumping Aspects Revisited
TL;DR: An extension of the JAsCo aspectoriented programming language for declaratively specifying a protocol fragment pointcut is proposed, which is equivalent to a finite state machine and claims that stateful aspects benefit from run-time weaving and therefore introduces theJAsCo run- time weaver.
Book ChapterDOI
Component-Based open middleware supporting aspect-oriented software composition
Bert Lagaisse,Wouter Joosen +1 more
TL;DR: DyMAC (Dynamic Middleware with Aspect-Components), a component and aspect-based middleware framework that supports component-based development of middleware services and offers the power of aspect-oriented composition to connect the application logic to themiddleware services.
Journal ArticleDOI
AspectC++: An integrated approach for static and dynamic adaptation of system software
TL;DR: This work presents an adaptation approach that is based on a sophisticated combination of static and dynamic aspect weaving for aspects written in AspectC++ that facilitates the incremental evolution and deployment of system software that has to be ''always on''.
References
More filters
Journal ArticleDOI
On the criteria to be used in decomposing systems into modules
TL;DR: In this paper, the authors discuss modularization as a mechanism for improving the flexibility and comprehensibility of a system while allowing the shortening of its development time, and the effectiveness of modularization is dependent upon the criteria used in dividing the system into modules.
Book
Component Software: Beyond Object-Oriented Programming
TL;DR: Anyone responsible for developing software strategy, evaluating new technologies, buying or building software will find Clemens Szyperski's objective and market-aware perspective of this new area invaluable.
Book
On the criteria to be used in decomposing systems into modules
TL;DR: In this article, the authors discuss modularization as a mechanism for improving the flexibility and comprehensibility of a system while allowing the shortening of its development time, and the effectiveness of a modularization is dependent upon the criteria used in dividing the system into modules.
Proceedings ArticleDOI
Dynamic weaving for aspect-oriented programming
TL;DR: PROSE (PROgrammable extenSions of sErvices), a platform based on Java which addresses dynamic AOP and allows aspects to be woven, unwoven, or replaced at run-time.
Book ChapterDOI
JAC: A Flexible Solution for Aspect-Oriented Programming in Java
TL;DR: This paper presents JAC (Java Aspect Components), a framework for aspect-oriented programming in Java that uses the Javassist class load-time MOP and does not require any language extensions to Java.