Upload
vinicius-pereira
View
685
Download
4
Embed Size (px)
Citation preview
RIA (Rich Internet applications)
Alunos: Roberto Mantovani Felipe Torres
Vinícius Pereira
Conceitos
RIA's são Aplicações Web que tem características e funcionalidades de softwares tradicionais do tipo
aplicativo.
RIA – Acrônimo para Rich Internet Applications. RIA's típicos transferem todo o processamento da interface para o navegadort, porém mantém parte dos dados (como por exemplo, o estado do programa, dados do banco) no servidor de aplicação.
Conceitos Básicos
Aplicações WEB tradicionais centralizam todo seu código em torno de uma arquitetura de Cliente-servidor e um Thin-client. Utilizando uma tecnologia uma aplicação-cliente que possa executar instruções no computador do usuário, RIAs podem reduzir significativamente o número de sincronizações e aumentar a interatividade com o cliente. Rodam localmente em um ambiente seguro chamado sandbox.Isso significa que RIA's equilibram melhor o processamento, distribuindo-o entre Servidor e Cliente. Falaremos mais à frente sobre o conceito de Sandbox
Conceitos Básicos
- Sandbox: Uma aplicação, seja qual for o ambiente, tem um Set de coisas que pode e que não pode fazer. Cada ambiente tem a sua "caixa de areia" específica, com suas permissões e proibições. Aplicações em desktop tem sua sandbox
- Applet: Applet é um software aplicativo que é executado no contexto de outro programa.
Exemplo: http://www.cs.ubc.ca/spider/harrison/Java/sorting-demo.html
O site acima é comumente utilizado em aulas de AEDS II e tem 'applets' introduzidos no seu código, como podemos observar. Quando clicamos sobre a figura apenas a área contemplada por ela é recarregada e o programa é executado naquela área da página.
Produtos no Mercado
Microsoft Silverlight é um software de tecnologia para navegadores e plug-ins da nova geração. O Silverlight oferece uma nova experiência para aplicativos ricos e interativos na internet.
Desenvolvido para competir com o Adobe Flash.Para que as aplicações possam ser executadas no lado do cliente, é necessário instalar um pequeno complemento (
plug-in).
Produtos no Mercado
Java applets são códigos executados em páginas HTML padrão e geralmente são incializados automaticamente
quando a página Web é aberta no navegador web.
São os applets desenvolvidos para rodar no próprio browser através da máquina virtual Java, a JVM. Geralmenrte são escritos em Java. Esses applets tbm rodam em Sandbox.
Produtos no Mercado - AJAX'AJAX' - acrônimo em língua inglesa de Asynchronous
Javascript And XML - é o uso metodológico de tecnologias providas por navegadores, para tornar páginas
mais interativas.
AJAX não é uma tecnologia, são várias tecnologias conhecidas trabalhando juntas, cada uma fazendo sua parte, oferecendo
novas funcionalidades.
Produtos no Mercado - AJAX
Como dito, o modelo clássico de aplicação web trabalha assim: A maioria das ações do usuário na interface dispara
uma solicitação HTTP para o servidor web. O servidor processa algo — recuperando dados, realizando cálculos,
conversando com vários sistemas legados — e então retorna uma página HTML para o cliente.
Esse é o modelo clássico. Os RIA's caminham no sentido contrário. AJAX reuni tecnologias que permitem a implementação de ferramentas RIA.
Produtos no Mercado - AJAX
“A maior vantagem das aplicações AJAX é que elas rodam no próprio navegador WEB.”
Padrões
O W3C criou o Web Application Formats Working Group, cuja missão inclui o desenvolvimento de tais normas de padronização. O projeto original DARPA no MIT, que
resultou na W3C também proporcionou a criação do Curl, que já está na versão 5,0.
Utilização de plugins RIA's em browsers no mundo:http://riastats.com/#
O W3C é um órgão que normatiza um série de elementos relativos à WEB. O grupo citado tem
como objetivo normalizar e contribuir com o desenvolvimento dos RIA's. O Crul, linguagem
criada por eles pode ser utilizada, por exemplo, no Silverlight da Microsoft.
Padrões
“A missão do W3C Web Application Formats Working Group é desenvolver especificações que permitam o
melhoramento de aplicações que são executadas no cliente. Isso incui o desenvolvimento de linguagens para
aplicativos, especialmente interfaces para usuários.”
http://www.w3.org/2006/appformats/admin/charter
Referências Técnicas
http://www.webreference.com/programming/ajax_tech/
http://www.adaptivepath.com/ideas/essays/archives/000385.php
http://www.onlamp.com/pub/a/onlamp/2005/05/19/xmlhttprequest.html
Referências Bibliográficas
http://www.youtube.com/watch?v=yXuKquS5bOU
http://www.youtube.com/watch?v=pUKcyP9qk1k
http://www.w3.org/2006/appformats/admin/charter