SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
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
                  joseraphael@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

Mais conteúdo relacionado

Mais procurados

JavaFX: Desktop para desenvolvedores WEB
JavaFX: Desktop para desenvolvedores WEBJavaFX: Desktop para desenvolvedores WEB
JavaFX: Desktop para desenvolvedores WEBjesuinoPower
 
JavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma JavaJavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma JavajesuinoPower
 
Criando aplicações java fx em minutos
Criando aplicações java fx em minutosCriando aplicações java fx em minutos
Criando aplicações java fx em minutosBruno Oliveira
 
Rest web services com Java
Rest web services com JavaRest web services com Java
Rest web services com JavajesuinoPower
 
Chega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidChega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidBruno Oliveira
 
Aplicações ricas com JavaFX 2
Aplicações ricas com JavaFX 2Aplicações ricas com JavaFX 2
Aplicações ricas com JavaFX 2Claudiney Marques
 
Java não é tão difícil quanto parece
Java não é tão difícil quanto pareceJava não é tão difícil quanto parece
Java não é tão difícil quanto parecejesuinoPower
 
Introdução ao LiveOak
Introdução ao LiveOakIntrodução ao LiveOak
Introdução ao LiveOakjesuinoPower
 
Java, NetBeans e Orientação a Objetos
Java, NetBeans e Orientação a ObjetosJava, NetBeans e Orientação a Objetos
Java, NetBeans e Orientação a ObjetosJoão Longo
 
JavaFX: Abordagem Prática
JavaFX: Abordagem PráticaJavaFX: Abordagem Prática
JavaFX: Abordagem PráticaEder Magalhães
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos JavaMarcio Marinho
 

Mais procurados (19)

JavaFX: Desktop para desenvolvedores WEB
JavaFX: Desktop para desenvolvedores WEBJavaFX: Desktop para desenvolvedores WEB
JavaFX: Desktop para desenvolvedores WEB
 
Javafx
JavafxJavafx
Javafx
 
JavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma JavaJavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma Java
 
Criando aplicações java fx em minutos
Criando aplicações java fx em minutosCriando aplicações java fx em minutos
Criando aplicações java fx em minutos
 
Rest web services com Java
Rest web services com JavaRest web services com Java
Rest web services com Java
 
Chega de lendas! JavaFX em Android
Chega de lendas! JavaFX em AndroidChega de lendas! JavaFX em Android
Chega de lendas! JavaFX em Android
 
JavaFX 1.2
JavaFX 1.2JavaFX 1.2
JavaFX 1.2
 
Aplicações ricas com JavaFX 2
Aplicações ricas com JavaFX 2Aplicações ricas com JavaFX 2
Aplicações ricas com JavaFX 2
 
Educação e certificação na Plataforma .NET
Educação e certificação na Plataforma .NETEducação e certificação na Plataforma .NET
Educação e certificação na Plataforma .NET
 
Ria e Java FX
Ria e Java FXRia e Java FX
Ria e Java FX
 
Java não é tão difícil quanto parece
Java não é tão difícil quanto pareceJava não é tão difícil quanto parece
Java não é tão difícil quanto parece
 
Introdução ao LiveOak
Introdução ao LiveOakIntrodução ao LiveOak
Introdução ao LiveOak
 
Java, NetBeans e Orientação a Objetos
Java, NetBeans e Orientação a ObjetosJava, NetBeans e Orientação a Objetos
Java, NetBeans e Orientação a Objetos
 
NetBeans: a IDE que você precisa
NetBeans: a IDE que você precisaNetBeans: a IDE que você precisa
NetBeans: a IDE que você precisa
 
JavaFX: Abordagem Prática
JavaFX: Abordagem PráticaJavaFX: Abordagem Prática
JavaFX: Abordagem Prática
 
Mini aula-java
Mini aula-javaMini aula-java
Mini aula-java
 
Desenvolvimento de Aplicações
Desenvolvimento de AplicaçõesDesenvolvimento de Aplicações
Desenvolvimento de Aplicações
 
Apostila de Fundamentos Java
Apostila de Fundamentos JavaApostila de Fundamentos Java
Apostila de Fundamentos Java
 
Java modulo 01 - Introdução
Java modulo 01 - IntroduçãoJava modulo 01 - Introdução
Java modulo 01 - Introdução
 

Destaque

Mini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBMini-curso JavaFX Aula3 UFPB
Mini-curso JavaFX Aula3 UFPBRaphael Marques
 
Serviços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e JavaServiços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e JavaMySQL Brasil
 
Como ingressar no mercado de Machine Learning
Como ingressar no mercado de Machine LearningComo ingressar no mercado de Machine Learning
Como ingressar no mercado de Machine LearningGabriel Cypriano Saca
 
