Temas
JavaFX
Originalmente F3 (Form Follows Function) , nombrado JavaFX en 2007 y desarrollado por Chris Oliver (Sun Microsystems) Solución en los clientes
Adaptar las interfaces y dejar intacta la lógica de negocio ¿y Swing?
No fue pensado para RIA Puede usarse en JavaFX
¿Qué puedo desarrollar con JavaFX?
Interfazgráfica para aplicaciones de escritorio Interfaz gráfica para aplicaciones que se descargan a través de la web Interfaz gráfica para aplicaciones móviles
Bounce Music Explorer
Componentes principales para desarrollar en JavaFX
JavaFX SDK Incluye compilador JavaFX (javafxc), runtime (javafx), herramientas. Incluye librerías para la creación de RIAs (Rich Internet Applications) paraDesktop, Browser y Mobile. JavaFX Production Suite Conjunto de herramientas y plug-ins para ayudar a los diseñadores a exportar gráficos JavaFX desde otras aplicaciones (Adobe Illustrator and Photoshop).
JavaFX Graphics Viewer preview de render de gráficos Herramienta SVG (Scalable Vector Graphics) permite convertir graficos SVG a formato JavaFX.
IDE de desarrollo: NetBeans
NetBeans 6.7 tieneincorporado plugin para JavaFX Preview de ejecución en ambientes:
Standard Execution (default) Java Web Start Run in Browser Run in Mobile Emulator
Plataforma JavaFX
Plataforma JavaFX
En cuanto al soporte para TV aún no existe el jre Desktop: JavaFX se ejecuta sobre Windows XP, Vista, Mac OS, Linux Mobile: capaz de ejecutarse sobre Android, Windows Mobile
JavaFX no es Java
Sintaxisdeclarativa Declaración de functions para los “callbacks” (no hay clases internas anónimas!!!) Binding basado en expresiones (en particular para reflejar cambios en la interfaz)
¿Qué es JavaFX?
Es un lenguaje de programación
JavaFX Script
Es una plataforma de ejecución (runtime)
Se ubica arriba de JRE
Es una aproximación común para aplicaciones RIA que se ejecuten en Desktop, Mobile yequipos de TV
La API está dividida en 4 profiles:
Common, Mobile, Desktop y TV
JavaFX Script
No es exactamente un script
La aplicación es compilada con “javafxc” a bytecodes Java y entregados a través de un JAR.
Podemos invocar nuestra conocida API Java así como usar otras librerías.
Ejemplo
¿Qué hay de especial en JavaFX?
Sintaxis declarativa Tipado estático e inferencia detipos Usa data binding Tipos Function / Closures Video / Audio support RESTful (Web services) con parser para XML y JSON. Soporte para RSS feeds.
¿Qué hay de especial en JavaFX?
Herencia
•JavaFX 1.0 - 1.1 tenía herencia múltiple (Algo no anduvo bien y desapareció!) •Java 1.2 no tiene herencia múltiple e introduce el concepto de “mixin classes”
Mixin inheritance
mixin class MixinClass { . .. }
Las clases JavaFX pueden extender una clase Java o JavaFX, y cualquier número de interfaces Java o JavaFX mixins
class myClass extends MyMixin1, MyMixin2 {}
Una mixin class no puede ser instanciada
¿Qué componentes puedo usar en mi aplicación JavaFX?
Formas básicas Controles nativos JavaFX o Swing Colores Efectos Transformacíones Animaciones
Todo ocurre en un “Scene Graph”Nos olvidamos del famoso public static void main(args String[]){} Todo se inicia en un Stage {}
El “Scene Graph” puede verse como un “árbol”
Stage
Scene
Nodos :Text, Group, VBox, Panel, Stack, Rectangle Button, MediaPlayer. Algunos nodos pueden contener otros nodos)
Importancia del “Scene Graph”
Captura la estructura entera de la aplicación en una estructura de datos Ocurren cambios enla interfaz modificando propiedades de los objetos en el “Scene Graph”.
Si se cambia la propiedad “Visible” de un nodo a false, éste nodo y cualquier nodo que éste contenga desaparece
Jerarquía de Nodos
Tipos de datos Predefinidos
Boolean Integer Number String.
def s1 = “World"; println(“Hello {s1}!"); // Hello World!
Duration. Literales de tiempo (ms, s, m, h) Void
def vs var...
Regístrate para leer el documento completo.