JavaFX 1.2

Preview:

DESCRIPTION

Palestra sobre JavaFX 1.2 apresentada no Sun Day da II Semana da Computação da UFPB. Apresenta uma introdução sobre JavaFX e as novidades do JavaFX 1.2.

Citation preview

José Raphael Teixeira Marques Mestrando em Informática (UFPB)raphaelmarques.wordpress.comjoseraphael@di.ufpb.br

Introdução ao JavaFX

GUI com JavaFX

Novidades do JavaFX 1.2

Por onde começar?

Conclusões

2

3

4

Java “Efequis”?

JavaFX é uma linguagem?

Vou perder o que fiz em Java?

Porque não encontro material sobre JavaFX?

Por que não usar Swing?

Então JavaFX vai matar o Swing?

E a Oracle? O que pensa disso?

5

Uma única plataforma RIA para todas as telas

Mercado de amplo alcance

Workflow designer-desenvolvedor

Runtime poderoso

Liberdade do browser

Compatibilidade com tecnologias Java

6

Tipagem estática com inferência de tipos

Linguagem declarativa Orientada a Objetos

Tudo em JavaFX é uma expressão

Binding e Triggers

Sequências

Mesmo código para todas as telas

7

Introdução ao JavaFX

GUI com JavaFX

Novidades do JavaFX 1.2

Por onde começar?

Conclusões

8

9

public class HelloWorldSwing{

public static void main(String[] args){

JFrame frame =

new JFrame("HelloWorld Swing");

JLabel label =

new JLabel("Hello World");

frame.getContentPane().add(label);

frame.setDefaultCloseOperation(

JFrame.EXIT_ON_CLOSE);

frame.pack();

frame.setVisible(true);

}

}

10

Stage {title: "Hello World em JavaFX"width: 250height: 80scene: Scene {

content: Text {content: "Hello World!"x: 10y: 30font : Font {

size : 24}

}}

}

11

12

13

14

15

16

var x: Number; var px: Number;

var y: Number; var py: Number;

...

Rectangle{

x: bind x

y: bind y

...

onMousePressed: function(e: MouseEvent){

px = x;

py = y;

}

onMouseDragged: function(e: MouseEvent){

x = px + e.dragX;

y = px + e.dragY;

}

}

...

17

18

19

Introdução ao JavaFX

GUI com JavaFX

Novidades do JavaFX 1.2

Por onde começar?

Conclusões

20

21

22

23

ClipView:

24

Stack:

25

Tile:

26

Melhorias de performance:

Carregamento mais rápido no Desktop e Browser

Redução do tamanho do arquivo compilado

Outras novidades:

Suporte para RSS e ATOM feeds

OpenSolaris e Linux

Suporte a múltiplas telas

Armazenamento local

27

Classe Alert

Uso:

var result = Alert.question(“Do you want to continue?”);

28

Herança múltipla:

Modificador: mixin

Herança:

▪ Uma única classe normal

▪ Qualquer número de interfaces e mixins classes

Colisão de nome:

▪ É só não utilizar os atributos e funções em conflito.

29

first

in

init

into

inverse

last

on

postinit

replace

step

trigger

tween

where

with

Algumas palavras não são mais reservadas:

30

31

Distribuição:

Carregamento do Applet

JavaWebStart em inglês

JavaFX Runtime online na 1ª vez

Java Runtime maior

Integração com Java:

Bind com objetos Java

32

Introdução ao JavaFX

GUI com JavaFX

Novidades do JavaFX 1.2

Por onde começar?

Conclusões

33

JavaFX

http://javafx.com/

JavaFX Developer Home

http://java.sun.com/javafx/

JavaFX Programing (with Passion!)

http://www.javapassion.com/javafx/

34

Windows, Linux, Mac OS X e Solaris x86 Windows Mobile 6

JavaFX 1.2.1 SDK

Netbeans IDE 6.7.1 para JavaFX 1.2

JavaFX 1.2 Eclipse-plugin

JavaFX 1.2 Production Suite Plugin para Adobe Illustrator e Adobe Photoshop Media Factory

▪ JavaFX GraphicsViewer e SVG Converter

35

De terceiros: Framework MVC (Griffon) DataBox CRUDFx FXtras WidgetFX

Da Sun: Investimento da Sun/Oracle JavaFX Mobile e JavaFX TV Java Autoring Tool (vídeo no final)

36

Introdução ao JavaFX

GUI com JavaFX

Novidades do JavaFX 1.2

Por onde começar?

Conclusões

37

Prós:

JavaFX tem um grande potencial

Workflow designer-desenvolvedor

A comunidade está ativa

A corrida está só começando

Contras:

Ainda tem muito o que evoluir

Problema na distribuição

38

Vídeo

39

José Raphael Teixeira Marques Mestrando em Informática (UFPB)raphaelmarques.wordpress.comjoseraphael@di.ufpb.br