Mobile em Java: Java ME e Java FX - Sergio Lopes 2009

2,179 views
1,914 views

Published on

Palestra do Sérgio Lopes na FAAC

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,179
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide































  • Demos















  • diferente do iphone




  • Mobile em Java: Java ME e Java FX - Sergio Lopes 2009

    1. 1. Java ME Sérgio Lopes sergio.lopes@caelum.com.br
    2. 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
    3. 3. Java ME • Configurations • CLDC • Connected Limited Device Configuration • CDC • Connected Device Configuration
    4. 4. Java ME • Profiles • MIDP • Personal Profile
    5. 5. Java ME • Extensões (proprietárias) • Nokia UI • ....
    6. 6. Java ME • Extensões Oficiais • Padronizadas pelo JCP • Bluetooth API (JSR82) • WMA (JSR 120 e 205) • MMAPI (JSR 135)
    7. 7. Java ME • Mobile 3D Graphics (JSR 184) • SVG (JSR 226 e 287) • Payment API (JSR 229) • Java TV • ....
    8. 8. Mercado • Java ME domina o mercado • Outras tecnologias • Brew • Flash Lite • Symbian C++ e outros não portáveis
    9. 9. Mercado • Maioria dos celulares tem Java ME • MIDP 2.0 é o mais comum • Última versão é MIDP 2.1 (N95 etc) • MIDP 3.0 já está em draft no JCP
    10. 10. Mercado • Palmtops e Smartphones • Palm OS • Windows Mobile (ipaqs...) • Blackberry
    11. 11. Mercado • Set-top box de TV Digital • Java TV • Mercado com maior potencial hoje
    12. 12. Desenvolvedor • IDE • Eclipse + Eclipse ME • Netbeans + Mobility Pack
    13. 13. Desenvolvedor • Toolkits e emuladores • Sun WTK • Nokia • Samsung • Siemens • Motorola • Blackberry • ....
    14. 14. Desenvolvedor • Maioria das ferramentas são Windows-only • Sun WTK tem para Linux • MacOS X, Solaris, BSDs esquecidos :(
    15. 15. Facilidade • Muito fácil de programar • Ter poucos recursos limita mas facilita • Diferenças entre dispositivos tratada pela VM
    16. 16. Portabilidade • Dispositivos muito diferentes • tamanhos, cores, recursos, capacidades... • ME tem que englobar todos • Muitas diferenças de renderização
    17. 17. Demo
    18. 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. 19. Nem tudo são flores • Competição acirrada • Flash Lite promete! • Silverlight Mobile • Plataformas fechadas • iPhone!
    20. 20. Futuro • MIDP 3.0 • Mais extensões • JavaFX Mobile
    21. 21. Obrigado! Voltamos já!
    22. 22. Java FX Sérgio Lopes sergio.lopes@caelum.com.br
    23. 23. Do que são feitos os Sites bonitos?
    24. 24. Do que são feitos os Sites bonitos? Java?
    25. 25. Porque o Flash é tão popular e os Applets não?
    26. 26. Porque o Ajax é tão popular e os Applets não?
    27. 27. Porque Swing e AWT não vingaram? • Difícil de desenvolver • Faltam ferramentas boas • Java é lento • É feio • Ninguém tem Java
    28. 28. Java é lento? • Era. Uns 10 anos atrás. • Grande? JRE tem 12 MB • Tempo de startup alto
    29. 29. Java é lento? • Era. Uns 10 anos atrás. • Grande? JRE tem 12 MB • Tempo de startup alto Solução: Consumer JRE (coming soon)
    30. 30. 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
    31. 31. Java é feio?
    32. 32. É difícil e faltam ferramentas
    33. 33. É difícil e faltam ferramentas Java FX !
    34. 34. Java FX • Série de tecnologias para desenvolver RIAs (Rich Internet Applications) • Java FX Script • Java FX Mobile
    35. 35. Java FX • Concorrer com • Adobe Flash, Flex, AIR • Microsoft Silverlight • Ajax etc • É beta ainda!
    36. 36. Java FX Script • Nova linguagem de programação • Orientada a Objetos • Sintaxe declarativa • Poder do Java
    37. 37. Java FX Script • Fácil. • Fácil de desenvolver • Fácil de criar ferramentas
    38. 38. Java FX Script • Recursos BEM avançados • Facilita MVC • Data binding de Model com View • Programação funcional • Triggers • Animações • Queries em arrays
    39. 39. JavaFX Script • Mesmos componentes do Swing padrão • Permite uso de Java 2D, JMF, Java 3D e outros • É Java! Reaproveito tudo
    40. 40. JavaFX Script • Sintaxe bem diferente do Java normal
    41. 41. 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); } }
    42. 42. Hello World em JavaFX Frame { title: "Meu programa em javafx" width: 200 height: 50 visible: true content: Label { text: "Ol‡ mundo" } }
    43. 43. Um código mais complexo Frame { width: 300 height: 100 centerOnScreen: true title: "Minha aplicacao JavaFX" visible: true content: Box { orientation: VERTICAL content: [ Label { text: "Nome" }, TextField { }, Button { text: "OK" action: operation() { // faz algo } } ] } }
    44. 44. JavaFX Mobile • Plataforma completa para mobile • Sistema operacional baseado em Linux • Máquina virtual Java logo em cima • Aplicações Java • (ex-SavaJe)
    45. 45. JavaFX Mobile • Smartphones parrudos • Combater • iPhone • Symbian S60 • Android
    46. 46. JavaFX Mobile • Programar em JavaFX Script • Use de APIs avançadas • Recursos bacanas do aparelho • Bluetooth, Motion Sensor, Touchscreen
    47. 47. JavaFX Mobile • É uma plataforma • como o Android • Sun pretende licenciar para fabricantes
    48. 48. JavaFX Hoje • Plataforma de desenvolvimento • Linguagem de programação • Contra-ataque no mercado Mobile • Grande aposta da Sun • Fácil e produtivo
    49. 49. JavaFX Amanhã • Linguagem mais polida • Mais componentes, Mais facilidades, Mais recursos • Ferramentas para designers • Ferramentas para programadores • Outros produtos
    50. 50. 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!
    51. 51. Obrigado!

    ×