JavaFX es una familia de productos y tecnologías de Sun Microsystems, adquirida porOracle Corporation, para la creación de Rich Internet Applications (RIAs), esto es, aplicaciones web que tienen las características y capacidades de aplicaciones de escritorio, incluyendo aplicaciones multimedia interactivas. Las tecnologías incluidas bajo la denominación JavaFX son JavaFX Script y JavaFX Mobile, aunque hay más productos JavaFX planeados.
Las aplicaciones JavaFX pueden ser ejecutadas en una amplia variedad de dispositivos. En su última versión (JavaFX 1.3, abril 2010) permite crear aplicaciones de escritorio, para celulares, la Web, TV, consolas de videojuegos, reproductores Blu-ray, entre otras plataformas planeadas. Para el desarrollo de aplicaciones JavaFX un lenguaje declarativo, tipado llamado JavaFX Script, además puede integrarse código Java en programas JavaFX. JavaFX es compilado a código Java, por lo que las aplicaciones JavaFX pueden ser ejecutadas en computadores con la máquina virtual de Java instalada (JRE), o celulares corriendo Java ME.
JavaFX fue anunciado en la conferencia de desarrolladores JavaOne en mayo de 2007 y liberado en diciembre de 20081
La intención de Sun Microsystems respecto de JavaFX es competir en el espacio que ya ocupan Flash de Adobe, y Silverlight de Microsoft.
En palabras de James Gosling "La mayoría de los lenguajes de script están orientados a las páginas web; éste está orientado a las interfaces que son altamente animadas"
JavaFX
JavaFX, surge como una innovación de Java orientada a los miles de dispositivos y computadoras que utilizan la tecnología Java. Es una nueva familia de productos basados en la tecnología Java que ayuda a la creación e implementación de aplicaciones RIA (Aplicaciones de Internet enriquecidas).
JavaFX: JavaFX Script y JavaFX Mobile.
JavaFX Script permite crear rápidamente aplicaciones ricas en contenido para la más amplia variedad de clientes, entre ellos dispositivos móviles, decodificadores, máquinas de escritorio e incluso discos Blu-ray.
JavaFX Script ofrece una estrecha integración con otros componentes de Java (aplicaciones e infraestructura) que se ejecutan en plataformas de servidor y cliente.
JavaFX Script aprovecha el modelo de seguridad de Java de modo que los consumidores pueden acceder con seguridad a activos (por ej., imágenes, archivos de música, documentos de palabras) en su escritorio.
JavaFX Mobile es un sistema integrado de software para programación de dispositivos móviles. Está disponible mediante licencias de OEM para proveedores de telecomunicaciones, fabricantes de teléfonos y otras empresas que deseen simplificar y acelerar el desarrollo de un potente sistema de software estandarizado, que pueda aprovecharse en una amplia gama de dispositivos para el consumidor.
Contenido interactivo dinámico en cualquier dispositivo
No siempre se pude predecir qué dispositivos o plataformas van a usar los clientes, y con JavaFX, no es necesario hacerlo. A diferencia de otras plataformas de dispositivos construidas sobre tecnologías exclusivas, JavaFX Mobile utiliza tecnologías estándar de la industria , esto significa que las aplicaciones construidas con JavaFX pueden ejecutarse en una amplia gama de dispositivos habilitados para Java, y los proveedores de contenido pueden agregarlos rápidamente a sus dispositivos. Los más recientes estándares, incluido el conjunto de Arquitectura de Servicios Móviles de las API de dispositivos, están estrechamente integradas en JavaFX Mobile, de modo que los desarrolladores tienen un conjunto enriquecido de capacidades altamente portátiles.
JavaFX puede entregar aplicaciones visualmente atractivas, como mapas y mashups, video, audio e imágenes, que puede estandarizar a través de teléfonos celulares, televisores, etc. El nuevo lenguaje de programación se puede integrar estrechamente con otros componentes de Java que ya se ejecutan en servidores y clientes. Y debido a que está creado sobre estándares abiertos, las tecnologías de JavaFX ofrecen a las empresas que crean aplicaciones de Internet enriquecidas un tiempo de comercialización más rápido y una mayor coherencia para las aplicaciones y servicios.
Escribir una vez, ejecutar donde sea
Las aplicaciones escritas con JavaFX Script aprovechan las características establecidas de la tecnología Java, como la portabilidad de escribir-una-vez-ejecutar-donde-sea, la seguridad de las aplicaciones, la distribución omnipresente y la conectividad empresarial.
JavaFX Script puede además, admitir interfaces de usuario de cualquier tamaño o complejidad, y aprovechar los modelos de programación de Java, como las funciones de estructuración de código, reutilización y encapsulado (paquetes, clases, herencia, y unidades de compilación y desplegado separadas), para la creación y mantenimiento de grandes programas en JavaFX Script. Su estructura de código escrito coincide con la disposición real de la GUI , y es más sencilla de entender y mantener. JavaFX Script también presenta ventajas para los desarrolladores de Java aprovechándose mediante un complemento de NetBeans.
Ventajas
• JavaFX es una extensión a la plataforma Java que ofrece interactividad, animación y programación compatible con AJAX, Flash de Adobe y Silverlight de Microsoft. A diferencia de éstas anteriores, utiliza los runtimes Java ya instalados en el cliente local en lugar de JavaScript.
• JavaFX permite a los creadores de contenido crear contenido rico en medios, lo que incluye el arrastrar y soltar contenido de equipos de escritorio o móviles hacia el escritorio, algo que no es posible en ninguna otra RIA .
• JavaFX se trata de un sistema de desarrollo para la web que pretende competir con el Flash de Adobe y el Silverlight de Microsoft, con el añadido de que es Open Source .
• Millones de desarrolladores, muchos equipos con Java instalado y a eso hay que sumar que Java es libre bajo GPL.
• Multiplataforma, desde el escritorio (corriendo sobre una máquina virtual Java SE) hasta los dispositivos móviles para los que habrá un JavaFX Mobile.
• Utiliza el mismo lenguaje para la web, para el escritorio y para la telefonía móvil.
• Tiene como objetivo que el browser opere mejor que con JavaScript, que es lento y se implementa en formas diferentes de un browser a otro.
• Con JavaFX la aplicación corre en una computadora local aunque esté desconectada de Internet. Al ser compiladas en lugar de interpretadas, son aún más veloces. El compilador no compagina a toda la aplicación, sino sólo a las partes del código no relacionadas con la interfaz de usuario (UI).
• El plug-in en NetBeans simplifica notablemente el desarrollo de aplicaciones JavaFX dentro del mismo IDE y no como aplicaciones separadas.
• El manejo de sintaxis de código es más inteligente ya que los desarrolladores pueden ver los cambios en vivo dentro del IDE, lo que facilita la prueba de código y la realización de cambios sin tener que guardarlo, compilarlo y ejecutarlo con fines de test.
• En lugar de usar al browser como contenedor del código JavaScript, las aplicaciones utilizan los dispositivos de seguridad de Java SE para controlar el acceso a disco de las aplicaciones.
• JavaFX Script posibilita a los diseñadores visuales en los IDEs manipular la interfaz grafica sin tener que hacer grandes alteraciones en el código.
• JavaFX Mobile pretende proporcionar a los fabricantes de teléfonos móviles un entorno software completo (con sus herramientas de desarrollo incluidas) en el que basar sus productos, de forma que estos se puedan centrar en el desarrollo de servicios que los diferencien de sus competidores.
• JavaFX Mobile utiliza tecnologías estándar de la industria, lo que hace posible que las aplicaciones construidas con JavaFX pueden ejecutarse en una amplia gama de dispositivos habilitados para Java, y los proveedores de contenido pueden agregarlos rápidamente a sus dispositivos.
Desventajas
• Con JavaFx, se agrega un lenguaje de script complejo, que necesita mantener en memoria su propia estructura semántica y sus propios objetos de plataforma, simultáneamente con los objetos gráficos.
• Al ser un lenguaje de script agrega un factor de ralentización importantísimo, por eso el desempeño no es óptimo.
• Por otro lado, las APIs de tratamiento de XML ya vienen incorporadas al JDK, generalmente están implementadas a bajo nivel, por lo que un sistema de templates es mucho mas liviano que soportar JavaFX.

No hay comentarios:
Publicar un comentario