NobleBlocks

Research indexJournal article

Object-oriented composition untangled

Ostermann, Mezini

1 Oct 2001

DOI10.1145/504282.504303

Abstract

No PDF here

The full text is at the publisher

You can read the abstract here, or open it at the publisher.

Object-oriented languages come with pre-defined composition mechansims, such as inheritance, object composition, or delegation, each characterized by a certain set of composition properties, which do not themselves individually exist as abstractions at the language level. However, often non-standard composition semantics is needed, with a mixture of composition mechanisms. Such non-standard semantics are simulated by complicated architectures that are sensitive to requirement changes and cannot easily be adapted without invalidating existing clients. In this paper, we propose compound references, a new abstraction for object references, that allows us to provide explicit linguistic means for expressing and combining individual composition properties on-demand. The model is statically typed and allows the programmer to express a seamless spectrum of composition semantics in the interval between object composition and inheritance. The resulting programs are better understandable, due to explicity expressed design decisions, and less sensitive to requirement changes.

Discussion

Citations

42Cited by
33References

Topics

More

Suggest a correction or report