Browse Prior Art Database

Object-Oriented List Supervisors to Assimilate Procedural List Components

IP.com Disclosure Number: IPCOM000119322D
Original Publication Date: 1991-Jan-01
Included in the Prior Art Database: 2005-Apr-01
Document File: 2 page(s) / 80K

Publishing Venue

IBM

Related People

Griffin, SF: AUTHOR

Abstract

This article describes the design of an object-oriented program class, "ListSupervisor," which effectively assimilates a pre-existing, procedural based list service into an object-oriented list hierarchy. In object-oriented design, the implementation of application views of data is typically carried out by defining two distinct classes -- one that holds only the data to be manipulated by the application; and one that implements the user's view of the data. By separating the data, called a "model," from the code that will show a representation of the model, called a "view," the application may more readily add and alter views on the data. Once a clear definition of the data model has been completed, program developers may simultaneously develop different views on the data without knowledge of each other's work.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Object-Oriented List Supervisors to Assimilate Procedural List Components

      This article describes the design of an object-oriented
program class, "ListSupervisor," which effectively assimilates a
pre-existing, procedural based list service into an object-oriented
list hierarchy.  In object-oriented design, the implementation of
application views of data is typically carried out by defining two
distinct classes -- one that holds only the data to be manipulated by
the application; and one that implements the user's view of the data.
By separating the data, called a "model," from the code that will
show a representation of the model, called a "view," the application
may more readily add and alter views on the data.  Once a clear
definition of the data model has been completed, program developers
may simultaneously develop different views on the data without
knowledge of each other's work.

      Often, graphical operating systems provide the programmer with
user interface components to build applications.  In
non-object-oriented systems, such as OS/2* Presentation Manager*,
these services often mix the data being manipulated with the code
that provides the view on the data. For example, Presentation Manager
components which display lists contain both the data in the list and
the code to draw the list box, determine selection, scroll the data,
etc.  This presents a problem to the designer if the services of the
list component are required. Often, the designer must rewrite the
service in the object-oriented platform, because the procedural list
component cannot be assimilated into the class hierarchy.

      By defining a special "ListSupervisor" class, the existing list
services can be incorporated into the class hierarchy without
violating the principles of model/view separation.  An example is
necessary to sufficiently describe the design incorporated herein.
Consider a class...