The object model of programming is based upon the following
two basic principals (due to Alan Kay a designer of Smalltalk):
- "Everything we can describe can be represented by the recursive
composition of a single kind of behavioural building
block that hides its combination of state and process inside itself
and can be dealt with only through the exchange of messages"
- Objects cna be considered as the manifestation of
ideas or concepts.
Note how this encapsulation idea is more abstract than
the "sequence, choice, iteration" model of structured
programming. Because it is more abstract it is more powerful.
The consequences of the object view are incarnated in the following
- Objects can be created and they persist until they are
destroyed. The notion of an object implies persistence over some
finite time and the potential of indefinite persistence.
- Because it encapsulates state and process (methods), an object
is potentially the locus of a thread of control; that is it is potentially
active concurrently with other objects.
- Objects are autonomous. The object receiving a message is
responsible for invoking the correct process or rejecting the message.
This implies dynamic typing. From the sender's viewpoint the
type of object receiving the message may be only partially determined
and may change dynamically. This does not mena that objects themselves
change type only that objects of different types may substitute
for one another.
The Object Oriented User Interface OOUI is
a method of incorporating the object view of the world into
the construction of a user interface. By narrowing the cognitive gap
between the design and the implementation it tries to simplify
the process of constructing the interface.
Return to GUI home page.
Last Changed: 24 April 1995