SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Downloaden Sie, um offline zu lesen
Plataforma Java x Plataforma .NET
                            Edição DF 2009

                           Tema 4
Aplicações desktop (GUI) e aplicações ricas para Internet (RIA)




    Visão geral da Java SE 6.0/7.0
          (AWT, Swing, ...)
JavaFX 1.2 para desktops e para Web


              José Raphael Teixeira Marques
            Mestrando em Informática pela UFPB
                 jose.raphael@di.ufpb.br
Edição DF 2009
Plataforma Java x Plataforma .NET                                                           Agenda
                                                                                 AWT / Swing
                                                                               Java SE 6.0 / 7.0
                                                                                    JavaFX
                                                                                 JavaFX Script
                                                                                Demonstração
                                                                        Interface Gráfica com JavaFX
                                                                                Os problemas
                                                                             Por onde começar?
                                                                                  E o futuro?
                                                                                  Conclusão
                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   2
Edição DF 2009
Plataforma Java x Plataforma .NET           AWT / Swing
                                               AWT (Abstract Window Toolkit)
                                                 Depende de código nativo
                                                 Visual do SO
                                                 Mais rápido
                                                 Mais simples


                                               Swing
                                                 Independente de código nativo
                                                 100% Java
                                                 Pluggable Look and Feel
                                                 Mais complexo


                                               Problema
                                                 Falta uma boa ferramenta para interfaces


                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   3
Edição DF 2009
Plataforma Java x Plataforma .NET           Java SE 6.0 / 7.0
                                             Java SE 6.0               Update 10
                                                 Java Kernel
                                                 Applets em             processo separado do Browser
                                                 Scripting
                                                 JavaFX


                                             Java SE 7.0
                                                 Melhorias em  concorrência
                                                 Swing Application Framework
                                                 Java Media Components
                                                 G1 Garbage Collector



                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   4
Edição DF 2009
Plataforma Java x Plataforma .NET           JavaFX




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   5
Edição DF 2009
Plataforma Java x Plataforma .NET           JavaFX
                                             Uma única  plataforma RIA para todas as telas
                                             Mercado de amplo alcance
                                             Workflow designer-desenvolvedor
                                             Runtime poderoso
                                             Liberdade do browser
                                             Compatibilidade com tecnologias Java
                                             Muito mais poderoso (e simples) que o Swing




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   6
Edição DF 2009
Plataforma Java x Plataforma .NET           JavaFX Script
                                             Um Java    melhorado
                                             Orientada a objetos e funcional
                                             Fácil leitura
                                             Inferência de tipos
                                             Sequences
                                             Binding e triggers
                                             Focado em criar interfaces




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   7
Edição DF 2009
Plataforma Java x Plataforma .NET




                                             Demonstração




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   8
Edição DF 2009
Plataforma Java x Plataforma .NET           Interface gráfica com JavaFX
                                            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);
                                              }
                                            }



                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   9
Edição DF 2009
Plataforma Java x Plataforma .NET           Interface gráfica com JavaFX
                                            Stage {
                                              title: "Hello World em JavaFX"
                                              width: 250 height: 80
                                              scene: Scene {
                                                 content: Text {
                                                    content: "Hello World!"
                                                    x: 10 y: 30
                                                    font : Font {
                                                       size : 24
                                                    }
                                                 }
                                              }
                                            }



                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   10
Edição DF 2009
Plataforma Java x Plataforma .NET           Interface gráfica com JavaFX
                                            ...
                                            content: [
                                                Circle {
                                                  centerX:125 centerY:125 radius:90
                                                  fill:Color.WHITE
                                                  stroke:Color.RED strokeWidth:2
                                                }
                                                Rectangle{
                                                  x:45 y:45 width:160 height:160
                                                  arcWidth:15 arcHeight:15
                                                  fill:Color.GREEN
                                                  opacity:0.8 rotate:15
                                                  effect:DropShadow{}
                                                }
                                            ]
                                            ...

                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   11
