Alternative Object Organizations using Prototypes, Delegation and Split Objects
Astudillo R., Hernan
Shilling, John J.
MetadataShow full item record
Object-based (i.e. classless) models are very effective for elucidating requirements from users, and they support exploratory programming and rapid prototyping. On the other hand, class-based models are preferred to perform design and implementation, providing descriptive power and some types of error checking. We consider the evolution of object-based models into class-based production systems. One of the most difficult problems of this transition is the change from explicit description of individuals to implicit description of class instances. Reorganization support aims to make the system structures and properties evident and enforceable. Structural properties are useful to organize the code regardless of its meaning, and automated support can be enlisted to identify potential structures and properties, leaving the programmer with choice of alternative workspace organizations. We analyze the organization and management of classless objects, regarding the goals of redundancy elimination and consistency maintenance, and how these goals are complicated by the existence of two mechanisms of object creation, cloning and extension (split objects). We present a classification of sharing and extension patterns in terms of the two basic mechanisms, and argue for a metrics-based approach to incremental reorganization. Finally, we propose in detail a set of abstractions with increasing descriptive power and consistency requirements: groups (untyped descriptions of structure and inheritance), families (partially typed descriptions of objects structure and inheritance, with monomorphic typing and consistency maintenance), and types (fully typed descriptions of families interfaces, with polymorphic typing by subtyping and relating implementation hierarchy to typed interfaces).
Showing items related by title, author, creator and subject.
Harman, Graham; Crawford, Hugh; DiSalvo, Carl; Johnston, John; Stafford, Barbara; Thacker, Eugene (Georgia Institute of Technology, 2010-04-23)This lecture aims to place present-day object-oriented ontology (OOO) in historical context. The recent appearance of this movement in continental philosophy has led some to ask how it differs from the theories of objects ...
Coder, Ryan Daniel (Georgia Institute of Technology, 2016-05-19)Recognizing the increasingly congested and contested nature of space, this thesis contends that the fusion of small aperture, autonomous telescopes with Bayesian inference techniques can provide timely, actionable evidence ...
Rohling, Gregory Allen (Georgia Institute of Technology, 2004-11-19)This research augments current Multiple Objective Evolutionary Algorithms with methods that dramatically reduce the time required to evolve toward a region of interest in objective space. Multiple Objective Evolutionary ...