Tecnologias Web [email protected]
Prof. Msc. Juliano Gomes Weber
(
[email protected]
)
Conceitos Web
Notas de Aula – Aula 13
1º Semestre - 2011
Conceitos Básicos
Sistema WEB
Sistema computacional implementado na plataforma Web.
Conjunto de software e hardware necessários para o funcionamento de um Web Site
Conceitos Básicos
Principais recursos / tecnologias Arquitetura Cliente-Servidor;
Hipertexto;
Protocolo HTTP;
Linguagem HTML;
Conceitos Básicos
Conceitos Básicos
Conceitos Básicos
Sessões
O uso de sessões consiste em uma forma de preservar certos dados através de acessos subseqüentes.
Conceitos Básicos
Conceitos Básicos
Conceitos Básicos
Conceitos Básicos
Conceitos Básicos
Os Plugins
Ativados quando o browser não tem capacidade para exibir certos tipos de conteúdo.
São incorporados ao browser
Browsers de última geração possui plug-ins para as principais mídias.
Conceitos Básicos
Definindo conteúdos com MIME
Multipurpose Internet Mail Extensions Tipos de conteúdo:
Content-type: type/subtype
Type pode ser:
Image, audio, text, video, application, multipart, message e extension-token
Subtype pode ser:
Image: gif, jpeg, png, tiff, xbm, xpm, etc.
Audio: x-wav, x-aiff, mpeg, ra, etc.
Text: html, plain, etc.
Video: mpeg, quicktime, x-msvideo (avi), etc.
Conceitos Básicos
Applets
São pequenos programas em Java
Podem ser executados em browsers que possuem o interpretador Java
Permitem funcionalidade do lado cliente
Orientação a Objetos
Programas Java não podem acessar recursos do sistema cliente
Conceitos Básicos
DHTML
Não é uma nova tecnologia HTML com animação;
Uso de tecnologias:
HTML
CSS (Cascading Style Sheets) JavaScript
DOM (Document Object Model)
O objetivo é permitir que todos os elementos possam ser manipulados pela linguagem script;
Páginas podem conter elementos modificados durante a leitura.
Web 2.0 - Introdução
O desenvolvimento de aplicativos é uma área que se altera constantemente. A cada dia fervilham novos conceitos, tecnologias, técnicas, padrões, linguagens e até paradigmas.
Nesse contexto, a programação para Web sofreu uma mudança de paradigma, o que resultou no que chamamos hoje de Web 2.0!
Surgiram, assim, várias soluções de desenvolvimento por todo canto da Internet. Dentre todas as opções nascentes, os desenvolvedores, cada qual com seu conjunto de necessidades específicas, precisam descobrir o que é interessante para o seu projeto e garimpar uma ferramenta que melhor os atenda.
Mais Conceitos
Mais Conceitos –– Web 2.0
Web 2.0
O
O termotermo WebWeb 22..00 refererefere--sese aa mudanmudançaça parapara umauma Internet
Internet comocomo plataformaplataforma ee umum entendimentoentendimento dasdas regras
regras parapara obterobter sucessosucesso nestanesta novanova plataformaplataforma.. Segundo
Segundo TimTim O'Reilly,O'Reilly, umum dosdos criadorescriadores dodo termotermo Web
Web 22..00,, aa regraregra maismais importanteimportante seriaseria desenvolverdesenvolver aplicativos
aplicativos queque aproveitemaproveitem osos efeitosefeitos dada rederede parapara se
se tornaremtornarem melhoresmelhores quantoquanto maismais ssãoão usadosusados pelas
A Web 2.0
O termo Web 2.0 não deve ser entendido como uma nova tecnologia ou uma revolução da Web 1.0 (Web tradicional), mas sim como uma evolução natural
dos paradigmas, conceitos e aplicativos da Web.
Os usuários passam a interagir com as aplicações de forma participativa e
colaborativa. A idéia é que o ambiente on-line se torne mais dinâmico e que
A Web 2.0
A Web agora é vista como uma plataforma onde rodam programas de
gestão da informação.
Sites deixam de ter uma característica estática para se tornarem verdadeiros
Web de hoje (2.0)
Web de hoje (2.0)
Participa
Participa
ção
ção
coletiva
coletiva
Qualquer
Qualquer um
um pode
pode publicar
publicar conte
conte
údos
údos
Muitos
Muitos
sites
sites
permitem
permitem
coment
coment
ários,
ários,
participa
ção,
participa
ção,
personaliza
personaliza
ção,
ção,
etc
etc
As
As pessoas
pessoas t
t
êm
êm
mais
mais op
op
ções
ções
na
na escolha
escolha de
de
fornecedores
Tecnologias Web 2.0 XHTML
eXtensible Hypertext Markup Language A XHTML é uma linguagem de marcação.
É uma reformulação da linguagem HTML baseada em XML, onde combina as tags de marcação da HTML com as regras da XML.
Este processo de padronização melhorou a acessibilidade, proporcionando uma melhora na exibição de páginas web em diversos dispositivos (PC’s, palm’s, celulares, entre outros). Uma das características da web 2.0
O tempo de carregamento de uma página XHTML é menor, pois os browsers tem de interpretar uma página limpa sem ter que interpretar e tratar erros de código.
Uma questão básica na XHTML é a separação da apresentação de um documento, isto é, a aparência dele quando é exibida por um navegador, e a estrutura da informação que ele contém.
Sintaxe XHTML
Todas as tags devem ser escritas em letras minúsculas
A XML é casesensitive. Uma vez que XHTML é uma aplicação XML, também é sensível ao tamanho de caixa e deve ser usada caixa baixa, ou seja, letras minúsculas.
As tags devem estar convenientemente aninhadas
Errado:
<DIV><P>Aqui um texto</P></DIV> Certo:
<div><p>Aqui um texto</p></div>
Errado:
<head><title>Título</head></title>
Certo:
Sintaxe XHTML
Os documentos devem ser bem formados
Um documento diz-se bem formado quando está estruturado de acordo com as regras definidas nas recomendações para XML. Todos os elementos XHTML devem estar corretamente aninhados dentro do elemento raiz <html>.
O uso de tags de fechamento é obrigatório
Em HTML é permitido para determinados elementos, omitir-se a tag de fechamento. XML não permite omissãode qualquer tag de fechamento.
Errado: <p>Um parágrafo. <p>Outro parágrafo. Certo: <p>Um parágrafo.</p> <p>Outro parágrafo.</p>
Sintaxe XHTML
Valores de atributos entre aspas
Os valores de atributos devem estar entre "aspas“.
Sintaxe dos atributos completa
A sintaxe para atributos deve ser escrita por completo.
Errado: <input checked /> Certo: <input checked="checked" /> Errado: <td rowspan=3> Certo: <td rowspan=“3”>
Ajax
Aplicações web tradicionais:
A web foi originalmente projetada para navegação por documentos HTML.
Modelo “Clique, aguarde e recarregue”.
A página é transferida do servidor para o cliente e recarregada a cada evento, envio de dados ou navegação.
“World Wide Wait”.
Perda de contexto.
Ajax
Aplicações web com Ajax:
Acrescenta uma camada entre o cliente e o servidor para gerenciar a comunicaçãoentre eles.
Modelo de comunicação assíncrono, de modo que o usuário continue interagindo com a aplicação no lado do cliente, enquanto o servidor processa a solicitaçãosimultaneamente.
Atualização parcial da tela
Apenas os elementos que contêm novas informações são atualizados. Não há perda de contexto.
Ajax
O desenvolvimento de aplicações web em geral, e de aplicações Ajax em particular, envolve certa quantidade de trabalho meticuloso, enfadonho e com alta incidência de erros.
Os desenvolvedores podem passar 90% do tempo trabalhando para contornar peculiaridades do navegador.
Além disso, a criação, a reutilização e a manutenção de grandes bases de código JavaScript e componentes Ajax pode ser difícil e delicada. Felizmente, existem ferramentas que tratam dessas questões,
deixando o desenvolvedor livre para se preocupar com outras questões de projeto.
Dojo Toolkit: biblioteca que ajuda a padronizar o JavaScript, provendo uma variedade de pacotes para compatibilidade ao longo de navegadores diferentes, controles ricos GUI, tratamento de eventos, etc... (http://www.dojotoolkit.org/ )
Google Web Toolkit (GWT).
Qual o futuro da WEB?
Qual o futuro da WEB?
A
A WebWeb 33..00 proppropõeõe--sese aa ser,ser, numnum perperíodoíodo dede cincocinco aa dezdez anos,
anos, aa terceiraterceira gerageraçãoção dada internetinternet.. A
A primeira,primeira, WebWeb 11..00,, foifoi aa implantaimplantaçãoção ee popularizapopularizaçãoção da
da rederede emem sisi;; aa WebWeb 22..00 éé aa queque oo mundomundo vivevive hoje,hoje, centrada
centrada nosnos mecanismosmecanismos dede buscabusca comocomo GoogleGoogle ee nosnos sites
sites dede colaboracolaboraçãoção dodo internauta,internauta, comocomo WikipWikipédia,édia, YouTube
YouTube ee osos sitessites dede relacionamentorelacionamento social,social, comocomo oo Orkut
Orkut.. A
A WebWeb 33..00 pretendepretende serser aa organizaorganizaçãoção ee oo usouso dede maneira
maneira maismais inteligenteinteligente dede todotodo oo conhecimentoconhecimento jjáá disponível
Reflexões
Reflexões
Qual
Qual ser
ser
á
á
o
o novo
novo espa
espa
ço
ço
para
para organiza
organiza
ção
ção
de
de fontes
fontes de
de informa
informa
ções?
ções?
Quais
Quais
as
as
habilidades,
habilidades,
compet
compet
ências
ências
e
e
atitudes
atitudes
do
do
profissional
profissional
da
da
informa
informa
ção
ção
perante
Execução no Servidor
Servidores Web
IIS
Apache
IIS
Internet Information Server
Microsoft
Famoso por apresentar diversos problemas
Apache
Servidor web mais utilizado no mundo
atualmente (Fonte: Netcraft)
Software Livre
Escrito em C
Executa diversas linguagens script: PhP,
Perl, ASP, etc.
Possui suporte nativo ao MySQL
Permite defini
ção de módulos para extensão
do servidor
Tomcat
Implementa
ção de referência para
JSP/Servlets (Java)
Escrito em Java
Devido
à sua simplicidade e fácil instalação,
é comumente utilizado em cursos para
Servidores de Aplicação
Estes servidores oferecem recursos comuns a
diferentes aplicações (autenticação, conexão à
BDs, suporte a transação, etc)
Pensando-se numa arquitetura em camadas, um
servidor de aplicação é um servidor que hospeda e
oferece serviços para outras aplicações
Com isso, espera-se que os desenvolvedores
poupem tempo para implementação da lógica do
Servidores de Aplicação
Exemplos:
Java: JBoss (Red Hat), WebLogic (BEA), WebSphere
(IBM), Geronimo (Apache), Sun Application Server (SUN), Glassfish (baseado no da SUN)
Web Services
Proposta:
Integração de sistemas através do uso de XML
sobre HTTP
Tecnologias:
XML
WSDL (Web Service Description Language)
SOAP (Simple Object Access Protocol)
Vantagens:
Integração com baixo acoplamento