Edição DF 2009
Plataforma Java x Plataforma .NET           JavaFX Media




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   12
Edição DF 2009
Plataforma Java x Plataforma .NET           Suporte a SVG




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   13
Edição DF 2009
Plataforma Java x Plataforma .NET           Workflow designer-desenvolvedor




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   14
Edição DF 2009
Plataforma Java x Plataforma .NET           Formas e Preenchimentos




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)
Edição DF 2009
Plataforma Java x Plataforma .NET           Efeitos




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   16 16
Edição DF 2009
Plataforma Java x Plataforma .NET           Controles




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   17
Edição DF 2009
Plataforma Java x Plataforma .NET           Controles




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   18
Edição DF 2009
Plataforma Java x Plataforma .NET           Charts




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   19
Edição DF 2009
Plataforma Java x Plataforma .NET           Skinnable Controls




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   20
Edição DF 2009
Plataforma Java x Plataforma .NET           Integração com JEE




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   21
Edição DF 2009
Plataforma Java x Plataforma .NET           Os problemas
                                             Distribuição:
                                                 Carregamento do Applet
                                                 JavaWebStart em inglês
                                                 JavaFX Runtime online na 1ª vez
                                                 Java Runtime maior


                                             JavaFX Script
                                                 As vezesé preciso escrever muito
                                                 Mudanças de sintaxe
                                                 Não permite binding com objetos Java




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   22
Edição DF 2009
Plataforma Java x Plataforma .NET           Por onde começar?
                                             JavaFX
                                                 http://javafx.com/


                                             JavaFX Programing                          (with Passion!)
                                                 http://www.javapassion.com/javafx/


                                             JavaFX Developer Home
                                                 http://java.sun.com/javafx/




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   23
Edição DF 2009
Plataforma Java x Plataforma .NET           O que temos hoje?
                                             Windows, Linux, Mac
                                                                OS X e Solaris x86
                                             Symbian OS, Windows Mobile e Android


                                             JavaFX 1.2.1 SDK


                                             Netbeans IDE 6.7.1 para                               JavaFX 1.2

                                             JavaFX 1.2 Eclipse-plugin


                                             JavaFX 1.2 Production                             Suite



                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   24
Edição DF 2009
Plataforma Java x Plataforma .NET           DataBox
                                             www.reportmill.com/dbox/




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   25
Edição DF 2009
Plataforma Java x Plataforma .NET           JFXtras
                                             jfxtras.org




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   26
Edição DF 2009
Plataforma Java x Plataforma .NET           WidgetFX
                                             widgetfx.org




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   27
Edição DF 2009
Plataforma Java x Plataforma .NET           TwitterFX
                                             http://blogs.herod.net/javafx/twitterfx/




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   28
Edição DF 2009
Plataforma Java x Plataforma .NET           E o futuro?
                                             Investimento da                       Sun/Oracle

                                             Oracle quer a                   interface do OpenOffice em JavaFX

                                             JavaFX Mobile e JavaFX                               TV

                                             Java 7 +            JavaFX 1.3 + JavaFX Autoring Tool




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   29
Edição DF 2009
Plataforma Java x Plataforma .NET           JavaFX Authoring Tool




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   30
Edição DF 2009
Plataforma Java x Plataforma .NET           JavaFX Authoring Tool




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   31
Edição DF 2009
Plataforma Java x Plataforma .NET           JavaFX Authoring Tool




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   32
Edição DF 2009
Plataforma Java x Plataforma .NET           JavaFX Authoring Tool




                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   33
Edição DF 2009
Plataforma Java x Plataforma .NET           Conclusão
                                             Prós:
                                                 JavaFX temum grande potencial
                                                 Workflow designer-desenvolvedor
                                                 Ainda tem muito o que evoluir


                                             Contras:
                                                 Problema na distribuição
                                                 Ainda tem muito o que                        evoluir


                                             Dúvida:
                                                 JavaFX Authoring                  Tool?


                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   34
Edição DF 2009
Plataforma Java x Plataforma .NET           Contato
                                             Email:
                                                joseraphael@di.ufpb.br


                                             Twitter:
                                                @raphaelmarques


                                             Blog:
                                                raphaelmarques@wordpress.com


                                             Perguntas?



                                            © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)   35

Weitere ähnliche Inhalte

Was ist angesagt?

Introdução a Plataforma Java EE
Introdução a Plataforma Java EEIntrodução a Plataforma Java EE
Introdução a Plataforma Java EEEder Magalhães
 
Apresentação java
Apresentação javaApresentação java
Apresentação javamunosai
 
Conhecendo Java
Conhecendo JavaConhecendo Java
Conhecendo JavaTI Infnet
 
