The Tower of
Whereas the methodology of Imperative or Procedural languages is to pass data through programs, the methodology of Object Oriented languages is to pass programs through the data.
Every object in the domain of is a self-contained element containing its own data sub-components and applicable operations (methods). I.e. an object is an instantiation of a type, known as a class in OO.
True OO "programs" consist of messages that are passed from one object to another that cause actions (methods) to be followed, change the state of the object, and initiate other messages.
Internally object methods (applicable operations) are generally procedural-style programs.
Objects can readily mirror the organization of physical systems that they emulate or drive, though not necessarily computers.
Our examples: Simula, Smalltalk, Java, C++, Ada**
** C++ and Ada are not PURE object oriented languages, rather they are hybrids between procedural and object oriented.
Last Updated 03/22/2000
J.A.N. Lee, 2000