kramann.info
© Guido Kramann

Login: Passwort:










13 Autogui - automatisches Generieren einer GUI in Java

Die nachfolgenden Programme sind unter der GPL-Lizenz veröffentlicht (GNU General Public License).

The following programs are published under GPL license (GNU General Public License).

Copyright © 2011 Guido Kramann

  • Es soll ein Programm entwickelt werden, das aus einer Reihe gegebener Klassen automatisch eine grafische Oberfläche generiert.
  • Die Klassen sollten zuvor soweit funktionstüchtig sein, dass sie als Konsolenprogramme arbeiten können.
  • Mit Hilfe einer Klasse mit dem Namen Main wird die Anwendung als Konsolenprogramm gestartet.
  • Bestimmte Konventionen bei der Verwendung von Attributen und Namensgebung der Methoden, sowie bei der Gestaltung von Main sollten getroffen werden, um die automatische Generierung zu unterstützen.
  • Haupttechnik bei der automatischen GUI-Generierung ist Introspektion mit Hilfe des Pakets reflect (verfügbar über import java.lang.reflect.*;).
  • In vielen Anwendungen im Bereich Simulationstechnik und Optimierung gibt es eine Klassenhierarchie, bei der immer ein Objekt der Unterklasse bei einem der Oberklasse registriert wird.
  • Damit unterschiedliche Objekttypen registriert werden können, sollten sie eine gemeinsame Oberklasse haben.
  • Beispiel: Ein Simulationsmodell wird bei einem Integrator registriert, dieser bei einem Simulationsprogramm, dieses bei einer Gütefunktion und letztere bei einem Optimierer.
  • Eine spezielle Ausprägung dieser Kette könnte sein: PIDgeregelterAntrieb, RungeKuttaIntegrator, Testsimulator, IntegriereRegeldifferenz, GenetischerOptimierer.
  • Folgendes UML-Diagramm veranschaulicht dies inklusive der Vererbungsstruktur mit Basisklassen:
UML-Klassendiagramm zu einer Beispielanwendung.

Bild 13-1: UML-Klassendiagramm zu einer Beispielanwendung.