Programação em java linguagem, ap is, boas práticas e eclipse
Programação em java   linguagem, ap is, boas práticas e eclipseProgramação em java   linguagem, ap is, boas práticas e eclipse
Programação em java linguagem, ap is, boas práticas e eclipseFilipe Bezerra Sousa
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaÁlvaro Farias Pinheiro
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Raphael Marques
 
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...Rogério Moraes de Carvalho
 
Linguagem de Programação Java para Iniciantes
Linguagem de Programação Java para IniciantesLinguagem de Programação Java para Iniciantes
Linguagem de Programação Java para IniciantesOziel Moreira Neto
 
Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Aécio Costa
 
Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Emerson Saito
 
Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)Manoel Campos da Silva Filho
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaDaniel Brandão
 
Linguagem de java
Linguagem de javaLinguagem de java
Linguagem de javaGenique
 

Was ist angesagt? (20)

Introdução a Plataforma Java EE
Introdução a Plataforma Java EEIntrodução a Plataforma Java EE
Introdução a Plataforma Java EE
 
Linguagem de programação C# 4 e 5
Linguagem de programação C# 4 e 5Linguagem de programação C# 4 e 5
Linguagem de programação C# 4 e 5
 
Tutorial Java EE
Tutorial Java EETutorial Java EE
Tutorial Java EE
 
Apresentação java
Apresentação javaApresentação java
Apresentação java
 
Conhecendo Java
Conhecendo JavaConhecendo Java
Conhecendo Java
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Programação em java linguagem, ap is, boas práticas e eclipse
Programação em java   linguagem, ap is, boas práticas e eclipseProgramação em java   linguagem, ap is, boas práticas e eclipse
Programação em java linguagem, ap is, boas práticas e eclipse
 
Apostila java completo
Apostila java completoApostila java completo
Apostila java completo
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
Aplicações desktop (GUI) e aplicações ricas para internet (RIA)
 
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...
 
Aula 1
Aula 1Aula 1
Aula 1
 
Linguagem de Programação Java para Iniciantes
Linguagem de Programação Java para IniciantesLinguagem de Programação Java para Iniciantes
Linguagem de Programação Java para Iniciantes
 
Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!
 
Java20141215 17[1]
Java20141215 17[1]Java20141215 17[1]
Java20141215 17[1]
 
Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL Palestra Demoiselle V1.x no 11 FISL
Palestra Demoiselle V1.x no 11 FISL
 
Introdução ao Java
Introdução ao JavaIntrodução ao Java
Introdução ao Java
 
Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)
 
Aula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem JavaAula 2 - POO: Fundamentos da linguagem Java
Aula 2 - POO: Fundamentos da linguagem Java
 
Linguagem de java
Linguagem de javaLinguagem de java
Linguagem de java
 

Andere mochten auch

Andere mochten auch (7)

Internet
InternetInternet
Internet
 
Interface do windows
Interface do windowsInterface do windows
Interface do windows
 
Introdução a Informática - Arquitetura
Introdução a Informática - ArquiteturaIntrodução a Informática - Arquitetura
Introdução a Informática - Arquitetura
 
O que você produz além de código?
O que você produz além de código?O que você produz além de código?
O que você produz além de código?
 
Sistemas numéricos
Sistemas numéricosSistemas numéricos
Sistemas numéricos
 
Windows explorer
Windows explorerWindows explorer
Windows explorer
 
JavaFX
JavaFXJavaFX
JavaFX
 

Ähnlich wie JavaFX: Uma nova abordagem para interfaces gráficas ricas

Palestra Sepai Alfredofurtado Introducao Ao Javafx
Palestra Sepai Alfredofurtado Introducao Ao JavafxPalestra Sepai Alfredofurtado Introducao Ao Javafx
Palestra Sepai Alfredofurtado Introducao Ao Javafxalfredofurtado
 
Iniciação JSP!
Iniciação JSP!Iniciação JSP!
Iniciação JSP!JErickPPTs
 
Java Bahia Desenvolvimento Java Area1
Java Bahia Desenvolvimento Java Area1Java Bahia Desenvolvimento Java Area1
Java Bahia Desenvolvimento Java Area1guestc9a1c7
 
