Object-oriented programming with flavors
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Using role components in implement collaboration-based designs
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Object-oriented framework and product lines
Proceedings of the first conference on Software product lines : experience and research directions: experience and research directions
Mixin-Based Programming in C++
GCSE '00 Proceedings of the Second International Symposium on Generative and Component-Based Software Engineering-Revised Papers
Implementing Layered Designs with Mixin Layers
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
Adaptable Components for Software Product Line Engineering
SPLC 2 Proceedings of the Second International Conference on Software Product Lines
Hi-index | 0.00 |
The concept of mixin programming has emerged as an important implementation technique in the context ol software reuse and software productivity. In mixin based programming classes are defined which support particular roles or capabilities, which may require to be attached to a number of other classes. Mixin classes can be composed dynamically so that composite objects with differing combinations of roles and capabilities may be created without redundancy. Implementing the mixin concept in C++ is straightforward, using the parameterized inheritance capabilities provided by C++ templates. In standard Java it is not possible to use this approach because Java does not currently provide templates. But the Java language has other powerfull facilities, of which one is reflection. In this paper we outline an approach to mixin programming in Java, which is subject to ongoing development and which is based on exploiting Java's reflection capabilities.