J. Dowling et al., Using reflection to support dynamic adaptation of system software: A case study driven evaluation, LECT N COMP, 1826, 2000, pp. 169-188
A number of researchers have recently suggested the use of reflection as a
means of supporting dynamic adaptation of object-oriented software especial
ly systems software including both middleware and operating systems. In ord
er to evaluate the use of reflection in this context we have implemented a
resource manager that can be adapted to use different resource management s
trategies on behalf of its clients using three distinct technologies: desig
n patterns, dynamic link libraries, and reflection. In this paper we report
on this experiment and compare the three approaches under performance, abi
lity to separate functional code from code concerned with adaptation, and p
rogramming effort. We conclude that although the overhead of using reflecti
on may be high, reflection offers significant advantages in terms of the ab
ility to separate functional and adaptation code.