The Object-Oriented Design Paradigm

Definitions

  • class: an abstract framework for a set of items; example: "image"
  • object: an instance of a class; example: a specific image
  • property: a feature or attribute of the objects in a class; usually has values; example: "size" (values: 1in x 1in, etc), "color" (values: blue, red, etc)
  • method: an action that can be performed on objects of a class; example: "save", "rescale"
  • event: an external event that happens to objects of a class and can trigger methods to be invoked; example: "click on"

    Class- or type-hierarchy

  • classes form a hierarchy based on the ISA relation
  • inheritance: classes inherit properties, methods and events from their parents in the class hierarchy
  • two classes are in ISA relation if all objects of the first class are also objects of the second class; for example: vector-graphic ISA image; the ISA relation usually corresponds to a normal English sentence using "is a"; for example: "a vector graphic is an image"
  • the ISA relation must be distinguished from the HAS relation that holds between objects and their properties; examples: image HAS size, image HAS color

    Example

    An example of object-oriented design is the document object model (DOM) that describes elements of webpages (such as link, image, table, text), their properties (target, name, font), their methods (load, save) and their events (click on, mouse over).