Weiter:
Sprachen und Programmierumgebungen
Übersicht:
Die Versprechen der objektorientierten Programmierung
Zurück:
Objektorientierung als Analysemittel für Software

Benutzerschnittstelle

In den oben zitierten Konzepten von Smalltalk spielt die Benutzerschnittstelle eine zentrale Rolle. Objekte sollen auf dem Bildschirm möglichst direkt manipuliert werden können. Dies wird realisiert, indem den internen Objekten des Programms andere Objekte zur Ein- und Ausgabe zugeordnet werden [2]. Wenn beispielsweise ein Adress-Datensatz aus Name, Straße, Postleitzahl und Ort besteht, dann gehört zu dessen Ein- und Ausgabe ein Objekt, das diese vier Daten auf dem Bildschirm darstellt und auf Benutzereingaben reagiert.

Die Kommunikation zwischen dem Kern-Objekt und dem Bildschirm-Objekt (das display-object, view-object oder in [2] verwirrenderweise inset heißt) findet in einer anwendungsorientierten Sprache statt. Im Prinzip sagt das Kernobjekt dem Anzeigeobjekt ,,stelle mich dar`` und übergibt ihm die dazu nötigen internen Daten. Das Anzeigeobjekt wiederum meldet dem Kernobjekt eventuelle Benutzeroperationen.

Diese Idee wurde in Smalltalk auch für die Klassenhierarchie und die Programmierung verwirklicht, was tatsächlich zu einer klaren und leistungsfähigen Benutzerschnittstelle führte.

Viele späteren Benutzerschnittstellen, vor allem die verschiedenen MS-Windows-Versionen, verletzen diese ,,Philosophie``. Mir ist keine Programmierumgebung bekannt, die dieses einfache Konzept wirksam unterstützt. Für die Schule bedeutet das, dass die gängigen Umgebungen entweder die Programmierung der Benutzerschnittstelle zu einer lästigen Qual machen oder ins andere Extrem verfallen und die Benutzerschnittstelle in den Mittelpunkt rücken. Das eigentliche Programm findet dann in kleinen Codeschnipseln statt, die irgendwo in den Routinen der Benutzeroberfläche verstreut sind. Von den klaren Konzepten der Objektorientierung ist nur noch die unusual terminology geblieben.


Weiter:
Sprachen und Programmierumgebungen
Übersicht:
Die Versprechen der objektorientierten Programmierung
Zurück:
Objektorientierung als Analysemittel für Software

Klaus Fueller
Tue May 25 08:52:59 MEST 1999