v
setembro de 2009
Java além das aplicações
comerciais convencionais
Leonardo Simberg
Solution IT Architect – IBM
Professo...
2
Just Java
O que é uma aplicação Comercial Tradicional?
3
Just Java
Tecnologias normalmente utilizadas
Desktop
(Java FX, SWF,…)
Web
(JSF, Java FX,..)
Mobile
(JME,…)
Dados
(Derby,...
4
Just Java
Mas Java é muito mais! Veja alguns exemplos:
Desktop
(Java FX, SWF,…)
Web
(JSF, Java FX,..)
Mobile
(JME,…)
Dad...
5
Just Java
Mas Java é muito mais! Alguns exemplos:
Desktop
(Java FX, SWF,…)
Web
(JSF, Java FX,..)
Mobile
(JME,…)
Dados
(D...
6
Just Java
Blu-ray Disc
7
Just Java
Blu-ray Disc – O que é?
• Novo formato de mídia de óptica para eletrônicos de consumo,
computadores e vídeo ga...
8
Just Java
Uma Plataforma -> Dois modelos
• High-Definition Movie (HDMV) – Modelo criado através da extensão de
funcional...
9
Just Java
Visão geral do Blu-ray Disc Java (BD-J)
10
Just Java
Profiles do Blu-ray
11
Just Java
Alguns títulos com o BD-J
12
Just Java
Menus mais elaborados
* Menus podem ser abertos “em cima” do filme em execução sem interrupção!
13
Just Java
Criação de jogos
Use the embedded cross-hair to shoot either heroes or foes, in this rather lame, early game
...
14
Just Java
Criação de jogos
Ratatouille: Gusteau's Gourmet Game - © The Walt Disney Company.
15
Just Java
Algumas idéias de uso para o BD-J
• Menus elaborados
• Interatividade In-movie
• Jogos
• Persistência de Info...
16
Just Java
Impactos
• Um mercado potencial de mais de 1 Bilhão de aparelhos novos rodando a
Máquina Virtual Java (JVM);
...
17
Just Java
Referências
• Hollywood Studios and Blu-ray Disc Interactivity Using BD-J; Malik, Sumit;
http://www.blueboard...
18
Just Java
Jogos 3D em
Java
19
Just Java
Por que um jogo em Java deveria ser assim?
20
Just Java
Se ele pode ser assim?
21
Just Java
Principais mitos sobre jogos 3D em Java
• O Java é muito lento para ser usado em jogos 3D!
ERRADO! A partir d...
22
Just Java
Arquitetura típica de um jogo 3D em Java
Código do
Jogo
(Personalisado)
API de
Cálculos Físicos
Nativa
(ODE)
...
23
Just Java
Exemplo de arquitetura de um jogo em Java
24
Just Java
JMonkey Engine DEMO
25
Just Java
Inteligência Artificial e outros facilitadores
Enquanto deixamos os gráficos e sons para bibliotecas especial...
26
Just Java
Jogos MMOG (Massively Multiplayer Online Games)
• Grande quantidade de usuários simultâneos;
• Controle de in...
27
Just Java
Projeto Darkstar
What is Project Darkstar?
Project Darkstar is software infrastructure that aims to simplify ...
28
Just Java
Impactos
• Um mercado cada vez mais crescente de jogos sendo desenvolvidos em Java,
tanto a parte 3D, como a ...
29
Just Java
Referências
• Creating Games on the Java™ Platform with the jMonkeyEngine; Slack, Joshua; Herlitz,
Rikard; ht...
30
Just Java
Sistema Embarcados
com Java
31
Just Java
O que é um sistema embarcado (Embedded System)?
“Um sistema embarcado (ou sistema embutido) é um sistema micr...
32
Just Java
Sistemas prontos para uso: JStamp
• JStamp é um produto da Systronix pronto para uso, ele contem o Hardware e...
33
Just Java
Sun Spot
• Dispositivo programável em Java composto por
camadas
• A camada de sensor pode ser trocada, existe...
34
Just Java
Exemplo de Uso Avançado: Perrone Robotics
35
Just Java
Vários Sun Spot criam uma rede mesh
36
Just Java
Máquina Virtual para sistema embarcado da SUN: SquawK
37
Just Java
Máquina Virtual para sistema embarcado: NanoVM
• The NanoVM is a java virtual machine for the Atmel AVR ATmeg...
38
Just Java
Impactos
• Criação novas soluções cada vez mais baratas, inteligentes e conectadas;
• Junção de software e el...
39
Just Java
Referências
• Embedded Systems Glossary; Barr, Michael;
http://www.netrino.com/Embedded-Systems/Glossary
• Th...
v
setembro de 2009
Java além das aplicações
comerciais convencionais
Leonardo Simberg
Solution IT Architect – IBM
Professo...
Próximos SlideShares
Carregando em…5
×

Java alem das aplicacoes comerciais convencionais

276 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
276
No SlideShare
0
A partir de incorporações
0
Número de incorporações
10
Ações
Compartilhamentos
0
Downloads
5
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Java alem das aplicacoes comerciais convencionais

  1. 1. v setembro de 2009 Java além das aplicações comerciais convencionais Leonardo Simberg Solution IT Architect – IBM Professor Pós-Graduação - IBTA leosimberg@gmail.com
  2. 2. 2 Just Java O que é uma aplicação Comercial Tradicional?
  3. 3. 3 Just Java Tecnologias normalmente utilizadas Desktop (Java FX, SWF,…) Web (JSF, Java FX,..) Mobile (JME,…) Dados (Derby, Hibernate,..) Integração (WS,REST, EAI…)
  4. 4. 4 Just Java Mas Java é muito mais! Veja alguns exemplos: Desktop (Java FX, SWF,…) Web (JSF, Java FX,..) Mobile (JME,…) Dados (Derby, Hibernate,..) Integração (WS,REST, EAI…) Real Time (JSR 1 – RTSJ) Robótica (MAX,…) Visualização (Java 2D, Java 3D,..) Inteligencia Artificial (JOONE,…) Java Card SOA (SCA, SDO,…) Processos (BPM, Workflow,..) Cloud Computing (SAS,..) Sistemas Distribuídos (Grid, Javaspace,…) Orientação a aspectos (AspectJ,…) TV Digital (Java TV, Xlet,…) Blu-Ray (BDJ) Games 3D (JMonkey, JOGL,...) Sistemas Embarcados (JSTAMP,SPOT,..) Massivamente Paralela (HPC, Concurrent,…)
  5. 5. 5 Just Java Mas Java é muito mais! Alguns exemplos: Desktop (Java FX, SWF,…) Web (JSF, Java FX,..) Mobile (JME,…) Dados (Derby, Hibernate,..) Integração (WS,REST, EAI…) Real Time (JSR 1 – RTSJ) Robótica (MAX,…) Visualização (Java 2D, Java 3D,..) Inteligencia Artificial (JOONE,…) Java Card SOA (SCA, SDO,…) Processos (BPM, Workflow,..) Cloud Computing (SAS,..) Sistemas Distribuídos (Grid, Javaspace,…) Orientação a aspectos (AspectJ,…) TV Digital (Java TV, Xlet,…) Blu-Ray (BDJ) Games 3D (JMonkey, JOGL,...) Sistemas Embarcados (JSTAMP,SPOT,..) Massivamente Paralela (HPC, Concurrent,…)
  6. 6. 6 Just Java Blu-ray Disc
  7. 7. 7 Just Java Blu-ray Disc – O que é? • Novo formato de mídia de óptica para eletrônicos de consumo, computadores e vídeo games (PS3). • Excelente qualidade de áudio e vídeo: • Alta capacidade • 25GB (single layer) / 50GB (double layer) • Futuramente 200GB (multi-layer) 352x240TV analógica: 720x480DVD: 1920x1080Blu-ray Disc:
  8. 8. 8 Just Java Uma Plataforma -> Dois modelos • High-Definition Movie (HDMV) – Modelo criado através da extensão de funcionalidades do DVD. • Blu-ray Disc Java (BD-J) – Modelo baseado em uma plataforma completamente programável com suporte a conectividade e novos modos de interação. * Todos os aparelhos compatíveis com Blu-ray devem suportar ambos os modelos
  9. 9. 9 Just Java Visão geral do Blu-ray Disc Java (BD-J)
  10. 10. 10 Just Java Profiles do Blu-ray
  11. 11. 11 Just Java Alguns títulos com o BD-J
  12. 12. 12 Just Java Menus mais elaborados * Menus podem ser abertos “em cima” do filme em execução sem interrupção!
  13. 13. 13 Just Java Criação de jogos Use the embedded cross-hair to shoot either heroes or foes, in this rather lame, early game from Fox Studios for The League of Extraordinary Gentlemen. © 20th Century Fox Studios.
  14. 14. 14 Just Java Criação de jogos Ratatouille: Gusteau's Gourmet Game - © The Walt Disney Company.
  15. 15. 15 Just Java Algumas idéias de uso para o BD-J • Menus elaborados • Interatividade In-movie • Jogos • Persistência de Informações • Download de conteúdo • Comercio eletrônico associado com o filme • Download de legendas • Eventos sincronizados • Compartilhamento de experiências em comunidades • Versatilidade de design • Internet Banking
  16. 16. 16 Just Java Impactos • Um mercado potencial de mais de 1 Bilhão de aparelhos novos rodando a Máquina Virtual Java (JVM); • Milhares de títulos que podem ser incrementados com Java, abrindo um grande mercado para desenvolvedores; • Uma nova plataforma para comercio eletrônico interativo, onde você pode comprar os objetos que estão aparecendo no filme! • Novo método de integração entre os usuários sem a necessidade de um desktop.
  17. 17. 17 Just Java Referências • Hollywood Studios and Blu-ray Disc Interactivity Using BD-J; Malik, Sumit; http://www.blueboard.com/bluray/pdf/2007_5_23_tv_kickoff.pdf • Blu-ray BD-J Application Development using Java ME; http://www.blueboard.com/bluray/
  18. 18. 18 Just Java Jogos 3D em Java
  19. 19. 19 Just Java Por que um jogo em Java deveria ser assim?
  20. 20. 20 Just Java Se ele pode ser assim?
  21. 21. 21 Just Java Principais mitos sobre jogos 3D em Java • O Java é muito lento para ser usado em jogos 3D! ERRADO! A partir do Java 1.4.2 o Java resolveu os principais problemas de desempenho, além de grande parte do “trabalho pesado” do processamento nos jogos é feito pelo hardware, principalmente pelas placas gráficas. • Falta de qualidade visual e sonora! ERRADO! O Java contêm APIs gráficas poderosas como Java 3D e Java 2D, além de ser integrado com OpenGL e DirectX. E possui recursos poderosos de audio através da integração com o OpenAL. Pergunta: Será que Java conseguirá a curto prazo ser mais poderoso ou igualar as Engines em C, como por exemplo a Unreal? Por que?
  22. 22. 22 Just Java Arquitetura típica de um jogo 3D em Java Código do Jogo (Personalisado) API de Cálculos Físicos Nativa (ODE) API Áudio Nativa (OpenAL) Interface de Entrada Nativa + Java (JInput) API Gráfica Nativa (OpenGL) Wrapper Java + Utilitários (LWJGL) Controle de Jogo (JMonkey) Wrapper Java (JME-Physics)
  23. 23. 23 Just Java Exemplo de arquitetura de um jogo em Java
  24. 24. 24 Just Java JMonkey Engine DEMO
  25. 25. 25 Just Java Inteligência Artificial e outros facilitadores Enquanto deixamos os gráficos e sons para bibliotecas especializadas em C/Assembler, podemos nos preocupar com o enredo do jogo e a inteligência artificial que pode ser desenvolvida de mais alto nível, como o Java. Existem diversos algoritmos e api’s em java: • JSR94 – Java Rule Engine (JESS, JBOSS DROOLS) • JMonkey, LWJGL, JME-Physics • Reconhecimento de Voz • Reconhecimento de Vídeo e Movimento • Sintetização de voz • Comunicação
  26. 26. 26 Just Java Jogos MMOG (Massively Multiplayer Online Games) • Grande quantidade de usuários simultâneos; • Controle de interação entre usuários e objetos em um mesmo espaço; • Gerenciamento de comunicação; • Segurança; • Velocidade; • Tolerância a falhas; • Baixa latência; • Alta capacidade de processamento. Servidor central
  27. 27. 27 Just Java Projeto Darkstar What is Project Darkstar? Project Darkstar is software infrastructure that aims to simplify the development and operation of massively scalable online games, virtual worlds, and social networking applications. Originally created by Sun Microsystems, it is today advanced as an open source project through the Project Darkstar Community. What problems does Project Darkstar solve? Project Darkstar is designed to help developers and operators avoid a range of serious, yet typical, problems associated with massive scale online games today, including zone overloading, data corruption, and server under-utilization. In addition, Project Darkstar will enable developers to support new dimensions of play such as evolvable virtual worlds and very large scale battlefields. ** Informações extraídas do site do projeto Darkstar, http://www.projectdarkstar.com/
  28. 28. 28 Just Java Impactos • Um mercado cada vez mais crescente de jogos sendo desenvolvidos em Java, tanto a parte 3D, como a parte server; • Criação de interfaces mais ricas para os sistemas comerciais desenvolvidos em Java; • Avanço nas técnicas de Inteligência Artificial que podem ser utilizadas em outras áreas, como por exemplo o Algorithm Trade no mercado de ações; • Uso de mundos virtuais dos MMOGs para outros usos, como gerenciamento/fechamento de compra e vendas de ações para Bolsas de Valores;
  29. 29. 29 Just Java Referências • Creating Games on the Java™ Platform with the jMonkeyEngine; Slack, Joshua; Herlitz, Rikard; http://developers.sun.com/learning/javaoneonline/2008/pdf/TS-5711.pdf • JMonkeyEngine; http://www.jMonkeyEngine.com • Jogos 3D na Prática; Mundo Java; número 24 • Project Darkstar; http://www.projectdarkstar.com/ Editora Apress: http://www.apress.com/book/view/1590598172 Versão online: http://books.google.com/books?id=jL_yT-AZK- 8C&pg=PA10&lpg=PA10&dq=java+3dgames&source=web&ots=Ipg5xX 2Ahx&sig=LmjLd_DitZUr- zz4ThkCatc8nE&hl=en&sa=X&oi=book_result&resnum=9&ct=result
  30. 30. 30 Just Java Sistema Embarcados com Java
  31. 31. 31 Just Java O que é um sistema embarcado (Embedded System)? “Um sistema embarcado (ou sistema embutido) é um sistema microprocessado no qual o computador é completamente encapsulado ou dedicado ao dispositivo ou sistema que ele controla. Diferente de computadores de propósito geral, como o computador pessoal, um sistema embarcado realiza um conjunto de tarefas predefinidas, geralmente com requisitos específicos. “; Wikipedia
  32. 32. 32 Just Java Sistemas prontos para uso: JStamp • JStamp é um produto da Systronix pronto para uso, ele contem o Hardware e software (VM) já implementado em um dispositivo comercial de aproximadamente $150 pronto para uso. Este pode processar mais de 3 milhões de byte codes Java por segundo.
  33. 33. 33 Just Java Sun Spot • Dispositivo programável em Java composto por camadas • A camada de sensor pode ser trocada, existe uma placa demo que contém os seguintes elementos: • Acelerômetro • Sensor de luz • Sensor de temperatura • Botões do tipo push buttons • 8 LEDs RGB • 6 Entradas analógicas • 5 Entradas/Saídas de uso geral • 4 Saídas de alta corrente
  34. 34. 34 Just Java Exemplo de Uso Avançado: Perrone Robotics
  35. 35. 35 Just Java Vários Sun Spot criam uma rede mesh
  36. 36. 36 Just Java Máquina Virtual para sistema embarcado da SUN: SquawK
  37. 37. 37 Just Java Máquina Virtual para sistema embarcado: NanoVM • The NanoVM is a java virtual machine for the Atmel AVR ATmega8 CPU, the member of the AVR CPU family used e.g. in the DLR Asuro robot, manufactured by AREXX engineering. With the NanoVM, the Asuro can be programmed in the popular Java language using the standard Sun JDK. The NanoVM and its tools are distributed under the GPL and can be used on other AVR based systems as well.
  38. 38. 38 Just Java Impactos • Criação novas soluções cada vez mais baratas, inteligentes e conectadas; • Junção de software e eletrônica, melhorando a interação dos aparelhos comuns como Geladeira, Carro, Máquina de Lavar, Brinquedos até sistemas industriais como Máquinas Operatrizes e Robôs; • Um mercado crescente de desenvolvimento embarcados e Java é um grande candidato, pois as aplicações estão ficando cada vez mais complexas, mais conectadas e os microcontroladores estão cada vez mais rápidos; • Desenvolvimento de novas ferramentas de desenvolvimento e metodologias;
  39. 39. 39 Just Java Referências • Embedded Systems Glossary; Barr, Michael; http://www.netrino.com/Embedded-Systems/Glossary • The Nano VM; http://www.harbaum.org/till/nanovm/index.shtml • JStamp; http://www.jstamp.com/ • Project Sun SPOT: A Java Technology-Enabled Platform for Ubiquitous Computing; http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS- 6495&yr=2008&track=javame
  40. 40. v setembro de 2009 Java além das aplicações comerciais convencionais Leonardo Simberg Solution IT Architect – IBM Professor Pós-Graduação - IBTA leosimberg@gmail.com

×