jueves, 4 de diciembre de 2008

JavaFX al fin. ¿O deberia decir demasiado tarde?


Hace ya al menos tres años que oi hablar por primera vez de JavaFX, y tenia en aquel momento muy buena pinta: soporte de todo tipo de graficos para todo tipo de plataformas, incluidos set-top boxes, telefonos, sistemas operativos..

Tras mucho tiempo sin oir nada sobre el tema, hoy (via twitter de Miguel de Icaza) me he enterado de que por fin lo han lanzado de forma oficial.

Según Sun, esta nueva plataforma pretende entrar por la puerta grande en competencia con los rich clients ya implantados: Flash y Silverlight. Aunque no he visto aun las posibilidades reales las primeras impresiones que he leido no son muy halagüeñas:

JavaFX es un lenguaje de script que puede ser compilado a bytecodes de Java y por tanto previsiblemente puede correr en todas las plataformas en las Java esté soportado. Incluye codecs (o conversores) para poder tratar formatos SVG, Photoshop o Illustrator y multiples formatos de video.

Probablemente Sun ha tardado demasiado tiempo en sacar este producto a la luz, con la competencia ya muy por delante. Tambien puede ser un inconveniente de cara a aplicaciones web el tamaño de las descargas para poder ejecutar una aplicacion: hay que descargarse el JDK/JRE (unos 10Mb), mas el runtime de JavaFX, mas luego la propia aplicacion que quieras ejecutar. Esto, por supuesto, no es un problema para dispositivos que puedan llevar ya Java embebido pero si puede ir en su contra para aplicaciones web con pretensiones de ser ligeras.

Puedes ver un monton de faqs con documentacion y demos desde las paginas del proyecto. No se si tendré tiempo de ponerme a echar un vistazo -me gustaria porque al fin y al cabo, parece Java- pero lo cierto es que las demos, aunque hacen muchas cosas, no dan la sensacion de velocidad que tiene, por ejemplo, Flash.

Entre las criticas mas destructivas en una sola linea (via twitter, como no), la de Dion Almaer (Ajaxian, ex-Google y actualmente en la fundacion mozilla): ¡Que bonito! Casi parece jQuery!