by Dr. M. Halfpap
Zurück zur Hauptseite
Klassische Prog. : Programme ergreifen die Initiative und rufen Teile der
Laufzeitprogramme auf
Objektorientiert : REAKTION auf sog. "Nachrichten" vom Benutzer, System oder
anderen Programmen: CALL-BACK Strukturen
Die Objekte tauschen miteinander "Nachrichten" aus, auf die sie reagieren. Ihre
Reaktion wird durch ihre METHODEN beschrieben. Weiter können sie auch einen
ZUSTAND besitzen ( z.B. die x,y - Position oder sichtbar / unsichtbar ).
Die sog. INSTANZVARIABLEN beschreiben den internen Zustand, der interne private
Zustand wird auch mit ENCAPSULATION, dem Prinzip der Kapselung beschrieben.
Die Idee ist nun, daß dieser Zustand nur durch das Objekt selbst mit Hilfe sei-
ner Methoden verändert werden kann. Wie allg. bei modularer Programmierung ist
die strikte Trennung zwischen IMPLEMENTATION und DEFINITION vorgesehen.
Weitere wichtige Begriffe :
Kapselung Vereinigung der Daten und der sie verändernden Methoden in
einer Struktur
Klasse alle Objekte, die gleiche Methoden besitzen, sind zu einer
Klasse zusammengefaßt
Polymorphie Objekte unterschiedlicher Klassen können auf Nachrich-
ten unterschiedlich reagieren, z.B. kann die Methode
SHOW je nach Button, Fenster oder Hauptfenster unter-
schiedliche Wirkungen zeigen
Klassenhierarchie und
Vererbungsprinzip durch den Begriff der Oberklasse mit Instanzvariablen
und Methoden kommt es zu dem Begriff der Vererbung.
Man kann ein Objekt einer Oberklasse ergänzen und
erweitern zu einem anderen Objekt, das aber dennoch die
Methoden und Instanzvariablen behält.
Die Prozeduren und Funktionen, also die Methoden eines
Moduls bzw. Objektes werden also mitvererbt, können
aber auch überschrieben werden wie beim Prinzip der
globalen - lokalen Variablen.
Eine Klasse kann angesehen werden als unmittelbare Verallgemeinerung eines
(norm.) Datentyps, klassisch ist die Unterscheidung zwischen TYP und VARIABLE,
jetzt zwischen KLASSE und OBJEKT.
Beim Programmieren eines Objektes sollte man so vorgehen :
- Suche nach einer Klasse, die eigenen Forderungen am nächsten kommt
- Bilden einer Unterklasse
- Formulieren der Differenzen zur Oberklasse ( REUSABILITY statt
Reprogrammierung, d.h. produktiver Zuwachs )