A evolução da Internet

TERMOS DE USO

Este artigo é parte integrante do meu Trabalho de Conclusão do Curso de Sistemas de Informação da Universidade do Sul de Santa Catarina – UNISUL, localizada na cidade de Tubarão no estado de Santa Catarina do Brasil. A reprodução deste material é proibida, entre em contato pelo e-mail: renan@mxstudio.com.br ou frettarenan@gmail.com. Você pode utilizar como citação para o seu trabalho de qualquer tipo, como escolar ou universitário, desde que utilize com a devida referência de acordo com as normas da ABNT.

Caso queira ler o trabalho completo, o mesmo encontra-se disponível através dos links a seguir:

ArqMax 2008 – Software Gerenciador de Documentos – TCC

ArqMax 2008 – Software Gerenciador de Documentos – Apresentação do TCC

A EVOLUÇÃO DA INTERNET

Hoje em dia, deve-se pensar em muitos detalhes antes de disponibilizar uma aplicação para Internet, como a usabilidade e acessibilidade, os plugins, a forma de distribuição de conteúdo multimídia, as tecnologias que utilizam menor tráfego de rede, entre outros.

Para compreender o processo de evolução da Internet é importante conhecer os conceitos, características, vantagens e desvantagens das principais tecnologias para Web:

  • GIFs animados;

  • Applets Java;

  • e, Flash.

Harris (2007) cita duas forças responsáveis pela grande evolução da Internet:

  • “autores e usuários da Internet sempre desejam transmitir as mais elaboradas variedades de conteúdos por ela”;

  • “para alcançar a maior parte dos usuários, os arquivos tem de ser suficientemente pequenos para serem transmitidos rapidamente por conexões padronizadas”.

Assim, “esses fatores têm forçado os inovadores da Internet a aparecem com engenhosas saídas para a entrega de conteúdos complexos e fora dos limites das conexões” (HARRIS, 2007).

Graças a estas forças são criadas soluções, que são aprimoradas com o passar do tempo, pelos milhares de inovadores da Internet, tornando-se grandes conceitos que são aplicados e transformam-se em novas tecnologias.

Uma das maiores inovações na história da internet, segundo Harris (2007), foi a possibilidade de adicionar imagens e ilustrações em uma página. Mas inicialmente, esta solução era um pouco inviável devido a pouca velocidade de conexão disponível pela maioria dos internautas. Estas imagens, inicialmente, eram criadas utilizando uma técnica denominada de bitmap, ou seja, cada pixel, pequeno ponto de cor que forma uma imagem, contém uma cor e posição que é descrito no arquivo bitmap. A partir daí, os inovadores, desenvolveram muitas técnicas de compressão destas imagens, surgindo novos formatos, como o GIF e JPEG.

O GIF animado é uma série de poses de uma imagem mostrada em seqüência (HARRIS, 2007). As vantagens do GIF animado são a simplicidade do uso e o reconhecimento pela maioria dos navegadores sem a necessidade de instalar algum software adicional. Já a desvantagem é que a animação tem que ser muito simples para que ela fique em um tamanho adequado para ser distribuída na internet e também é importante destacar a impossibilidade de incluir som.

A Figura 1 ilustra uma seqüência de cinco imagens bitmap que formam um GIF animado.

Funcionamento do GIF animado

Figura 1 – Funcionamento do GIF animado
Fonte: Harris (2007)

Outra tecnologia importante na evolução da internet e que ainda encontra-se presente é o Applet Java.

Applets são programas projetados para ter uma execução independente dentro de alguma outra aplicação, eventualmente interagindo com esta – tipicamente, um browser (navegador) web. Assim, applets executam no contexto de um outro programa, o qual interage com o applet e determina assim sua seqüência de execução. Funcionalidades associadas a applets Java são agregadas no pacote java.applet.
O processo de criação de um applet é similar ao processo de criação de uma aplicação – o programa deve ser criado por um editor de programas e o arquivo de bytecodes (.class) deve ser gerado a partir da compilação do arquivo fonte.
Uma vez criado ou disponibilizado o bytecode, é preciso incluir uma referência a ele em alguma página web. Essa página web, uma vez carregada em algum navegador, irá reconhecer o elemento que faz a referência ao applet, transferir seu bytecode para a máquina local e dar início à sua execução (RICARTE, 2007).

