Java-Oberflächen schnell entwickeln

Werbung
W e b d e s i g n | Rapid
Java mit XDEV 3
Java-Oberflächen
schnell entwickeln
Mit XDEV 3 können Web-Entwickler schnell und produktiv in Java einsteigen. In Teil 1 unserer Rapid-JavaSerie zeigen wir, wie Sie Java-Benutzeroberflächen mit
XDEV 3 ohne Java-Know-how erstellen können.
U
nzählige IT- und Fachabteilungen
setzen bei der Anwendungsentwicklung auf 4GL-Tools wie Microsoft Access,
FoxPro oder Filemaker, weil sich damit
einfache Softwarelösungen schnell, komfortabel und bereits mit geringen Programmierkenntnissen in Eigenregie umsetzen
lassen. Damit entwickelte Lösungen sind
jedoch nicht webfähig, sodass sie in vielen Fällen als nicht mehr zeitgemäß gelten und eine Ablösung durch eine echte
Webanwendung sehr vorteilhaft wäre.
Wer jedoch eine moderne Webanwendung entwickeln möchte, muss mittlerweile verschiedenste Webtechnologien
beherrschen, u.a. HTML, JavaScript, CSS,
AJAX, XML, JSON sowie Frameworks wie
jQuery für die Programmierung der Oberfläche und darüber
hinaus mindestens
eine weitere Sprache wie PHP, ASP
oder JSP für die
Umsetzung des
Server-Teils.
Mit XDEV 3 lassen
sich Java-Oberflächen wie mit einem
Grafikprogramm per
Drag & Drop designen. Java-Kenntnisse braucht man
dazu nicht, denn der
Code wird automatisch generiert.
44
Da nur die wenigsten Fachabteilungen
über ausreichend Know-how in dem erforderlichen Umfang verfügen, bleiben viele
wichtige Projekte auf der Strecke oder liegen einfach für unbestimmte Zeit auf Eis.
Mit XDEV 3 gibt es jetzt eine Alternative
für alle Entwickler, die Webanwendungen
genauso schnell und einfach wie mit
Access entwickeln möchten. XDEV 3 ist
eine RAD-Entwicklungsumgebung (Rapid Application Development), mit der
Sie sowohl Web- als auch herkömmliche
Desktop-Applikationen auf Basis von Java
um ein Vielfaches schneller und einfacher
realisieren können als mit konventionellen
Java-Editoren wie Eclipse.
XDEV 3 ist unter www.xdev-software.
de frei verfügbar und auch für den kom-
merziellen Einsatz völlig lizenzkostenfrei.
Version 3 befindet sich im finalen Betastadium und soll in Kürze als Final Release verfügbar sein. Der erste Teil unserer
sechsteiligen Serie beschreibt, wie Sie mit
XDEV 3 professionelle Weboberflächen
blitzschnell per Drag & Drop designen
können, ohne auch nur eine Zeile Javacode schreiben zu müssen.
Web-Oberflächen per Drag&Drop
Oberflächenentwicklung in Java ist gewöhnlich mit sehr viel Programmier- und
Experimentierarbeit verbunden und damit
sehr zeitaufwendig. Viele Java Entwickler
vermissen einen komfortablen GUI-Builder (Graphical User Interface), mit dem
man grafische Oberflächen schnell und
einfach zusammenklicken
kann. Genau darauf hat man
in XDEV 3 großen Wert gelegt und die Umgebung mit
dem komfortabelsten GUIBuilder ausgestattet, den es
für Java gibt. Wie mit einem
Grafikprogramm lassen sich
damit Java-Oberflächen in
Rekordzeit und völlig ohne
Programmierung erstellen.
Auch Designer ohne JavaKnow-how werden damit auf
Anhieb zurechtkommen und
können ohne Probleme die
komplette Oberfläche einer
Java Anwendung umsetzen.
Alle Oberflächenelemente
0511 internet magazin
Rapid Java mit XDEV 3
|Webdesign
Java Applets
Applets sind weder langsam noch unsicher. Diese Vorurteile stammen noch aus der Anfangszeit des Webs, als der Netzzugriff noch über
Modem erfolgte und Applets zu allem Überfluss
meist so programmiert waren, dass sie vollständig geladen wurden. Die XDEV-Entwickler haben
diesen Mängel jedoch mit einer automatisierten
Nachladeprozedur gelöst. XDEV 3 splittet ein
Applet einfach in viele einzelne Dateien auf.
Der Ladevorgang funktioniert dann ähnlich wie
bei Ajax und Flash. Bei Aufruf werden anfangs
nur Programmkern und Startfenster geladen.
Alle weiteren Fenster und Dialoge werden erst
bei Bedarf nachgeladen. Egal wie groß eine Anwendung ist, sie bleibt immer performant. Das
Nachladen geht sogar deutlich schneller als bei
Ajax-Frontends. Da Applet-Dateien aus kompri-
miertem Bytecode bestehen, ist eine komplette
Java-Oberfläche nicht größer als gerade einmal
10 bis 20 KByte. Eine vergleichbare HTML-/
JavaScript-Oberfläche wäre leicht zehnmal größer.
Wenn es um die Sicherheit geht, wird Java aufgrund der Namensgleichheit immer wieder mit
JavaScript verwechselt, das Hacker seit jeher
bevorzugt für Viren und Trojaner verwenden.
Während Applets mit JavaScript nicht das Geringste zu tun haben, sind es vielmehr AjaxAnwendungen, deren Oberflächen überwiegend
in JavaScript geschrieben sind. Java Applets
sind dagegen um ein Vielfaches sicherer, weil
sie schon immer in einer Sandbox laufen. Dabei handelt es sich um ein Sicherheitskonzept,
das den unerlaubten Zugriff auf einen frem-
den Rechner unmöglich macht. Damit zählen
Applets zu den sichersten Webtechnologien
überhaupt.
Java Applets stellen eine mächtige und sichere
Webtechnologie dar, die Ajax-Frontends in nahezu allen Belangen überlegen sind. Anders als
Ajax-Techniken ist Java standardisiert, ausgereift, robust, bietet deutlich mehr Features für
Oberflächen und ist völlig Browser-unabhängig.
Wegen der Komplexität wurde Java bislang überwiegend im Enterprise-Bereich eingesetzt. Mit
XDEV 3 wird die Java-Entwicklung jedoch nun
so einfach, dass jeder Webentwickler damit in
der Lage ist, leistungsfähige Webanwendungen
vollständig in Java zu entwickeln, wodurch sich
für viele Entwickler völlig neue Möglichkeiten
ergeben werden.
lassen sich aus einem Palettenfenster per
Drag & Drop in das Arbeitsfenster einfügen
und dort pixelgenau positionieren. Für Design und Funktionalität einer Oberfläche
steht Ihnen die volle Power von Java mit all
seinen GUI-Komponenten zur Verfügung,
unter anderem Tabellen, Trees, Split-Panes
(bewegbare Bildschirm-Splitter), TabbedPanes (Registerreiter), Menüleisten und
Kontextmenüs, alle Formularkomponenten
sowie alle für eine Applikation wichtigen
GUI-Konzepte wie Fenstertechnik (wie Internal Frames) und echtes Drag & Drop,
welches auch in Verbindung mit parallel
laufenden Anwendungen funktioniert.
Sogar die Registrierung und Verarbeitung
von Ereignissen auf der Oberfläche (EventHandling) übernimmt der GUI-Builder, sodass man sich nur noch um die reine Aktionslogik kümmern muss. Darüber hinaus
bringen Java-Komponenten von Haus aus
jede Menge Standardfunktionen mit, die
nicht extra programmiert werden müssen,
wie alphabetische Sortierung in Tabellen,
Interaktion zwischen GUI-Komponenten
sowie Fokus-Management. Für jede Komponente kann man zudem individuelle
Eigenschaften wie Hintergrundfarbe, Rahmen oder Texteinstellungen festlegen. Visual Basic- und Delphi-Entwickler werden
sehr viele Parallelen feststellen und sich
wie zu Hause fühlen. Viele Komponenten kann man zusätzlich mit einem Icon
dekorieren. Dafür braucht man nur die
gewünschte Bilddatei aus dem Medienkatalog oder direkt aus dem Dateimanager
heraus per Drag & Drop auf das jeweilige
Element ziehen. Die verwendeten Bilder
werden dabei automatisch in eine Ressourcen-Datei kopiert.
Für die Konstruktion von Menüleisten und
Kontextmenüs steht ein Assistent zur Verfügung. Die dort angelegten Menüs zieht
man einfach per Drag & Drop in eine Menüleiste, die man zuvor in das Arbeitsfenster eingefügt hat. Diese ist dann bereits im
Entwurf funktionsfähig.
Einsteigern wohl meist noch unbekannt ist
die Möglichkeit, Java-Komponenten ineinander zu schachteln. Viele GUI-Elemente
wie Tabs (Registerreiter)
oder Split-Panes besitzen
ein zusätzliches Container-Element, in das man
andere Komponenten einfügen kann. Der
dabei entstehende Komponentenbaum
kann oft viele Hierarchien bilden und wird
deshalb in einem speziellen Übersichtsfenster abgebildet.
Im Projektmanagement können Sie
neue Fenster sowie eine Ordnerstruktur
(Packages) dafür anlegen, sodass Sie auch
bei großen Projekten immer den Überblick
behalten.
internet-magazin.magnus.de
Java bietet einen enormen
Umfang an Widgets für professionelle Weboberflächen,
die sich mit XDEV 3 völlig
ohne Programmieraufwand
per Drag & Drop einbinden
lassen, u.a. Menüs und
Kontextmenüs, Registerreiter, sortierbare Tabellen,
Trees, Fenstertechnik und
echtes Drag & Drop.
Der einfache Umgang
mit dem Layout-Manager
Als Layouthilfen für statische Layouts bietet der GUI-Builder erfreulicherweise auch
von Designern geschätzte Werkzeuge wie
Hilfslinien und Funktionen zum Verteilen,
Ausrichten und Andocken von Komponenten.
Oberflächen, die sich
flexibel an unterschiedliche Bildschirmauflösung anpassen können,
werden in Java mithilfe
sogenannter Layoutmanager realisiert. Die
L ayo u t m a n a g e r- P r o grammierung, insbesondere das häufig benötigte Gridbag-Layout
(Tabellenlayout), gilt jedoch als sehr anspruchsvoll und zeitaufwändig.
45
W e b d e s i g n | Rapid
Java mit XDEV 3
Mithilfe eines komfortablen
Assistenten lassen sich
Oberflächen layouten, die
sich flexibel an die Fenstergröße anpassen, ohne dass
man sich dafür mit der in
Java als sehr kompliziert
geltenden LayoutmanagerProgrammierung auseinandersetzen muss.
Der XDEV 3 GUI-Builder
bietet dafür jedoch spezielle Layout-Designmodi,
in denen sich auch komplexeste Tabellenlayouts
wie mehrspaltige Formulare, in unschlagbar kurzer Zeit und völlig ohne Programmierung
umsetzen lassen. Über eine als Toolbox
bezeichnete Werkzeugpalette lassen sich
sämtliche Einstellungen vornehmen, und
man sieht dabei bereits im Entwurf, wie
sich das Layout verhält. Besonders innovativ ist die Möglichkeit, Zeilen und Spalten
des Layouts bequem mit den Pfeiltasten
verschieben zu können, wodurch man
Änderungen enorm schnell durchführen
kann. Die Layoutmanager-Arbeit erfordert jedoch ein Grundverständnis für das
Funktionsprinzip, das man aber mit XDEV
3 sehr schnell verstanden hat. Im Vergleich
zur herkömmlichen LayoutmanagerProgrammierung stellt der Assistent eine
extreme Erleichterung dar und hilft, eine
Menge Entwicklungszeit einzusparen.
sen sich auch beliebig andere
Kombinationen wählen wie
Dropdown-Liste und Tabelle
oder Tabelle und Tabelle. Für
das komplette Feature müssen Sie nicht eine Zeile Code
schreiben.
Javabean-Schnittstelle
Zudem können Sie ein Formular per Mausklick mit einem Tabellen-Widget verknüpfen. Dadurch wird ein in der Tabelle angewählter Datensatz automatisch in das
verbundene Formular übertragen, wo die
Daten editiert werden können.
Master-Detail-Generatoren
Ein besonderes Highlight in XDEV 3 sind
die neuen Master-Detail Generatoren, mit
denen sich häufig benötigte Master-DetailAnsichten mitsamt Datenbankabfragen
und Interaktionslogik generieren lassen,
beispielsweise ein Listenfeld mit Markennamen (Master), das bei Selektierung einer
Marke automatisch die dazugehörigen Artikeldaten lädt und in einer Tabelle (Detail)
anzeigt. Neben Listenfeld und Tabelle las-
Bei vielen Webframeworks ist
die Entwicklung eigener Komponenten so kompliziert und
aufwendig, dass dies in der
Praxis nur wenige beherrschen.
XDEV 3 dagegen ermöglicht
es dem Entwickler auf verblüffend einfache Weise, eigene
GUI-Widgets zu erstellen. Darüber hinaus lassen sich über die JavabeanSchnittstelle sämtliche GUI-Beans nahtlos
einbinden, die für Java Swing zur Verfügung
stehen, sodass sich die Komponentenpalette
des XDEV 3 GUI-Builders nahezu grenzenlos erweitern lässt. In Kürze möchte der Hersteller eine Component Suite als Erweiterung
zu XDEV 3 anbieten, welche verschiedene
Datagrids mit automatischen Filter- und Sortierfunktionen, eine leistungsfähige Kalender-Komponenten, Richtext-Editor und sogar
Docking-Windows bieten soll.
Das komplette
Oberflächen-Theme ändern
Für das Erscheinungsbild einer Java-SwingOberfläche ist immer das Look and Feel
zuständig. Änderungen einzelner GUI-
Formulare automatisch
generieren lassen
XDEV 3 ermöglicht Ihnen, voll funktionsfähige Formulare mit nur einem Mausklick generieren zu lassen. Dazu müssen
Sie nur eine Virtuelle Tabelle (importierte
Datenbanktabelle ohne Daten) aus dem
Projektmanagement per Drag & Drop in
die Arbeitsfläche ziehen. Das Formular
wird anschließend automatisch generiert
und gelayoutet. Sogar die für Listboxen
und Dropdown-Listen notwendigen Datenbankabfragen werden mit erzeugt. Einfacher geht es nicht.
46
Mit XDEV 3 lassen sich Formulare und sogar aufwendige Master-Detail-Ansichten automatisch
generieren, sodass man viele starke Programmfunktionen völlig ohne Codieraufwand umsetzen
kann und dabei jede Menge Entwicklungszeit spart.
0511 internet magazin
Rapid Java mit XDEV 3
|Webdesign
Projekte als Webanwendung
Mehrsprachige Oberflächen lassen sich mithilfe von Textvariablen realisieren. Die Oberflächentexte werden automatisch aus Sprachdateien ausgelesen und über die Variablen auf die Oberfläche gemappt. Die Sprache lässt sich zur Laufzeit gezielt setzen.
Elemente sind in Java zwar nicht so leicht
wie mit CSS, dafür können Sie in XDEV 3
das Look and Feel als Ganzes austauschen
und damit das Aussehen der kompletten
Oberfläche im Handumdrehen verändern.
Java Swing selbst liefert zwar nur wenige
Look and Feels standardmäßig mit, allerdings sind viele freie über das Internet
verfügbar.
Mehrsprachige Oberflächen
Mehrsprachige Oberflächen lassen sich
sehr leicht mithilfe von Textvariablen umsetzen, die man an jeder Stelle der Oberfläche verwenden kann, etwa für Beschriftungen, Tabellenköpfe und Dialoge. Die
Funktionsweise ist einfach.
Auf der Oberfläche werden dann nur noch
Textvariablen verwendet. Diese müssen in
geschweiften Klammern und mit $-Zeichen angegeben werden, beispielsweise
so: {$save}.
Die eigentlichen Texte werden in verschiedenen Sprachdateien ausgelagert.
Dabei handelt es sich um gewöhnliche
Textdateien, die als project_de.properties
benannt und als Ressource über das Projektmanagement eingebunden werden. Je
nach Sprache muss das ISO-Länderkürzel
de entsprechend ersetzt werden. Die Oberflächentexte selbst werden in Form von
Variable-Wert Paaren zeilenweise in der
Sprachdatei abgespeichert, beispielsweise
save = Speichern. Zur Laufzeit ermittelt die
Anwendung dann über die Systemeinstel-
internet-magazin.magnus.de
lungen des Clients automatisch die richtige
Sprache, liest anhand des Länderkürzels
die entsprechende Sprachdatei aus und
mappt die darin enthaltenen Texte mithilfe der Textvariablen auf die Oberfläche.
Layoutete Oberflächen können sich dabei
automatisch der Textlänge anpassen.
Automatisierte Testumgebung
Für das Testen von Webanwendungen muss
man gewöhnlich einen lokalen Webserver
aufsetzen und konfigurieren, was vor allem
für Einsteiger eine unangenehme Hürde darstellt. XDEV 3 nimmt
Ihnen diese Arbeit jedoch komplett ab und
richtet bereits bei der
Installation eine vollständige Testumgebung
auf Ihrem Rechner für
Sie ein. In XDEV 3 genügt dann ein einziger
Mausklick, um ein Projekt als Webanwendung
lokal auszuführen.
Mit XDEV 3 brauchen Sie keine Buildscripte schreiben, um neue Builds zu erstellen oder um Ihr Projekt als lauffähige
Anwendung fertig zu stellen. Denn in
XDEV 3 gibt es schließlich einen Assistenten, der das für Sie übernimmt. Damit
lässt sich jedes Projekt aus ein und derselben Codebase heraus wahlweise als
Webanwendung (Java Applet), klassische
Java Applikation oder als Java WebstartAnwendung deployen.
Die generierten Applikationen sind lauffähig unter Windows, Linux und auf dem
Mac, ohne dass dafür weitere Anpassungen
erforderlich sind.
Für den Buildprozess bietet XDEV 3 eine
Ant-Schnittstelle. Die mit XDEV 3 generierten Java Applets lassen sich genauso
wie auch gewöhnliche Webseiten ausliefern. Dazu müssen Sie nur die generierten
Dateien per FTP-Client auf Ihren Webserver übertragen. Zwar empfiehlt sich
der Einsatz eines V-Servers, ein StandardWebpaket ist jedoch bereits für diese Anwendung ausreichend.
Gerald Kammerer / ds
Mit einer Component
Suite sollen in Kürze viele
weitere Oberflächenkomponenten zur Verfügung stehen, wie eine
leistungsstarke KalenderKomponente.
47
Herunterladen