JavaFX goes open source

318 Aufrufe

Veröffentlicht am

The article "JavaFX goes Open Source" was published in the German Java Magazin in May 2013 and discussed JavaFX on iOS and Android with their implementations.
The outlook from May 2013 comes true and showed an architecture diagram, how mobile applications could be created with OpenJFX & OpenJDK by the Java developer community using e.g. RoboVM for iOS.

Veröffentlicht in: Software
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
318
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
2
Aktionen
Geteilt
0
Downloads
1
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

JavaFX goes open source

  1. 1. magazinJava • Architekturen• Web • Agile www.javamagazin.de Österreich €10,80 Schweiz sFr 19,50 Luxemburg €11,15Deutschland €9,80 JAVAMag 5.2013 JavaFX: Phoenix aus der Asche – Großer Heftschwerpunkt auf über 40 Seiten Java EE 6 Interview mit Arun Gupta 10 Android Development Tools Wo ist der Speicher hin 111 JavaFX Alternative für Java User Interfaces auf dem Vormarsch agazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinagazinwww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.dewww.javamagazin.de agazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazinagazinwww.javamagazin.de agazin hier im Heft! 51 JavaFX 2.0 Vollgas nach holprigem Start 36 Gradle Plug-in Pakete für JavaFX-Apps erstellen 73 Mobile JavaFX Für iOS und Android 82 ...undvielesmehr! Open Dolphin Enterprise JavaFX 49 JavaFX Embedded Mit Raspberry Pi und BeagleBoard 52 MEHR THEMEN: JBoss Forge 91 +++ Testautomatisierung mit Selenium 30 +++ Bessere Prozesse mit CMMI 106 © iStockphoto.com/SaulHerrera Präsentiert von Media-Partner Veranstalter www.mobiletechcon.de Getting Real!Getting Real! Mobile Worlds 2.– 5. September 2013 Grand Hyatt Hotel Berlin Bis 6. Juni 2013 Notebook oder Tablet geschenkt und 700 Euro sparen! JavaMagazin5.2013JavaFXJBossForgeSeleniumCMMISpracherweiterungenOAuth2.0Play2.0/2.1
  2. 2. Titelthema JavaFX für iOS und Android 82 www.JAXenter.dejavamagazin 5|2013 von Wolfgang Weigend Die einzelnen JavaFX-Projekte Glass Windowing Tool- kit, Image I/O und Hauptbestandteile der Prism Ren- dering Engine werden durch 138  034 Zeilen Code repräsentiert, die sich jetzt Open Source wiederfinden. Die restlichen Codezeilen von Prism, als auch die Web- und Mediaquellen folgen nach. Damit liegt der Quell- code nahezu vollständig als Open Source vor, bis auf javafx-font, der durch direkte Aufrufe zum Betriebssys- tem im Open-Source-Code ersetzt wird. Dies steht be- reits auf der Aufgabenliste vom Projekt OpenJFX. iOS- und Android-Implementierungen werden Open Source Den Interessierten ist nicht verborgen geblieben, dass gezielte Umfragen zum Bedarf von JavaFX mit Unter- stützung für Tablets und mobile Betriebssysteme zum Jahreswechsel stattgefunden haben. Die Auswertung der Befragung hat ergeben, dass sich die Mehrheit der Entwickler an einem iOS/Android Port beteiligen möchte, sei es durch Bug-Reports oder mittels direkter Codebeiträge. Dies nahm das Java-Produktmanage- ment zum Anlass, die notwendigen Voraussetzungen dafür zu schaffen, dass der JavaFX-Code als Open Source verfügbar ist und die Java-Community daran arbeiten kann. Eine wesentliche Maßnahme besteht da- rin, den Build- und Test-Set-up so zu verbessern, dass sich das Erzeugen und Testen von JavaFX Fixes für die Entwickler stark vereinfacht. Die Priorisierung eines vereinfachten Build- und Testsystems führt dazu, dass das Projektteam wesentlich schneller Codebeiträge an- nehmen kann. Die ersten Bestandteile für iOS liegen vor und die restlichen Komponenten für iOS und Android kommen zum selben Zeitpunkt wie die restliche Ko- dierung von Prism, da hierbei zeitliche Abhängigkeiten bestehen. Beide Portierungen basieren auf einer bisher unveröffentlichten Version von Java SE Embedded für iOS/Android. Lizenzierung mit eigenem Applikations-Co-Bundle Die Lizenzierung von Apple iOS im App Store erlaubt keine GPL-Lizenzierung für Applikationen. OpenJFX und OpenJDK sind jeweils über GPLv2 mit Classpath Exception lizenziert. Bei Verwendung von OpenJDK und OpenJFX, ohne die Binär-Stubs mit unterschied- licher Lizenzierung, besteht die Möglichkeit in der Kombination von OpenJDK und OpenJFX eine eigene Applikation, unter eigener Lizenz, als einzelnes Applika- tions-Co-Bundle herauszubringen. Die gleiche Möglich- keit besteht mit den offiziellen Versionen von JavaFX und Java SE. Im Unterschied dazu befinden sich der- zeit iOS und Android nicht auf der offiziellen Release- Roadmap für JavaFX, sodass in der Zwischenzeit der einzige Weg zur binären Verfügbarkeit von JavaFX auf iOS über OpenJDK und OpenJFX führt. Damit sind die Möglichkeiten beim Erschließen neuer Ports mit Open Source größer und es beschreibt auch das hohe Enga- iOS- und Android-Implementierungen JavaFX goes Open Source Seit der Vorstellung von JavaFX 2 auf der JavaOne 2011 hat die strategische Technologie für Client- webanwendungen von Oracle eine stetig steigende Zahl von Entwicklern begeistern können. Im Herbst letzten Jahres wurden erste namhafte JavaFX-Anwendungsbeispiele vorgestellt, dicht gefolgt von wei- teren neuen Geschäftsanwendungen, die künftig mit JavaFX 8 realisiert werden können. Nun geht die bislang proprietäre Technologie JavaFX vollständig in Open Source auf.
  3. 3. TitelthemaJavaFX für iOS und Android 83www.JAXenter.de javamagazin 5 |2013 gement, den Open-Source-Prozess von JavaFX mit ma- ximaler Priorität voranzutreiben. Mit dem Aufbau von OpenJFX ohne Binär-Stubs kann die Entwicklergemein- schaft keiner daran hindern, das OpenJFX mit dem iOS Port und OpenJDK zu verwenden, darauf kommerzielle Applikationen zu entwickeln und diese im Apple iOS App Store anzubieten (Abb. 1). Ausblick und Fazit Die große Zustimmung der Entwickler, den entschei- denden Anteil zur Portierung von JavaFX auf mobile Endgeräte mit iOS und Android zu erbringen, gepaart mit dem positiven Feedback der Kundenumfrage, lässt schlussfolgern, dass die Entwicklergemeinschaft in der Lage ist, mit OpenJDK, OpenJFX, iOS und Android, eigenständige Open-Source-Beiträge zur Laufzeitumge- bung von JavaFX auf den mobilen Betriebssystemen iOS und Android zu leisten. Oracle legt den Quellcode der JavaFX-Bibliotheken mit den Arbeiten an den Prototypen für iOS und An- droid als Open Source offen. Die darunter liegende Vir- tual Machine und die Java-Core-Bibliotheken-Ports für iOS und Android werden nicht als Open Source zur Ver- fügung gestellt. Dies ist mit dem geschützten Java Port für ARM-Prozessoren vergleichbar. Für Entwickler ist es deshalb notwendig, die offenen JavaFX-Bibliotheken für iOS oder Android zu testen, indem sie ein Subset vom OpenJDK verwenden und die VM auf iOS/Android portieren. Eine weitere Möglich- keit besteht darin, eine Third-Party-VM-Implementie- rung für ARM-basierte Prozessoren zu benutzen. Damit können sich die Entwickler auf die JavaFX-UI-Biblio- theken-Interfaces mit Blick auf iOS und Android kon- zentrieren, ohne sich um tiefgreifende Abhängigkeiten einer Implementierung von ARM-basierten CPUs mit iOS und Android kümmern zu müssen. Die einheitliche Java-Entwicklungsplattform mit den Entwicklungsumgebungen Eclipse (e(fx)clipse), IntelliJ IDEA, NetBeans und anderen in Kombination mit Ja- vaFX, ermöglicht die übergreifende Erstellung von An- wendungen für den Smartphonemarkt, in dem Android Global Smartphone Marktanteil % 4. Quartal 2012 Gesamtjahr 2012 Android 70,1 68,4 Apple iOS 22,0 19,4 Andere 7,9 12,2 Summe 100 % 100 % Tabelle 1: Global Smartphone Operating System Shipments and Market Share Q4 2012 (Quelle: Agentur Strategy Analytics) Global Smartphone OS Shipments (Stückzahlen in Millionen) 4. Quartal 2012 Gesamtjahr 2012 Android 152,1 479,0 Apple iOS 47,8 135,8 Andere 17,1 85,3 Summe 217,0 700,1 Abb. 1: Mobile Applikation mit OpenJFX und OpenJDK und iOS insgesamt 87,8 Prozent Marktanteil im gesam- ten Jahr 2012 belegten (siehe Studie der Agentur Strate- gy Analytics, Tabelle 1). Folglich lohnt es sich, dass die Entwicklergemeinschaft den Open-Source-Prozess von JavaFX nutzt und die Portierung für iOS und Android in die eigenen Hände nimmt. Wolfgang Weigend arbeitet als Sen. Leitender Systemberater bei der Oracle Deutschland B.V. & Co. KG. Er beschäftigt sich mit Java-Technologie und -Architektur für unternehmensweite Anwen- dungsentwicklung. Links & Literatur [1] http://fxexperience.com/2013/02/february-open-source-update/ [2] http://tomsondev.bestsolution.at/2013/02/13/thoughts-on-javafx-for- android-and-ios/ [3] http://www.oracle.com/technetwork/java/javafx/documentation/ index.html [4] http://jdk7.java.net/fxarmpreview/index.html [5] http://openjdk.java.net/projects/openjfx/
  4. 4. Alle Printausgaben frei Haus erhalten Intellibook-ID kostenlos anfordern (www.intellibook.de) Mit der Intellibook-ID kostenlos in der App anmelden und Zugriff auf alle Ausgaben des Java Magazins erhalten (+ Bonusinhalte!) JAVA3 Jetzt 3 Top-Vorteile sichern! TM www.javamagazin.de 1 Mit der Intellibook-ID kostenlos in der App2 Zugriff auf das komplette PDF-Archiv mit der Intellibook-ID 3 JAVAJAVAJAVA Jetzt abonnieren! www.javamagazin.de

×