Conforme Harris (2007), os Applets Java, criados em 1995 pela Sun, tornaram-se famosos na internet porque quando foram criados era uma ótima solução para adicionar interatividade a aplicações web que não podem ser geradas pelo HTML, porém eles perderam um grande espaço com o surgimento do Macromedia Flash Player, agora Adobe Flash Player (Gráfico 1).

Flash Player Penetration

Gráfico 1 – Flash Player Penetration
Fonte: Adobe, 2007

Para Silva (2007), atualmente os Applets Java parecem estar destinados a desaparecer. As desvantagens são:

  • o peso, o tempo que eles levam para carregar na máquina do cliente;

  • a fraca segurança, que os torna instáveis ou perigosos para a máquina, em alguns casos é bloqueado automaticamente pelos navegadores e programas de antivírus mais recentes que identificam como aplicações perigosas, caso não sejam autorizados manualmente pelo usuário;

  • e a Java Virtual Machine – JVM que demora vários minutos para ser descarregada da internet e instalada no computador, além disso, em alguns sistemas operacionais o computador precisa ser reiniciado para a finalização da instalação, gerando um constrangimento ao visitante, já que a página acessada precisará ser fechada.

Por estes motivos, encontramos cada vez menos Applets Java nos sites, ou seja, está entrando em extinção na internet, contudo a Plataforma Java vem sendo muito utilizada no desenvolvimento de softwares para desktop.

Atualmente com a explosão dos portais de vídeo on-line, devido ao aumento dos usuários de banda larga, como o YouTube e o Globo Media Center, os internautas que utilizam o Flash Player vêm crescendo assustadoramente. Por este motivo, o Flash está tornando-se um grande concorrente das grandes empresas de desenvolvimento de softwares famosos como o Microsoft Windows Media Player, Apple QuickTime Player e Real Player.

Segundo Wikipedia (2007), o FLV, formato de arquivo de vídeo originário do Flash Player 6, tornou-se comum na internet. Diferente dos outros plugins, o Flash Player cresce a cada versão que é lançada. Por este motivo o Flash se tornou um padrão de distribuição multimídia na internet, além disso, o Flash não só cresce em recursos, mas a Adobe, atual proprietária do Flash, preocupa-se muito com a performance do player. A cada versão lançada temos mais recursos, um desempenho melhor e a maior vantagem é que o tamanho do instalador do Flash Player se mantêm praticamente inalterado, as vezes fica até mais leve.

Saleiro et al (2007) apresenta, resumidamente, alguns fatos que marcaram a história do Flash:

  • 1996: Flash foi lançado como ferramenta de design;

  • 1999: Flash Player atinge 92% dos internautas;

  • 2000: Flash 5 com a linguagem de programação ActionScript 1;

  • 2002: Macromedia cita pela primeira vez o termo RIA;

  • 2004: Flash MX 2004 e Flash Player 8 com ActionScript 2 que possui alguns recursos de orientação a objetos, componentes na versão 2 e Flash Lite, para a disponibilização de aplicações para celulares e dispositivos móveis. Macromedia lança Flex 1 e cita pela primeira vez o temo Flash Platform;

  • 2005: Adobe compra a Macromedia;

  • 2006: Lançado o Flex 2 e Flash Player 9 com ActionScript 3 que é totalmente orientado a objetos. Foi criada uma nova IDE para o Flex baseado no Eclipse, o Flex Builder;

  • 2007: Flash CS3 com ActionScript 3 e com integração aos produtos da Adobe.

O Flash em números

Figura 2 – O Flash em números
Fonte: França (2007)

Uma vantagem em relação ao Applet Java é o fato do Flash Player ser muito simples de ser instalado. A instalação leva aproximadamente um minuto com uma conexão de 56k (Figura 2) e encontra-se disponível para maioria dos navegadores, sistemas operacionais e dispositivos (Figura 3).