Aprendizado de Máquinas com Azure Machine Learning e R
Aprendizado de Máquinas com Azure Machine Learning e RAprendizado de Máquinas com Azure Machine Learning e R
Aprendizado de Máquinas com Azure Machine Learning e RDiego Nogare
 
Introdução ao Machine Learning para Hackers
Introdução ao Machine Learning para HackersIntrodução ao Machine Learning para Hackers
Introdução ao Machine Learning para HackersGabriel Cypriano Saca
 
Aplicações Práticas de Machine Learning
Aplicações Práticas de Machine LearningAplicações Práticas de Machine Learning
Aplicações Práticas de Machine LearningLuiz Costa
 

Destaque (17)

Introdução ao JavaFX
Introdução ao JavaFXIntrodução ao JavaFX
Introdução ao JavaFX
 
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
 
JavaFX
JavaFXJavaFX
JavaFX
 
JavaFX
JavaFXJavaFX
JavaFX
 
Classes Internas
Classes InternasClasses Internas
Classes Internas
 
Operadores Java
Operadores JavaOperadores Java
Operadores Java
 
Java 16 Jdbc
Java 16 JdbcJava 16 Jdbc
Java 16 Jdbc
 
Serviços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e JavaServiços Escaláveis e de Alta Performance com MySQL e Java
Serviços Escaláveis e de Alta Performance com MySQL e Java
 
Tutorial JavaFX simples
Tutorial JavaFX simplesTutorial JavaFX simples
Tutorial JavaFX simples
 
Java
JavaJava
Java
 
Como ingressar no mercado de Machine Learning
Como ingressar no mercado de Machine LearningComo ingressar no mercado de Machine Learning
Como ingressar no mercado de Machine Learning
 
Aprendizado de Máquinas com Azure Machine Learning e R
Aprendizado de Máquinas com Azure Machine Learning e RAprendizado de Máquinas com Azure Machine Learning e R
Aprendizado de Máquinas com Azure Machine Learning e R
 
Introdução ao Machine Learning para Hackers
Introdução ao Machine Learning para HackersIntrodução ao Machine Learning para Hackers
Introdução ao Machine Learning para Hackers
 
Machine Learning - Introdução e Aplicações
Machine Learning - Introdução e AplicaçõesMachine Learning - Introdução e Aplicações
Machine Learning - Introdução e Aplicações
 
Aplicações Práticas de Machine Learning
Aplicações Práticas de Machine LearningAplicações Práticas de Machine Learning
Aplicações Práticas de Machine Learning
 

Semelhante a JavaFX: Uma plataforma RIA para interfaces ricas

Semelhante a JavaFX: Uma plataforma RIA para interfaces ricas (20)

Linguagem de programação Java 6, 7 e 8
Linguagem de programação Java 6, 7 e 8Linguagem de programação Java 6, 7 e 8
Linguagem de programação Java 6, 7 e 8
 
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
 
Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!
 
JavaFX 1.2
JavaFX 1.2JavaFX 1.2
JavaFX 1.2
 
Conhecendo Java
Conhecendo JavaConhecendo Java
Conhecendo Java
 
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
 
Tutorial Java EE
Tutorial Java EETutorial Java EE
Tutorial Java EE
 
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
 
Academia java intensivo
Academia java intensivoAcademia java intensivo
Academia java intensivo
 
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
 

Mais de Raphael Marques

Introdução a Informática - Arquitetura
Introdução a Informática - ArquiteturaIntrodução a Informática - Arquitetura
Introdução a Informática - ArquiteturaRaphael Marques
 
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?Raphael Marques
 
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
 
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 5Raphael Marques
 
slides PDI 2007 leonardo
slides PDI 2007 leonardoslides PDI 2007 leonardo
slides PDI 2007 leonardoRaphael Marques
 
Slides PDI 2009 Raphael versao4
Slides PDI 2009 Raphael versao4Slides PDI 2009 Raphael versao4
Slides PDI 2009 Raphael versao4Raphael Marques
 

Mais de Raphael Marques (11)

Sistemas numéricos
Sistemas numéricosSistemas numéricos
Sistemas numéricos
 
Windows explorer
Windows explorerWindows explorer
Windows explorer
 
Interface do windows
Interface do windowsInterface do windows
Interface do windows
 
Internet
InternetInternet
Internet
 
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?
 
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)
 
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
 
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
 
Minicurso Java && Cl
Minicurso Java && ClMinicurso Java && Cl
Minicurso Java && Cl
 

JavaFX: Uma plataforma RIA para interfaces 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 joseraphael@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