Your SlideShare is downloading. ×
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Desenvolvimento RIA com Java
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Desenvolvimento RIA com Java

815

Published on

Palestra apresentada na Semana de Engenharia de Software do Instituto Infnet.

Palestra apresentada na Semana de Engenharia de Software do Instituto Infnet.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
815
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Desenvolvimento RIA com Java
  • 2. Apresentações
    • Armênio Cardoso.
      • Consultor e Arquiteto de Sistemas.
      • Professor das Formações Java do Instituto Infnet.
    • Tópicos da Palestra:
      • Antecedentes.
      • O Que é RIA?
      • Experiências.
      • Perspectivas.
      • Conclusões.
  • 3. Antecedentes
    • Paradigmas Pré-web – evolução:
    Redes de Micros e Emuladores 70 80 90 Mainframe Cliente-Servidor
  • 4. Antecedentes
    • Paradigmas Pré-web - década de 90:
      • Visual Basic.
      • Delphi.
      • Foxpro.
      • Oracle Forms.
      • PowerBuilder.
      • Centura.
  • 5. Antecedentes
    • Paradigmas Pré-web - características:
      • Aplicações gráficas com componentes visuais complexos “descendentes” do sistema operacional.
      • Fat-client: necessidade de instalação do módulo cliente em cada máquina.
      • Base de dados centralizada.
  • 6. Antecedentes
    • Nasce a Web.
      • Thin-client: aplicações usando HTML e alguma linguagem “embutida” no servidor web.
        • Python (1991).
        • Ruby (1993).
        • Lua (1993).
        • PHP (1995).
        • Coldfusion (1995).
        • ASP (1996).
  • 7. Antecedentes
    • HTML serve para construir telas de aplicações?
  • 8. O Que é RIA?
    • Rich Internet Application.
      • São Aplicações Web que têm características e funcionalidades de softwares tradicionais do tipo Desktop.
      • O termo RIA foi introduzido pela Macromedia em março de 2002 , embora o seu conceito já tenha tido outras denominações anteriores.
      • Remote Scripting, pela Microsoft, em 1998.
      • X Internet, pela Forrester Research em Outubro de 2000 .
  • 9. O Que é RIA?
      • RIA típicos transferem todo o processamento da interface para o navegador da internet, mantendo a maior parte dos dados no servidor de aplicação.
      • X
      • Aplicações web tradicionais centralizam todo seu código em torno de uma arquitetura cliente-servidor e um thin-client baseado em telas HTML.
  • 10. Experiências
    • Várias experiências foram feitas entre 1999 e 2010:
      • Applets Java.
      • YUI + DWR.
      • JQuery + DWR.
      • JavaFX, GWT, Vaadin...
    • Várias lições foram tiradas dessas experiências...
  • 11. Experiências
    • Applets Java.
  • 12. Experiências
    • Lições Aprendidas:
      • Bom conjunto de componentes visuais.
        • AWT é muito básico, mas o Swing apresenta-se como uma biblioteca gráfica completa, com todos os componentes desejáveis.
      • Carga “Pesada” = demora para carregar.
      • Depende de runtime.
      • Poucos editores visuais = trabalhoso.
      • Excelente opção ainda hoje para problemas especiais:
        • Impressão de código de barras.
        • Interface com webcam.
        • Assinatura Digital de Documentos.
  • 13. Experiências
    • DWR – Direct Web Remoting.
  • 14. Experiências
    • Arquivo XML para mapear as classes Java em objetos JavaScript .
  • 15. Experiências
    • Resultado: acesso remoto à classe Java através de objeto JavaScript.
  • 16. Experiências
    • Problema encontrado: biblioteca de componentes visuais.
  • 17. Experiências
    • Solução encontrada – Yahoo! User Interface Library.
  • 18. Experiências
    • Yahoo! DataTable.
  • 19. Experiências
    • Lições Aprendidas:
      • DWR – Framework altamente estável e funcional.
      • YUI – totalmente baseado em JavaScript = muito trabalhoso, depuração difícil, editor incipiente.
      • Usuário Final muito feliz.
      • Equipe de Desenvolvimento exausta.
  • 20. Experiências
    • JQuery – “projetado para mudar a forma com que você escreve JavaScript”.
  • 21. Experiências
    • Lições Aprendidas:
      • JQuery realmente simplificou a programação com JavaScript.
      • Novos editores melhoraram a forma de codificar.
      • Firefox com Firebug: depuração mais fácil.
      • Construção de aplicações híbridas = Struts + DWR + JQuery.
      • Componentes visuais “espalhados” = não há um padrão.
  • 22. Perspectivas
    • Quero o meu VB de volta!
      • Devido ao amadurecimento das técnicas de programação web, verifica-se uma enorme distância entre os “velhos” aplicativos gráficos e o que está se fazendo hoje em dia.
      • Busca-se uma solução “integrada” que combine um bom conjunto de componentes visuais com a chamada remota de classes Java.
  • 23. Perspectivas
    • Pontos a se Considerar:
      • Onipresença do JavaScript nos browsers.
      • Plugin or not Plugin?
        • Applets Java.
        • JavaFx.
        • Adobe Flex.
      • Produtividade na construção de telas.
      • Conjunto de componentes visuais completo.
  • 24. Perspectivas
    • Duas linhas se apresentam:
      • Plataformas que se baseiam em plugins e Java no Servidor.
        • Applets são muito “pesados”.
        • Adobe Flex usa uma linguagem própria.
        • JavaFx tem uma proposta parecida com o Flex.
      • Plataformas que se baseiam em HTML e JavaScript e Java no Servidor.
        • A grande maioria dos browsers rodam JavaScript.
        • O desenvolvedor programa as telas em Java!
  • 25. Perspectivas
    • O desenvolvedor programa as telas em Java!
      • Client-centric Ajax Frameworks:
        • Google Web Toolkit.
        • SmartGWT.
      • Server-centric Ajax Frameworks:
        • ZK Direct RIA.
        • Vaadin.
  • 26. Perspectivas
    • Server X Client Centric Frameworks:
      • Server-centric: estado e lógica de controle ficam no servidor – thin-client (189Kbytes).
      • Client-centric: compila código Java em JavaScript, criando um fat-client (825Kbytes >).
  • 27. Perspectivas
    • Vaadin.
      • O elemento central do Vaadin é a biblioteca Java que é projetada para facilitar a criação e manutenção de interfaces web de alta qualidade.
      • Todo o desenvolvimento se dá em Java puro = a depuração é feita no servidor de aplicação e o código cliente é mínimo.
  • 28. Perspectivas
  • 29. Conclusões
    • Resumo:

×