Introdução ao java fx e visage
-
Upload
jesuinopower -
Category
Documents
-
view
3.302 -
download
8
Transcript of Introdução ao java fx e visage
Introdução ao JavaFX e Visage
Quem é William
● Formado na FATEC SJC● Trabalha na Red Hat com Suporte de
ferramentas JBoss● Um dos organizadores do JUG Vale● Fã do JavaFX desde a versão 1.0● Fã de Open Source e programação● Áreas de estudo atualmente incluem REST
(JAX-RS), Portais em Java(Portlet JSR 168 e 286), Servidores de Aplicação JEE(ou RESTEasy, GateIn e JBoss AS)
Agenda
1. JAVAFX - PARTE TEÓRICA
2. JAVAFX - PARTE PRÁTICA
3. VISAGE E VISAGEFX
JAVAFX - PARTE TEÓRICA
O que é JavaFX 2
É uma moderna biblioteca Java que dispõe de vários recursos para
criação de aplicações ricas. Sua forma de programar facilita muito a vida do desenvolvedor.
É o novo Swing
O que é JavaFX 2
Permite Criar Aplicações Ricas de Forma Fácil Com Java
Era uma vez...
● JavaFX Script criado por Chris Oliver● Novo JavaFX, compilado e nova engine
gráfica● JavaFX 1.2.1 com novos controles
até que um dia...
JavaFX 2 fim do JavaFX Script, inicio de uma API Java
Desde então muita coisa aconteceu
● Altos investimentos da Oracle● Open Source● Linux, Mac e Windows● Ferramentas visuais ● Demonstrado no iPad● Novos projetos Open Source JavaFX 2 se tornou uma plataforma madura
para criação de aplicações
Principais Acontecimentos JavaFX 2
1001 Formas de Usar JavaFX
No JavaFX, quem manda é o freguês● Linguagens de programação
○ VisageFX○ ScalaFX ○ GroovyFX
● IDEs○ Eclipse○ Netbeans
● Formas de programar○ Java Plano○ Builders○ FXML
JavaFX é Cheio "das Modernidades"
Senta que lá vem história...● "Tudo é um nó"● Fácil tratamento de eventos● Muitos controles de interface● Navegador embutido● Suporte a animação e efeitos● Aceleração gráfica● CSS● Suporte a gráficos● Suporte a vídeo e áudio
Demo da Aplicação "JavaFX Ensemble"
E na prática...
Ceeeerrrtoo... MAS CADÊ O CÓDIGO??????
JAVAFX - PARTE PRÁTICA
Como criar uma aplicação em JavaFX?
● Primeiramente você deve saber algumas coisas importantes:○ Abstração de teatro usa os conceitos Palco(Stage)
e Cena(Scene)○ A classe principal sempre herda de javafx.
application.Application○ Todos os atores(componentes da Cena) herdam de
javafx.scene.Node○ As classes do JavaFX ficam no jar jfxrt.jar, presente
no JavaFX quando você baixa ele do site da Oracle
Como criar uma aplicação em JavaFX?
● Esqueleto de uma aplicação JavaFX
Olá Mundo!
Elementos de Interface
Imagens, Sons e Vídeos
Estilo com CSS
Transições
● Transições mudam o estado de uma propriedade de um nó em período de tempo.
FXML
Ligando valores
● *Property: Ligação direcional e bi-direcional
Ouvindo mudança em valores
Você pode usar Builders se quiser
Você pode usar praticamente tudo no modelo de Builders
Tratar Eventos é Fácil
Trate simplesmente ações ou um evento mais elaborado(mouse sobre, mouse entra)
E muito mais...
● HTML● Muitos Controles de interface ● Efeitos● Recursos para animação
● ....
Lembre-se sempre
...e mais uma coisa...
● Tudo é um Nó(Node). Sério, tudo!● Leia sempre a JavaDoc para desenvolver;● Use a aplicação Ensemble quando precisar
lembrar como faz alguma coisa
VISAGE
Visage
● Nasceu do JavaFX Script logo após o fim do mesmo
● Totalmente OpenSource● Roda sobre a Plataforma Java● Muito fácil de programar
Por que Visage?
● Ok, Java tem várias opções, é maduro, etc, mas as vezes você quer algo específico, para criar interfaces.
● Visage é específica(DSL - Domain Specific Language) para criação de interfaces. É fácil e tem curva de aprendizado muito pequena.
● Visage é mais do JavaFX, roda no topo de Android, Vaadin e há planos para mais
5 Características Legais
5. Sintaxe declarativaClass{ param: value}
4. É funcional: Button{ onclick: function(e:Event){ }}
5 Características Legais
3. Triggersvar a:String = "Init" on replace{ println("The var a has changed to \"{a}\"");}a = "a new value";
2. Sequencesvar things = [["Java", "JavaFX"], ["Futebol", "Ronaldo"], [1,3,5,7]];
5 Características Legais
1. Bindvar a:Integer = 0;var b:Integer = 0;var c = bind a + b on replace{println("a is {a}, b is {b} and c is {c}");};a = 5; //c = 5b = 2; //c = 7a = 1; //c = 3b = 3; //c = 4
Uma DSL, Muitas Plataformas
Com Visage é possível criar interfaces para diversas plataformas. Atualmente temos:
● Vaadin● Android● JavaFX (VisageFX)
A maior vantagem é aprender uma só linguagem específica e reaproveitar o conhecimento em outras plataformas.
VisageFX
Visage no topo de JavaFX
Adaptamos Visage para ocultar verbosidade do Java com uma linguagem expressiva e específica para Interfaces com o Usuário
VisageFX
Aprendendo Mais
http://bit.ly/grupo_javafxhttp://javafx.com
Dúvidas