JavaFX - Uma visão Geral
JavaFX - Uma visão GeralJavaFX - Uma visão Geral
JavaFX - Uma visão GeralEder Nogueira
 
Java fx para o mercado embedded com raspberry pi
Java fx para o mercado embedded com raspberry piJava fx para o mercado embedded com raspberry pi
Java fx para o mercado embedded com raspberry piClaudiney Marques
 
Java: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoJava: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoPedro Cavalero
 
Java, historico e futuro
Java, historico e futuroJava, historico e futuro
Java, historico e futuroFabiano Souza
 
Capacitacao java aula-01-01-conceitos
Capacitacao java aula-01-01-conceitosCapacitacao java aula-01-01-conceitos
Capacitacao java aula-01-01-conceitosEliete Regina Souza
 
Desenvolvimento Java
 Desenvolvimento Java Desenvolvimento Java
Desenvolvimento JavaSerge Rehem
 
Java - Learn Once Use Anywhere
Java - Learn Once Use AnywhereJava - Learn Once Use Anywhere
Java - Learn Once Use AnywhereSerge Rehem
 
Jugday - Java Básico
Jugday - Java BásicoJugday - Java Básico
Jugday - Java BásicoPaloma Costa
 
Aula 01 O que é java
Aula 01   O que é javaAula 01   O que é java
Aula 01 O que é javaSergio Silva
 

Ähnlich wie JavaFX: Uma nova abordagem para interfaces gráficas ricas (20)

Palestra Sepai Alfredofurtado Introducao Ao Javafx
Palestra Sepai Alfredofurtado Introducao Ao JavafxPalestra Sepai Alfredofurtado Introducao Ao Javafx
Palestra Sepai Alfredofurtado Introducao Ao Javafx
 
Iniciação JSP!
Iniciação JSP!Iniciação JSP!
Iniciação JSP!
 
Java Bahia Desenvolvimento Java Area1
Java Bahia Desenvolvimento Java Area1Java Bahia Desenvolvimento Java Area1
Java Bahia Desenvolvimento Java Area1
 
JavaFX - Uma visão Geral
JavaFX - Uma visão GeralJavaFX - Uma visão Geral
JavaFX - Uma visão Geral
 
JavaFX 1.2
JavaFX 1.2JavaFX 1.2
JavaFX 1.2
 
JavaFX 1.2
JavaFX 1.2JavaFX 1.2
JavaFX 1.2
 
Java fx para o mercado embedded com raspberry pi
Java fx para o mercado embedded com raspberry piJava fx para o mercado embedded com raspberry pi
Java fx para o mercado embedded com raspberry pi
 
Java: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalhoJava: o que estudar para o mercado de trabalho
Java: o que estudar para o mercado de trabalho
 
Introdução ao java
Introdução ao javaIntrodução ao java
Introdução ao java
 
Java, historico e futuro
Java, historico e futuroJava, historico e futuro
Java, historico e futuro
 
Java -aula_01
Java  -aula_01Java  -aula_01
Java -aula_01
 
Capacitacao java aula-01-01-conceitos
Capacitacao java aula-01-01-conceitosCapacitacao java aula-01-01-conceitos
Capacitacao java aula-01-01-conceitos
 
JUDCon Brazil 2013
JUDCon Brazil 2013JUDCon Brazil 2013
JUDCon Brazil 2013
 
Aula 01 o que é java
Aula 01  o que é javaAula 01  o que é java
Aula 01 o que é java
 
JAVA
JAVA JAVA
JAVA
 
Desenvolvimento Java
 Desenvolvimento Java Desenvolvimento Java
Desenvolvimento Java
 
Compweek
CompweekCompweek
Compweek
 
Java - Learn Once Use Anywhere
Java - Learn Once Use AnywhereJava - Learn Once Use Anywhere
Java - Learn Once Use Anywhere
 
Jugday - Java Básico
Jugday - Java BásicoJugday - Java Básico
Jugday - Java Básico
 
Aula 01 O que é java
Aula 01   O que é javaAula 01   O que é java
Aula 01 O que é java
 

Mehr von Raphael Marques

Mehr von Raphael Marques (11)

Introdução ao JavaFX
Introdução ao JavaFXIntrodução ao JavaFX
Introdução ao JavaFX
 
