Infoscapes visuelles Entwicklungs-Tool

Fresco erstellt dreistufige Anwendungen in Java

27.06.1997

Die Fresco-Suite setzt sich aus drei Elementen zusammen: dem "Fresco Designer", dem "Fresco Information Server" und den sogenannten "Adaptern", hinter denen sich nichts anderes verbirgt als Datenbanktreiber.

Beim Designer handelt es sich, wie schon der Name vermuten läßt, um eine visuelle Programmierumgebung, die völlig in Java geschrieben wurde. Laut Hersteller läuft sie problemlos auf den Virtuellen Maschinen (VM) von Microsoft, Symantec oder Sun. Infoscape betont zwar, daß sich der Designer auch als Applet in einem Browser starten läßt, jedoch können auf Grund von Javas Sicherheitsmechanismen die erstellten Anwendungen dann nicht abgespeichert werden. Java-Applets haben bis dato keinen Zugriff auf lokale Ressourcen.

Nach dem Start der Entwicklungsumgebung kann sich der Programmierer sogenannter Module bedienen, die verschiedene Aufgaben beim Applikationsdesign erfüllen. Der eigentliche GUI-Builder ist das "Form"-Modul. Mit seiner Hilfe läßt sich im Drag-and-drop-Verfahren die Benutzer-Schnittstelle der Anwendung gestalten. Dabei übertrifft er durch die hohe Anzahl an grafischen Elementen die Möglichkeiten des Java-eigenen Abstract Window Toolkit (AWT) bei weitem. Zusätzlich können Programmierer eigene Komponenten integrieren, bevorzugt in Form von Javabeans. Von diesen reichhaltigen Gestaltungsmöglichkeiten profitiert das Aussehen der erstellten Ein- und Ausgabemasken, das sich von der dürftigen Erscheinung der meisten Java- oder gar HTML-Front-ends abhebt.

Grundlage für Frescos GUI-Werkzeug ist die "Fresco Engine", eine Sammlung von mehr als 500 Java-Klassen, die in Form von Bytecode vorliegen. Auf diese Klassen greifen die erstellten Applets zurück, wenn sie ausgeführt werden. Jede mit Fresco entworfene Applikation beruht auf dieser Engine und einer dazugehörigen Initialisierungsdatei, in der die notwendigen Konfigurationsinformationen abgelegt sind. Allerdings hat diese Architektur den Nachteil, daß das gesamte Klassenarchiv in der Größe von 900 KB auch nach geringfügigen Änderungen vom Netz geladen werden muß. Im Intranet mag dies kein Problem sein, aber im WWW kann dieser Vorgang geraume Zeit in Anspruch nehmen.

Hier hätte sich Infoscape noch mehr auf die Stärken von Java besinnen sollen. Da diese Programmiersprache für das Internet konzipiert wurde, kann sie benötigte Klassen je nach Bedarf einzeln über das Netz nachladen.

Gleichzeitig mit dem Entwurf des Front-ends muß der Entwickler festlegen, wie die Anwendung mit der Datenbank kommunizieren soll. Dafür steht ihm das "Model"-Modul zur Verfügung. Nachdem er die gewünschte Datenbank ausgewählt hat - zum Lieferumfang gehören momentan Treiber für Oracle, Sybase, Informix und Open Database Connectivity (ODBC) - stellt die Software alle Tabellen und ihre Relationen grafisch dar. Wer beispielsweise eine Einfügeoperation realisieren möchte, muß lediglich die entsprechende Tabelle mit der Maus auf ein passendes Texteingabefeld ziehen. In einem Optionsfenster kann der Entwickler anschließend bestimmen, daß der später in dieses Feld eingetippte Text in die Datenbank aufgenommen wird. Ähnlich geht man bei Suchanfragen vor, wo zusätzlich noch die Ergebnisanzeige gestaltet werden muß. Auf SQL-Kenntnisse sind die Anwender nur angewiesen, wenn sie Suchanfragen optimieren möchten.

Ist eine Anwendung fertig, generiert der Designer auf Mausklick den benötigten HTML- Code, mit dem die Java-Anwendung heruntergeladen werden soll.

Mit Fresco erstellte Anwendungen sind dreistufig, die am Client ablaufenden Applets kommunizieren daher nicht direkt mit der Datenbank, sondern nehmen den Weg über den von Infoscape mitgelieferten Fresco Information Server. Im Unterschied zu Web-basierten Datenbankanwendungen der ersten Generation, die das Common Gateway Interface (CGI) oder ähnliche Schnittstellen nutzen, umgeht Infoscapes Architektur den Web-Server. Dieser beschränkt sich darauf, das Client-Modul herunterzuladen. Anschließend nimmt dieses über ein proprietäres Protokoll direkt Verbindung mit dem Applikations-Server auf. Infoscape verspricht deswegen bessere Skalierbarkeit und höhere Performance der Anwendungen. Wegen der besonderen Form des Informationstransfers werden nur relevante Daten übertragen. Das aufwendige Verschicken von HTML-Formularen, wie es im Web zumeist noch üblich ist, entfällt ebenso wie das Übertragen von Layoutinformationen. Der Client, der sich vollständig um die Darstellung der Informationen kümmert, kann daher einzelne Datenbankfelder gezielt aktualisieren, ohne - wie bei HTML - den gesamten Bildschirm neu aufbauen zu müssen.

Auf Wunsch kann der Server den Datenverkehr auch über eine Firewall abwickeln. Eine spezielle Erweiterung wird von Infoscape zur Verfügung gestellt.

Die gesamte Suite kostet 4950 Dollar. Im Preis enthalten sind zwei Entwicklerlizenzen, eine Lizenz für den Infoscape Server mit 50 parallelen Zugriffen sowie der benötigte Datenbankadapter. Eine zeitlich begrenzte Testversion ist unter http://www.infoscape.com erhältlich. Dort findet sich auch ein ausführliches Online-Tutorial, das alle wichtigen Merkmale von Fresco vorstellt.

*Thomas Nitsche arbeitet als freier Autor in München.