Universität Ulm, Fakultät für Mathematik und Wirtschaftswissenschaften, SAI

WS 2000/01 || Entwicklung objekt-orientierter Bibliotheken || Beispiele

Rooms


UserClient Cmds Maintenance RemoteRooms TopologyServer StandardRooms StandardDoors Rooms

Dieses Beispiel entstand anläßlich der JMLC 1994 als erste etwas komplexere Demonstration des Ulmer Oberon-Systems. Die Autoren, Andreas Borchert und Martin Hasch, konnten damit belegen, daß -- trotz damals schon veralteter Hardware -- auch mit einer strikt auf portablen Techniken beruhenden Bibliothek vernünftige Antwortzeiten bei einem verteilten System zu erreichen waren.

Cmds
Zeilenorientierter Kommando-Interpreter.

Collections

LinearLists

Maintenance
Abstraktion für Prozeßkontrolle. Wird benutzt, um Programme (ggf. ferngesteuert) "sanft", d.h. mit einer geringen Verzögerung, zu beenden.

PrintableObjects
blieb unverändert.

RemoteRooms
Unterstützung von RemoteObjects für die Abstraktion Rooms.

Rooms
Abstraktion für ein einfaches MUD.

StandardDoors
Standardimplementierung von Objekten des Typs Rooms.Door.

StandardRooms
Standardimplementierung von Objekten des Typs Rooms.Room.

TopologyServer
Dämon für "statisch" definierte Teile (Räume und Verbindungen) des MUD. Namen, Beschreibungen etc. werden aus der Eingabe gelesen. Der Anschluß an fremde Teile der Topographie erfolgt über einen gemeinsamen Objekt-Namensraum.

UserClient
Dämon für die Interaktion von Benutzern mit dem MUD. Verfügbare Einstiegspunkte werden aus dem besagten Namensraum bezogen. Ein- und Ausgabe folgen einem simplen textbasierten Protokoll, auf das eine komfortablere Benutzerschnittstelle aufsetzen kann.

Eine solche Schnittstelle ist auf einigen unserer Rechner als tcl-Skript rooms installiert.

Näheres zu den Abstraktionen für Namensräume und Autorisierung ist u.a. in dieser Arbeit zu finden.

Die Quellen stehen als Shell-Archiv zur Verfügung.


WS 2000/01 || Entwicklung objekt-orientierter Bibliotheken || Beispiele

Andreas Borchert, 29. Januar 2001