Porque você deveria usar CDI nos seus projetos Java! - JavaOne LA 2012 - Sérg...
Mobile em Java: Java ME e Java FX - Sergio Lopes 2009
1. Java ME
Sérgio Lopes
sergio.lopes@caelum.com.br
2. Java Micro Edition
• Versão reduzida do Java
• Dispositivos móveis
• celulares, pdas, set-top boxes, blue ray,
impressoras, ...
• muitos aparelhos diferentes
• Grande adoção no mercado
13. Desenvolvedor
• Toolkits e emuladores
• Sun WTK
• Nokia
• Samsung
• Siemens
• Motorola
• Blackberry
• ....
14. Desenvolvedor
• Maioria das ferramentas são Windows-only
• Sun WTK tem para Linux
• MacOS X, Solaris, BSDs esquecidos :(
15. Facilidade
• Muito fácil de programar
• Ter poucos recursos limita mas facilita
• Diferenças entre dispositivos tratada pela
VM
16. Portabilidade
• Dispositivos muito diferentes
• tamanhos, cores, recursos,
capacidades...
• ME tem que englobar todos
• Muitas diferenças de renderização
18. Nem tudo são flores
• Portável mas nem tanto
• Celulares com bugs
• Emuladores com bugs
• Diferenças entre aparelhos
• Tem que testar sempre tudo = CUSTO!
19. Nem tudo são flores
• Competição acirrada
• Flash Lite promete!
• Silverlight Mobile
• Plataformas fechadas
• iPhone!
28. Porque Swing e AWT
não vingaram?
• Difícil de desenvolver
• Faltam ferramentas boas
• Java é lento
• É feio
• Ninguém tem Java
29. Java é lento?
• Era. Uns 10 anos atrás.
• Grande? JRE tem 12 MB
• Tempo de startup alto
30. Java é lento?
• Era. Uns 10 anos atrás.
• Grande? JRE tem 12 MB
• Tempo de startup alto
Solução: Consumer JRE (coming soon)
31. Ninguém tem Java?
• 91% dos PCs do mundo têm Java
• 77% dos dispositivos têm Java
• 60% dos novos PCs já vem com Java
• Mac e Solaris vem com Java instalado
• Com OpenJDK, Linux deve vir em breve
35. Java FX
• Série de tecnologias para desenvolver RIAs
(Rich Internet Applications)
• Java FX Script
• Java FX Mobile
36. Java FX
• Concorrer com
• Adobe Flash, Flex, AIR
• Microsoft Silverlight
• Ajax etc
• É beta ainda!
37. Java FX Script
• Nova linguagem de programação
• Orientada a Objetos
• Sintaxe declarativa
• Poder do Java
38. Java FX Script
• Fácil.
• Fácil de desenvolver
• Fácil de criar ferramentas
39. Java FX Script
• Recursos BEM avançados
• Facilita MVC
• Data binding de Model com View
• Programação funcional
• Triggers
• Animações
• Queries em arrays
40. JavaFX Script
• Mesmos componentes do Swing padrão
• Permite uso de Java 2D, JMF, Java 3D e
outros
• É Java! Reaproveito tudo
42. Hello World em Swing
import java.awt.*;
import javax.swing.*;
public class HelloSwing {
public static void main(String[] args) {
Text
JFrame frame = new JFrame("Meu programa em Swing");
JLabel label = new JLabel("Ol‡ Mundo");
Dimension d = new Dimension(300, 50);
frame.setSize(d);
frame.add(label);
frame.setVisible(true);
}
}
43. Hello World em JavaFX
Frame {
title: "Meu programa em javafx"
width: 200
height: 50
visible: true
content: Label {
text: "Ol‡ mundo"
}
}
45. JavaFX Mobile
• Plataforma completa para mobile
• Sistema operacional baseado em Linux
• Máquina virtual Java logo em cima
• Aplicações Java
• (ex-SavaJe)
47. JavaFX Mobile
• Programar em JavaFX Script
• Use de APIs avançadas
• Recursos bacanas do aparelho
• Bluetooth, Motion Sensor, Touchscreen
48. JavaFX Mobile
• É uma plataforma
• como o Android
• Sun pretende licenciar para fabricantes
49. JavaFX Hoje
• Plataforma de desenvolvimento
• Linguagem de programação
• Contra-ataque no mercado Mobile
• Grande aposta da Sun
• Fácil e produtivo
50. JavaFX Amanhã
• Linguagem mais polida
• Mais componentes, Mais facilidades, Mais
recursos
• Ferramentas para designers
• Ferramentas para programadores
• Outros produtos
51. JavaFX Amanhã
• Linguagem mais polida
• Mais componentes, Mais facilidades, Mais
recursos
• Ferramentas para designers
• Ferramentas para programadores
• Outros produtos
Fique de olho no Java FX!