- JavaFX
-
JavaFX Basisdaten Entwickler Oracle Aktuelle Version 2.0
(4. Oktober 2011)Betriebssystem Microsoft Windows, Mac OS X, Linux, Solaris Kategorie Web Application Framework Lizenz proprietär / GPL Webseite JavaFX ist ein Framework für plattformübergreifende Rich Internet Applications. Es ist Teil der Java-Spezifikation und -familie von Sun Microsystems und steht in direkter Konkurrenz zu Adobe Flash bzw. Flex und Microsoft Silverlight. Zur Ausführung wird die Java SE Runtime benötigt. JavaFX 2.0 ist nicht mehr Teil der Java Runtime und muss separat installiert werden.
JavaFX kann auf diversen Endgeräten wie Mobilfunkgeräten, Set-Top-Boxen, Desktop-Computern und Blu-ray-Disc-Abspielgeräten zum Einsatz kommen, und ist als Bestandteil der Java-Runtime-Umgebung in einigen Mobilfunkgeräten implementiert.[1] Im Hinblick auf Sicherheit muss der Anwender die erste Ausführung von JavaFX-Anwendungen zuvor bestätigen.
Inhaltsverzeichnis
Funktionsweise
JavaFX-Anwendungen werden mithilfe von JavaFX Script[2] programmiert. Die in den Java-Klassenbibliotheken enthaltenen Funktionen und Schnittstellen sind bei der Entwicklung von JavaFX-Applikationen verfügbar. Daneben stellt JavaFX eine eigene Klassenbibliothek bereit, die unter anderem Funktionen zur grafischen Präsentation und zur lokalen und Netzwerk-Datenhaltung enthält.[3] Etliche Komponenten der Benutzerschnittstelle für JavaFX werden aus der normalen Java-Umgebung geerbt. Zur Programmierung stehen zwei Profile, common und desktop, zur Verfügung. JavaFX-Programme, die mit der common-API geschrieben wurden, können grundsätzlich auf allen Endgeräten ausgeführt werden, wohingegen desktop-Elemente auf die Benutzung auf Desktop-Computern beschränkt sind. JavaFX ist insbesondere auf die Grafikprogrammierung und die Kommunikation mit REST-Services ausgerichtet. Neue UI-Komponenten lassen sich schnell erstellen, und alle UI-Komponenten lassen sich per CSS gestalten.
Ausführung und Verteilung
JavaFX-Anwendungen werden vom Webserver heruntergeladen und auf dem Client, typischerweise dem Browser, ausgeführt. Die Anwendung kommuniziert mit dem Webserver über HTTP-GET, REST oder Webservices.
JavaFX-Anwendungen sind zumeist Rich Internet Applications für Desktop-Computer und werden vorwiegend über Java Web Start oder als Java-Applet ausgeführt. Die Installation von Anwendungen geschieht über Java Web Start, indem das Programm entweder direkt als WebStart-Programm ausgeführt und eine Desktopverknüpfung erstellt wird, oder ein Applet aus dem Browser gezogen und dadurch installiert wird. Zusätzlich wird das Programm so automatisch aktualisiert. Die für die Anwendung erzeugten Dateien können auf einen Webserver gespielt werden. Der Webserver benötigt keine Java-Laufzeitumgebung, muss aber für den MIME-Typ
application/x-java-jnlp-file
konfiguriert sein.JavaFX-Applikationen können auf diese Weise über einen Hyperlink auf der Website gestartet werden. Parallel dazu ist die Einbettung einer JavaFX-Anwendung in eine Website (über ein JavaScript) möglich.
JavaFX Production Suite
Die JavaFX Production Suite dient als Verbindungsstück zwischen Entwickler und Designer. Es stellt Plug-ins für Adobe Illustrator und Photoshop zur Verfügung sowie ein SVG-zu-FXZ-Konverter, mit denen Grafiken in das JavaFX-eigene Format umgewandelt werden können. Als FXZ gespeicherte Grafiken können zur Laufzeit mit JavaFX sehr einfach verändert (Transparenz, Position, Größe, Form, ...) werden. Einzelne Bestandteile können zum Beispiel über eine im SVG-Programm zugewiesene ID angesprochen werden.
Verbreitung der Laufzeitumgebung
Laut statistischer Erhebungen[4] sind die Java-Plattformen 5, 6 und 7 (und damit potentiell JavaFX) auf etwa 70 % aller Desktop-Computern mit Internetanschluss und etwa 97 % aller Firmen-PCs installiert. [5] Häufiger verbreitet ist nur die konkurrierende Flash-Laufzeitumgebung in ihren verschiedenen Versionen mit mehr als 95 %. Silverlight ist ebenfalls auf etwa 70% dieser Systeme installiert.
Entwicklungsgeschichte
JavaFX wurde im Mai 2007 angekündigt und im Mai des folgenden Jahres auf der Entwicklerkonferenz JavaOne vorgestellt. Am 4. Dezember 2008 gab Sun JavaFX 1.0 offiziell als Entwicklerkit für Windows und Mac OS X frei.[6] Die Version 1.2 wurde im Juni 2009 veröffentlicht. Sie enthielt unter anderem anpassbare UI-Controls, zusätzliche Layout-Klassen (Tile, Stack, Flow, ClipView, Panel), Unterstützung für RSS/Atom-Feeds. Sie ist nicht abwärtskompatibel. Erst seit dieser Version wurden Linux und Solaris unterstützt. Die Version 1.3 (Codename SoMa) wurde am 22. April 2010 veröffentlicht. Die offensichtlichste Neuerung ist eine teils enorme Steigerung der Performance. Neu ist zudem JavaFX TV, eine offizielle CSS-API zur Gestaltung von JavaFX-Controls, einige neue, gewünschte Controls sowie eine Unterstützung von 3D.[7] Die aktuelle Version 1.3.1 wurde am 21. August 2010 veröffentlicht und verbessert die Fortschrittsanzeige beim Aufstarten und das Debugging in Netbeans 6.9.1.
JavaFX 2.0 erschien wie angekündigt im dritten Quartal 2011. [8] In dieser Version wird auf JavaFX Script verzichtet, stattdessen wurden die bestehenden JavaFX Script APIs auf Java portiert. Damit entfällt das Erlernen einer weiteren Skriptsprache für Java-Entwickler. In JavaFX 2.0 wurde außerdem das Hardware-Rendering optimiert, sodass nun Spiele und aufwändige 3D-Darstellungen möglich sein sollen. HTML- und JavaScript-Inhalte rendert JavaFX 2.0 mit Hilfe der WebKit-Bibliothek. Oracle hat im Zuge der Veröffentlichung der neuen Version angekündigt, JavaFX zukünftig als Open-Source-Projekt im Rahmen des OpenJDK weiterzuentwickeln.[9]
Literatur
- Jens Heitmann: JavaFX in NullKommaNix. Ein ausführliches Handbuch zu JavaFX, jmb-Verlag, Hannover 2009, ISBN 978-3-940970-40-4
- Ralph Steyer: JavaFX: Dynamische und interaktive Java-Applikationen mit JavaFX, Addison-Wesley, 2008, ISBN 978-3-8273-2615-7
- Mike Markgraf: JavaFX – schnell+kompakt, entwickler.press 2009, ISBN 978-3868020366
Weblinks
- JavaFX-Produktseite (englisch)
- JavaFX-Produktseite bei Oracle (englisch)
Quellen
- ↑ Device Manufacturer Partners for JavaFX by Sun
- ↑ JavaFX Script Programming Reference
- ↑ JavaFX 1.2 API
- ↑ Verbreitung von JavaFX
- ↑ Forrester, November 2009: Enterprise Platform Trends, H1 2009
- ↑ JavaFX 1.0 is live
- ↑ JavaFX 1.3 Veröffentlichung
- ↑ http://javafx.com/roadmap/
- ↑ Neuerungen in JavaFX 2.0, Netzwelt, abgerufen am 13. Oktober 2011
Kategorie:- Java-Programmierschnittstelle
Wikimedia Foundation.