Saltar la navegación

2.2.- JavaFX

JavaFX es una tecnología Java para el diseño de aplicaciones con interfaces gráficas interactivas multiplataforma. Las aplicaciones JavaFx pueden ser ejecutadas con el mismo resultado en multitud de dispositivos: pc, móviles, tv, consolas, etc. JavaFX amplía la potencia de Java permitiendo a los desarrolladores utilizar cualquier biblioteca de Java en aplicaciones JavaFX. Los desarrolladores pueden ampliar sus capacidades en Java y utilizar la tecnología de presentación que JavaFX proporciona para crear experiencias visuales que resulten atractivas.

El JavaFX no está incluido en el SDK estándar desde la version 11. Sin embargo, proporciona dispone de su propia kit de desarrollo, en concreto, JavaFX SDK 14 en la última versión. Está formada por un conjunto de clases y API junto con un editor gráfico Scene Builder para crear las interfaces visualmente.

  • Java APIs: las APIs están escritas en código nativo Java compatibles con otros lenguajes soportados por la máquina virtual.
  • FXML and Scene Builder: FXML es un lenguaje de marcado que describe las interfaces de usuario. Se pueden escribir directamente o usar la herramienta JavaFX Scene Builder para crearlos con una interfaz gráfica.
  • WebView: permite embeber páginas HTML en las aplicaciones JavaFX. Ofrece soporte para JavaScript.
  • Built-in UI controls and CSS: proporciona cantidad de controles para construir aplicaciones completas. El estilo de los controles puede ser modificado con CSS.
  • Canvas API: para dibujar directamente en la pantalla.
  • Multitouch Support: soporte para gestos táctiles múltiples en función de las posibilidades de la plataforma subyacente.
  • Hardware-accelerated graphics pipeline: haciendo uso de la GPU se consiguen animaciones gráficas fluidas en las tarjetas gráficas soportadas, si la gráfica no está soportada de hace uso de la pila de software Java2D.
  • High-performance media engine: soporta la reproducción de contenido multimedia con baja latencia basándose en GStreamer.
  • Self-contained application deployment model: las aplicaciones contenidas tiene todos los recursos y una copia privada de los entornos de ejecución de Java y JavaFX. Son distribuidos como paquetes instalables y proporcionan la misma experiencia de instalación e inicio que las aplicaciones nativas del sistema operativo.