JavaOne 2007 – Mais sobre o JavaFX
Yara Senger – Especial para a Java Magazine, de São Francisco, EUA
Já falamos um pouco aqui sobre o JavaFX, uma família de tecnologias da Sun baseada em Java para criação de interfaces ricas para diversas plataformas de desenvolvimento – desde celulares e TVs, até aplicações desktop. Aqui falamos um pouco mais sobre JavaFX Script, a linguagem que é um dos pilares do JavaFX.
JavaFX Script é uma linguagem de scripting criada para ser altamente produtiva. Na General Session de terça-feira foi mostrado uma réplica do site da Motorola criado usando a tecnologia, com recursos parecidos com Flash, botões com movimentos, fade-in e fade-out, recursos 2D e 3D utilizando a nova linguagem da Sun.
Outro exemplo interessante foi uma aplicação chamada Iris, que permite fazer drag-and-drop de fotos do Flickr para o desktop e vice-versa, um slide show exibido em um cubo 3D e alguns recursos de edição de imagens. Veja mais sobre a aplicação em http://swinglabs.java.sun.com/iris/
Pequena demonstração do JavaFX na palestra de abertura: edição rápida e retorno visual imediato
Há muito em comum com Java no JavaFX Script: há pacotes, classes, herança, e podemos utilizar as APIs Java. Quando pensamos em uma linguagem de scripting, geralmente imaginamos algo como JavaScript, que é bastante parecida com Java sintaticamente. Mas neste caso, a sintaxe é bastante diferente. Veja um exemplo de código nessa linguagem:
import javafx.ui.*;
import javafx.ui.canvas.*;
import javafx.ui.filter.*;
Group {
content:
... // trecho de código omitido
Text {
x: 120
y: 50
content: "JavaFX"
font: Font {face: VERDANA, style: [ITALIC, BOLD], size: 60}
fill: LinearGradient {
x1: 0, y1: 0, x2: 0, y2: 1
stops:
[Stop {
offset: 0.2
color: red
},
Stop {
offset: 0.5
color: orange
},
Stop {
offset: .8
color: red
}]
}
filter:
[Glow {
amount: 0.1
},
Noise {
monochrome: true
distribution: 0
}]
},
View {
transform: translate(160, 200)
content: Button {
icon: Image { url: "javafxpad/images/duke.gif" }
text: "Click Me...!"
}
}]
}
Como se vê, é uma linguagem bastante diferente de Java, focada em criar uma experiência interativa no ambiente web. Você pode ver mais exemplos em http://openfx.dev.java.net.