Flash em todo lugar

Figura 3 – Flash em todo lugar
Fonte: França (2007)

Segundo Harris (2007), a vantagem do Flash é o fato de ser baseado em vetores, ou seja, descreve a imagem como uma série de linhas e de contornos que são gravados como valores matemáticos, tornando mais rápido para carregar. Desse modo, o Flash cria automaticamente os quadros intermediários, baseados em vetores, calculando as mudanças em informações geométricas entre as duas imagens, facilitando para o animador, que terá de criar menos quadros. Além disso, o Flash possui uma nova forma de transmitir os arquivos, utilizando a técnica de stream, assim o navegador pode começar a reprodução do filme enquanto o restante é carregado.

É importante deixar claro que todos os formatos de animação da web têm suas vantagens e desvantagens. Muitos desenvolvedores e projetistas para internet costumam a usar o Flash mesmo quando outro formato encaixa-se melhor a suas necessidades, porque sabem que a maioria dos internautas conhece o Flash Player. Mesmo para aqueles que não conhecem, é mais fácil aprender. A abrangência universal do Flash Player conduz os gerentes da Internet a utilizar o Flash em seus sites, ampliando cada vez mais a aceitação desses formatos (Harris, 2007).

Conforme Saleiro et al (2007), o conceito de RIAs, citado pela Macromedia em 2002, despertou o interesse de praticamente todas as maiores organizações do mundo, como o Google, o Yahoo, a Microsoft, entre outros. Porém como o Flash é uma ferramenta proprietária, várias empresas optaram em escolher o AJAX para desenvolver as RIAs. O AJAX é definido por Wikipedia (2007), como “uma tecnologia baseada em JavaScript que fornece um método no qual pequenas partes de uma página web podem ser atualizadas sem a necessidade de atualização de toda a página”.

Conforme Blog E-Genial (2007), em 26 de abril de 2007, a Adobe anunciou liberação do Flex SDK sobe a licença Mozilla Public Licence. Agora as organizações podem desfrutar das duas melhores tecnologias disponíveis atualmente para web 2.0 descartando o lado financeiro, pois o Flex tornou-se uma tecnologia open-source.

Com a origem das RIAs surgiu um novo conceito denominado web 2.0, definido por Folha Online (2007), como “a segunda geração da World Wide Web”. Sendo uma nova forma de desenvolver aplicações para a internet, sempre pensando nos usuários. Utilizando os conceitos de web 2.0 de forma adequada, os serviços disponíveis na internet, tornam-se mais rápidos, seguros e acima de tudo mais fáceis de utilizar e compatível com vários dispositivos.

Segundo Focus Networks (2007), “ao contrário da primeira geração, a web 2.0 dá aos usuários uma experiência próxima a das aplicações desktop, com interfaces mais ricas, sem refreshs e com maior usabilidade” (Figura 4).

RIA combina o melhor do Desktop, Web e Comunicações

Figura 4 – RIA combina o melhor do Desktop, Web e Comunicações
Fonte: Focus Networks (2007)

Em 2002, a Macromedia usou o termo RIA utilizando o Flash como ferramenta para o desenvolvimento (Figura 5). O seu IDE, nada familiar aos programadores, foi provavelmente o grande responsável pelo fato dele não ter tido uma grande aceitação por parte do público de TI. A resposta veio alguns anos mais tarde com o lançamento Macromedia Flex, que oferece a este público uma forma padronizada para o desenvolvimento de RIA para a Flash Platform. (DCLICK BLOG, 2007).

Evolução das aplicações

Figura 5 – Evolução das aplicações.
Fonte: Cfgigolô (2007)

