Oracle muestra JavaFX ejecutándose en iOS y en Android
Ayer en la JavaOne Oracle mostró una demo de JavaFX ejecutándose en un iPad de Apple, y en un tablet Android (Samsung Galaxy). Esta versión de JavaFX ejecutándose en iOs todavía está en desarrollo. Según Nandini Ramani, vicepresidente de desarrollo de Oracle Fusion Middleware, la posición de Oracle respecto a llevar a JavaFX a iOS es
"We want to hear from the community. If this is something you want to see, we're happy to make it a priority"
En cuanto a la demo sobre Android, comenta que según Oracle se trataba de una demo de "JavaFX corriendo en un dispositivo Linux".
Oracle también presentó un proyecto llamado Avatar que pretende llevar Java a iOS a través de HTML 5. Y dio una fecha bastante precisa para la disponibilidad de Java SE 8: verano de 2013.
Reader Comments (8)
ohh interesante, hay algún video del demo??
Este vídeo de JavaFX Labs es impresionante:
http://www.youtube.com/watch?v=zFK0kpMpToM
No se ve ningún video; son noticias bastante recientes. De hecho tan siquiera sé cómo lo han portado exactamente; esto rompe claramente con los acuerdos del contrato de desarrollo para iOS, si lo que han hecho es llevar una máquina virtual al dispositivo. Tampoco me queda clara cuál es la relación entre el proyecto avatar y todo esto (si la tiene). Por lo de ahora no he encontrado información técnica sobre esto, sólo reportajes de periodistas
Parece que Oracle sigue apostando por JavaFX, apostariais por él?
Como decía mi abuela: "Que porfiar, porfiase; pero apostar, no apostase" ;)
Java FX 2.0 todavía está en sus comienzos; descontando las versiones anteriores, que ni siquiera llegaron a comenzar a usarse en serio.
Supongo que coincidiendo con el lanzamiento de JavaSE 8.0 ya podrá verse con claridad hacia dónde va JavaFX, o hacia dónde llegará. Es tiempo suficiente para ver si se consolida, o decae.
Mis pasos profesionales me han llevado al mundo de .NET y WPF, y no sabeis como se hecha en falta algo como JavaFX para mantener cuota de mercado en esta tecnología. El el clientside nadie quiere oir ni hablar de swing cuando comparas resultados con wpf.
Para dar de comer aparte es la lacra con el rendimiento de las apps de escritorio en java. La reducción de los tiempos de startup de las aplicaciones es la eterna promesa. Veremos si Oracle se pone las pilas. Si no soluciona esto, JavaFX nacera muerto.
El problema de siempre con el rendimiento gráfico de Java no es Swing, sino AWT, que no permite utilizar las GPU de los adaptadores gráficos, ni las DirectX de Windows, ni nada similar en otros sistemas.
Esa es la gran ventaja de JavaFX, y la razón del retraso de las versiones para Mac OS X y para Linux: usa un acceso nativo a los subsistemas gráficos.
Otra cuestión es el rendimiento general de las aplicaciones escritas en Swing, gráficos aparte. Al margen de que Swing no es fácil de manejar, es imprescindible usar la multitarea de manera muy extensa, lo que añade otra complejidad adicional al API de Swing.
Si mencionar las prácticas más que dudosas, y tan habituales, como crear objetos de Swing o ejecutar métodos que usan el RepaintManager fuera del EDT, que provocan desde problemas de rendimiento, hasta cuelgues de la propia aplicación.
Por ejemplo: el mismo Swing Application Manager, que todavía tiene abierto un JSR, crea un JPanel fuera del EDT, lo que está definido como bug desde hace años.
El mismísimo NetBeans IDE también crea muchos componentes, durante su inicialización, fuera del EDT.
Esos conocidos ejemplos pueden explicar la clase de dificultades que tiene el desarrollo de aplicaciones con Swing; pero no demuestran que Swing sea "perverso".
La gran ventaja de JavaFX es que teoreticamente puede trabajar sobre cualquier "backend" de gráfica, no solo AWT, sino OpenGL, Html5 Canvas, SVG, etc... Y usando compiladores de Java a Android, iOS y JavaScript será posible crear aplicaciones nativas portables para todas las plataformas sin usar plugins alienigenas o applets. Como entiendo es la estrategia de Oracle y la única forma quedarse en mercado de desktop.