Slides de PDI 2009 - Raphael Update 5
Slides de PDI 2009 - Raphael Update 5Slides de PDI 2009 - Raphael Update 5
Slides de PDI 2009 - Raphael Update 5
 
Mini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBMini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPB
 
Mini-curso JavaFX Aula2
Mini-curso JavaFX Aula2Mini-curso JavaFX Aula2
Mini-curso JavaFX Aula2
 
Mini-curso JavaFX Aula1
Mini-curso JavaFX Aula1Mini-curso JavaFX Aula1
Mini-curso JavaFX Aula1
 
slides PDI 2007 leonardo
slides PDI 2007 leonardoslides PDI 2007 leonardo
slides PDI 2007 leonardo
 
Slides PDI 2009 Raphael versao4
Slides PDI 2009 Raphael versao4Slides PDI 2009 Raphael versao4
Slides PDI 2009 Raphael versao4
 
Classes Internas
Classes InternasClasses Internas
Classes Internas
 
Operadores Java
Operadores JavaOperadores Java
Operadores Java
 
Minicurso Java && Cl
Minicurso Java && ClMinicurso Java && Cl
Minicurso Java && Cl
 
JavaFX
JavaFXJavaFX
JavaFX
 

JavaFX: Uma nova abordagem para interfaces gráficas ricas

  • 1. Plataforma Java x Plataforma .NET Edição DF 2009 Tema 4 Aplicações desktop (GUI) e aplicações ricas para Internet (RIA) Visão geral da Java SE 6.0/7.0 (AWT, Swing, ...) JavaFX 1.2 para desktops e para Web José Raphael Teixeira Marques Mestrando em Informática pela UFPB jose.raphael@di.ufpb.br
  • 2. Edição DF 2009 Plataforma Java x Plataforma .NET Agenda AWT / Swing Java SE 6.0 / 7.0 JavaFX JavaFX Script Demonstração Interface Gráfica com JavaFX Os problemas Por onde começar? E o futuro? Conclusão © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 2
  • 3. Edição DF 2009 Plataforma Java x Plataforma .NET AWT / Swing  AWT (Abstract Window Toolkit)  Depende de código nativo  Visual do SO  Mais rápido  Mais simples  Swing  Independente de código nativo  100% Java  Pluggable Look and Feel  Mais complexo  Problema  Falta uma boa ferramenta para interfaces © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 3
  • 4. Edição DF 2009 Plataforma Java x Plataforma .NET Java SE 6.0 / 7.0  Java SE 6.0 Update 10  Java Kernel  Applets em processo separado do Browser  Scripting  JavaFX  Java SE 7.0  Melhorias em concorrência  Swing Application Framework  Java Media Components  G1 Garbage Collector © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 4
  • 5. Edição DF 2009 Plataforma Java x Plataforma .NET JavaFX © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 5
  • 6. Edição DF 2009 Plataforma Java x Plataforma .NET JavaFX  Uma única plataforma RIA para todas as telas  Mercado de amplo alcance  Workflow designer-desenvolvedor  Runtime poderoso  Liberdade do browser  Compatibilidade com tecnologias Java  Muito mais poderoso (e simples) que o Swing © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 6
  • 7. Edição DF 2009 Plataforma Java x Plataforma .NET JavaFX Script  Um Java melhorado  Orientada a objetos e funcional  Fácil leitura  Inferência de tipos  Sequences  Binding e triggers  Focado em criar interfaces © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 7
  • 8. Edição DF 2009 Plataforma Java x Plataforma .NET  Demonstração © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 8
  • 9. Edição DF 2009 Plataforma Java x Plataforma .NET Interface gráfica com JavaFX 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); } } © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 9
  • 10. Edição DF 2009 Plataforma Java x Plataforma .NET Interface gráfica com JavaFX Stage { title: "Hello World em JavaFX" width: 250 height: 80 scene: Scene { content: Text { content: "Hello World!" x: 10 y: 30 font : Font { size : 24 } } } } © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 10
  • 11. Edição DF 2009 Plataforma Java x Plataforma .NET Interface gráfica com JavaFX ... content: [ Circle { centerX:125 centerY:125 radius:90 fill:Color.WHITE stroke:Color.RED strokeWidth:2 } Rectangle{ x:45 y:45 width:160 height:160 arcWidth:15 arcHeight:15 fill:Color.GREEN opacity:0.8 rotate:15 effect:DropShadow{} } ] ... © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 11
  • 12. Edição DF 2009 Plataforma Java x Plataforma .NET JavaFX Media © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 12
  • 13. Edição DF 2009 Plataforma Java x Plataforma .NET Suporte a SVG © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 13
  • 14. Edição DF 2009 Plataforma Java x Plataforma .NET Workflow designer-desenvolvedor © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 14
  • 15. Edição DF 2009 Plataforma Java x Plataforma .NET Formas e Preenchimentos © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB)
  • 16. Edição DF 2009 Plataforma Java x Plataforma .NET Efeitos © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 16 16
  • 17. Edição DF 2009 Plataforma Java x Plataforma .NET Controles © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 17
  • 18. Edição DF 2009 Plataforma Java x Plataforma .NET Controles © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 18
  • 19. Edição DF 2009 Plataforma Java x Plataforma .NET Charts © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 19
  • 20. Edição DF 2009 Plataforma Java x Plataforma .NET Skinnable Controls © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 20
  • 21. Edição DF 2009 Plataforma Java x Plataforma .NET Integração com JEE © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 21
  • 22. Edição DF 2009 Plataforma Java x Plataforma .NET Os problemas  Distribuição:  Carregamento do Applet  JavaWebStart em inglês  JavaFX Runtime online na 1ª vez  Java Runtime maior  JavaFX Script  As vezesé preciso escrever muito  Mudanças de sintaxe  Não permite binding com objetos Java © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 22
  • 23. Edição DF 2009 Plataforma Java x Plataforma .NET Por onde começar?  JavaFX  http://javafx.com/  JavaFX Programing (with Passion!)  http://www.javapassion.com/javafx/  JavaFX Developer Home  http://java.sun.com/javafx/ © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 23
  • 24. Edição DF 2009 Plataforma Java x Plataforma .NET O que temos hoje?  Windows, Linux, Mac OS X e Solaris x86  Symbian OS, Windows Mobile e Android  JavaFX 1.2.1 SDK  Netbeans IDE 6.7.1 para JavaFX 1.2  JavaFX 1.2 Eclipse-plugin  JavaFX 1.2 Production Suite © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 24
  • 25. Edição DF 2009 Plataforma Java x Plataforma .NET DataBox  www.reportmill.com/dbox/ © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 25
  • 26. Edição DF 2009 Plataforma Java x Plataforma .NET JFXtras  jfxtras.org © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 26
  • 27. Edição DF 2009 Plataforma Java x Plataforma .NET WidgetFX  widgetfx.org © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 27
  • 28. Edição DF 2009 Plataforma Java x Plataforma .NET TwitterFX  http://blogs.herod.net/javafx/twitterfx/ © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 28
  • 29. Edição DF 2009 Plataforma Java x Plataforma .NET E o futuro?  Investimento da Sun/Oracle  Oracle quer a interface do OpenOffice em JavaFX  JavaFX Mobile e JavaFX TV  Java 7 + JavaFX 1.3 + JavaFX Autoring Tool © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 29
  • 30. Edição DF 2009 Plataforma Java x Plataforma .NET JavaFX Authoring Tool © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 30
  • 31. Edição DF 2009 Plataforma Java x Plataforma .NET JavaFX Authoring Tool © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 31
  • 32. Edição DF 2009 Plataforma Java x Plataforma .NET JavaFX Authoring Tool © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 32
  • 33. Edição DF 2009 Plataforma Java x Plataforma .NET JavaFX Authoring Tool © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 33
  • 34. Edição DF 2009 Plataforma Java x Plataforma .NET Conclusão  Prós:  JavaFX temum grande potencial  Workflow designer-desenvolvedor  Ainda tem muito o que evoluir  Contras:  Problema na distribuição  Ainda tem muito o que evoluir  Dúvida:  JavaFX Authoring Tool? © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 34
  • 35. Edição DF 2009 Plataforma Java x Plataforma .NET Contato  Email: joseraphael@di.ufpb.br  Twitter: @raphaelmarques  Blog: raphaelmarques@wordpress.com  Perguntas? © 2009 JavaVersusDotNet.com.br, José Raphael Teixeira Marques (Mestrando em Informática pela UFPB) 35