Segundo Focus Networks (2007), RIA é definida pela Macromedia como a combinação da melhor funcionalidade de interface das aplicações desktop, baixo custo de desenvolvimento e o melhor da interatividade e comunicação multimídia. O resultado final: uma aplicação provendo uma experiência para o usuário mais intuitiva, rápida e efetiva (Figura 6). Para ser mais específico, utilizando o conceito RIA temos:

  • interfaces mais rápidas e práticas incluindo validações e formatações em tempo real, sem a necessidade de inúmeros refreshs e/ou submits;

  • comportamentos de objetos como drag-and-drop;

  • a habilidade de trabalhar on-line e off-line;

  • manutenção instantânea da aplicação, pois está na web;

  • a utilização de download progressivo de dados e conteúdo, de acordo com a banda do usuário;

  • e por fim, incorporar o melhor das duas funcionalidades da comunicação: interatividade de áudio e vídeo.

Benef?cios das RIAs

Figura 6 – Benefícios das RIAs
Fonte: França, 2007

Comparação do consumo da CPU

Gráfico 2 – Comparação do consumo da CPU
Fonte: França, 2007

Saleiro et al (2007) aponta algumas vantagens das RIAs, entre elas, uma menor utilização do tráfego de rede e CPU em aproximadamente 90% a menos na comunicação do cliente e servidor e melhor utilização de processamento distribuídos em camadas, comparado com as aplicações desenvolvidas utilizando web 1.0 (Gráfico 2). Outra vantagem é que os utilizadores das aplicações web 1.0 distraem-se facilmente devido aos segundos que demoram ao passar de uma página para outra. Além disso, as RIAs podem rodar independentemente do sistema operacional e browser, e inclusive em dispositivos móveis.

O mesmo autor identifica a grande desvantagem bastante polêmica gerada pelo surgimento das RIAs, o fato das RIAs serem executadas no browser, faz que o visitante espere que as funcionalidades do browser sejam utilizáveis: voltar, avançar, favoritos, localizar, entre outros. Contudo, como as RIAs estão dentro de uma única página não é possível voltar e avançar para uma outra página que não existe. Diferente de páginas em HTML os RIAs possuem estados que são acionados pelas ações dos usuários.

ADOBE FLEX

O Flex é a solução mais completa e potente para criar e fornecer aplicativos ricos para Internet (RIAs). Ele permite que as organizações criem aplicativos personalizados, incluindo recursos multimídia, que melhorem significativamente a experiência do usuário, revolucionando o modo como as pessoas interagem com a web (ADOBE, 2007).

Como o Flex é uma tecnologia front-end, a parte do sistema que interage diretamente com o usuário, é necessário utilizar uma tecnologia back-end para efetuar a comunicação com o banco de dados. O Flex possui suporte a uma variedade de técnicas de comunicação a dados remotos, que, segundo Kazoun et al (2007), são divididos em três categorias, descritas abaixo.

1) HTTP request/response-style communication: This category consists of several overlapping techniques. Utilizing the Flex framework HTTPService component or the Flash Player API URLLoader class, you can send and load uncompressed data such as text blocks, URL encoded data, and XML packets. You can also send and receive SOAP packets using the Flex framework WebService component. And you can use a technology called Flash Remoting to send and receive AMF packets, which use a binary protocol that is similar to SOAP (but considerably smaller). Each technique achieves the similar goal of sending requests and receiving responses using HTTP or HTTPS;
2) Real-time communication: This category consists of persistent socket connections. Flash Player supports two types of socket connections: those that require a specific format for packets (XMLSocket) and those that allow raw socket connections (Socket). In both cases, the socket connection is persistent between the client and the server, allowing the server to push data to the client—something not possible using standard HTTP request/response-style techniques;
3) File upload/download communication: This category consists of the FileReference API which is native to Flash Player and allows file upload and download directly within Flex applications (KAZOUN et al, 2007).

Lueders (2007) apresenta uma análise interessante do desempenho das principais técnicas de comunicação do Flex e AJAX. O teste consiste em uma aplicação que retorna cinco mil linhas e apresenta na tela. Observe os resultados obtidos no quadro abaixo (Quadro 8).

Tecnologia

Tempo de espera

Tráfego de rede

AJAX e HTML

11.3 segundos

1.5 mb

AJAX e SOAP

14.2 segundos

