Using Reflection for Implementing ICOM, an Interoperable Common Object Model


TR Number




Journal Title

Journal ISSN

Volume Title


Department of Computer Science, Virginia Polytechnic Institute & State University


Reuse of already developed object-oriented software components is reduced when software is written in different object-oriented languages, or when it is not easy to relocate the software components from one machine to another machine. Software development in a distributed and heterogeous environment is a solution to this problem. Several common object models have been defined for software development in a distributed and heterogeous environment. Most of the existing common object models do not agree upon a common set of object-oriented features. These models are weak (i.e., they have only a modest subset of object-oriented features) because they support both object-oriented and non object-oriented languages and mapping of the model into non object-oriented languages is a complex problem. In this paper an interoperable common object model (ICOM) that supports statically typed object-oriented languages is presented. The ICOM model has an extensive set of object-oriented features that uses reflection techniques to support the model. The architecture of ICOM framework is described and a detailed account on how reflection is used is given. A prototype involving dynamic method binding feature is explained in detail.