1.1 mb

AJAX e XML

14.8 segundos

1.1 mb

Flex e SOAP

11.9 segundos

1.1 mb

Flex e XML

8.5 segundos

1.1 mb

Flex e Flash Remoting

1.3 segundos

85.9 kb

Quadro 8 – Performance do Flex
Fonte: LUEDERS (2007)

Neste teste (Quadro 8), observa-se a grande diferença de desempenho das tecnologias Flex e AJAX, principalmente quando a tecnologia Flash Remoting é utilizada. O SOAP e XML são suportados pelo Flex por serem padrões da Internet, na verdade são recomendados para aplicações de baixo desempenho, porque eles utilizam texto não compactado na comunicação, gerando um tráfego de rede maior, tornando-se assim, a comunicação mais lenta.

Entendendo o Flash Remoting

Figura 7 – Entendendo o Flash Remoting
Fonte: Adobe (2007)

Para obter melhor desempenho da rede e conseqüentemente um tempo de resposta da aplicação menor, principalmente para organizações, de médio e grande porte, que possuem uma grande base de dados e precisam da informação em menor tempo para a tomada de decisão, é recomendado utilizar a tecnologia Flash Remoting.

Conforme Wikipedia (2007), a tecnologia Flash Remoting pode ser definida, resumidamente, como um gateway, uma porta de ligação, entre o Client-Side, aplicação que roda no lado do cliente, neste caso o Flash Player, e o Server-Side, aplicação que roda no lado do servidor, como por exemplo, o Java, ColdFusion e PHP (Figura 7). É a tecnologia, baseada em SOAP, que permite a comunicação direta do Flash Player com o servidor, através de um gateway, utilizando o formato de comunicação de dados compactados, em modo binário, chamado de Action Message Format – AMF (LEAL, 2007).

Segundo Saleiro (2007), o Flash Remoting efetua automaticamente a conversão dos objetos ActionScript, do Client-Side, para objetos da linguagem do Server-Side e vice-versa. O programador pode desenvolver RIAs sem saber o que é AMF, porque a conversão do formato dos dados é automática (Figura 8).

Funcionamento do Flash Remoting

Figura 8 – Funcionamento do Flash Remoting
Fonte: Leal (2007)

Atualmente existem duas versões do AMF, o AMF0 e AMF3. O AMF0 surgiu com a primeira versão do Flex que suportava a linguagem de programação ActionScript 2. Com o lançamento do ActionScript 3, suportado pelo Flex 2 e que é totalmente orientada a objetos, o AMF0 precisou ser atualizado, surgindo o AMF3 (TERRACINI, 2007).

Segundo Terracini (2007), o AMF possui um conjunto de funcionalidades que fazem a serialização, tradução, dos objetos enviados do client-side para o server-side e vice-versa. A comunicação utilizando AMF possui um desempenho e uma padronização maior da aplicação, já que os objetos são automaticamente convertidos e a comunicação é efetuada formato binário, diferente das outras técnicas que usam XML, por este motivo o tráfego de rede gerado é conseqüentemente menor.

REFERÊNCIAS

ADOBE. Flash Player Penetration. Disponível em: http://www.adobe.com/products/player_census/flashplayer. Acesso em: 16 jun. 2007.

______. Flex. Disponível em: http://www.adobe.com/br/products/flex. Acesso em: 21 jun. 2007.

______. Macromedia Flash Remoting MX. Disponível em: https://store2.adobe.com/cfusion/store/index.cfm?store=OLS-AP&view=ols_prod&category=/Applications/FlashRemoting&distributionMethod=FULL&nr=0. Acesso em: 14 jun. 2007.

______. Using Flash Remoting MX. Disponível em: http://livedocs.adobe.com/flashremoting/mx/Using_Flash_Remoting_MX/intro2.htm. Acesso em: 22 jun. 2007.

BLOG E-GENIAL. Flex Open Source. Disponível em: http://blog.egenial.com.br/?p=52. Acesso em: 12 maio 2007.

CFGIGOLÔ. Macromedia Flex: Interface e Experiência. Disponível em: http://www.cfgigolo.com/archives/2005/06. Acesso em: 12 maio 2007.

DCLICK BLOG. Ajax e Flex. Disponível em: http://blog.dclick.com.br/2006/03/31/ajax-e-flex/#more-37. Acesso em: 12 maio 2007.

FOCUS NETWORKS. Guia web 2.0. Disponível em http://www.focusnetworks.com.br/guias/focusnetworks_guia_web2.pdf. Acesso em: 12 maio 2007.

FOLHA ONLINE. Entenda o que é a Web 2.0. Disponível em: http://www1.folha.uol.com.br/folha/informatica/ult124u20173.shtml. Acesso em: 12 maio 2007.

FRANÇA, Leonardo. Adobe Flex 2 e AMFPHP. Disponível em: http://www.leonardofranca.com.br/wp-content/uploads/2007/05/flex2_e_amfphp.pdf. Acesso em: 21 jun. 2007.

HARRIS, Tom. Como funcionam as animações para Web. Disponível em: http://informatica.hsw.uol.com.br/animacoes-para-a-web.htm. Acesso em: 17 jun. 2007.

KAZOUN, Chafic; LOTT, Joey. Programming Flex 2.0. Disponível em: http://www.adobe.com/devnet/flex/articles/progflex/programming_flex_ch16.pdf. Acesso em: 21 jun. 2007.

LEAL, Neto. Macromedia Flash Remoting atualizado. Disponível em: http://www.imasters.com.br/artigo/2195. Acesso em: 22 jun. 2007.

LUEDERS, Arleston. Performance Flex. Disponível em: http://riacenter.com/blog/?p=104. Acesso em: 21 jun. 2007.

RICARTE, Ivan Luiz Marques. Applets. Disponível em: http://www.dca.fee.unicamp.br/cursos/PooJava/applet/index.html. Acesso em: 17 jun. 2007.

SALEIRO, João; FERNANDES, João. Rich Internet Applications: Uma visão geral. Disponível em: http://www.riapt.org/files/Designers%20em%20RIAs.pdf. Acesso em: 17 jun. 2007.

SALEIRO, João. Introdução teórica as tecnologias de desenvolvimento de RIAs. Disponível em: http://www.riapt.org/tiki-index.php?page=Introducao%20teorica%20as%20tecnologias%20de%20desenvolvimento%20de%20RIAs. Acesso em: 22 jun. 2007.

SILVA, Marcelo. O futuro do javascript. Disponível em: http://www.plugmasters.com.br/sys/materias/2/1/O-Futuro-do-Javascript. Acesso em: 17 jun. 2007.

TERRACINI, Fabio. RemoteObject no Flex 2 com PHP e com Java sem Data Services. Disponível em: http://blog.dclick.com.br/2006/11/28/remoteobject-no-flex-2-com-php-e-com-java-sem-data-services. Acesso em: 22 jun. 2007.

WIKIPÉDIA. FLV. Disponível em: http://pt.wikipedia.org/wiki/FLV. Acesso em: 22 jun. 2007.

WIKIPÉDIA. Macromedia Flash Remoting. Disponível em: http://pt.wikipedia.org/wiki/Macromedia_Flash_Remoting. Acesso em: 22 jun. 2007.

Escrito por Renan Fretta on abril 19, 2008. Arquivado em Geral. Você pode seguir as respostas a esse artigo pelo RSS 2.0. Você pode deixar respostas para esse artigo

4 respostas a A evolução da Internet

  1. O TCC ficou bem legal, só faltou disponibilizar um link para que as pessoas pudessem avaliar seu trabalho.

  2. muito bom deu para entender bastante e até uma ajudinha para mim fazer um trabalho!!!

  3. eu odiei terrivel já vi coisas melhores!!!! ridiculo!!!

  4. por acaso vc sabe como fusciona a internet na europa???ouvi dizes que la não usam internet cabeada wi fi ou fibra optica se souber me diga pois estou procurando para elaborar um trabalho obrigado.

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

*

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>