Escolar Documentos
Profissional Documentos
Cultura Documentos
1. Introduo
O padro HTML 4 foi criado em 1997 pela W3C (World Wide Web Consortium) [W3C,
1997], entidade que regula os padres Web. Os padres definidos pela W3C deveriam
ser seguidos por todas as empresas desenvolvedoras de navegadores Web com intuito de
garantir uma renderizao uniforme de documentos por todos estes navegadores. Porm
na prtica, cada navegador usa uma engine1 de processamento prprio, fazendo com que
o cdigo fonte de uma pgina Web seja apresentado de forma diferente em navegadores
distintos.
Aliado a esse problema de incompatibilidade, a evoluo, tanto da velocidade das
conexes com a internet, quanto do hardware dos computadores, fez com que o HTML
4 fosse se tornando obsoleto. Assim, com o intuito de enfrentar os desafios advindos
dessa nova realidade da Web, em 2004 foi criado um grupo de trabalho denominado
WHATWG (Web Hypertext Application Technology Working Group) [WHATWG,
2004], com a finalidade de regulamentar e definir uma nova especificao para o HTML
que viesse a atender essa necessidade de evoluo, gerando assim a nova verso dessa
linguagem, o HTML 5.
Este trabalho tem como principal objetivo traar um breve comparativo entre o
HTML (HyperText Markup Language) 4 [W3C, 1997] e o HTML 5 [W3C, 2008],
apresentar algumas das novas APIs (Application Programming Interface) do HTML 5.
O trabalho inicialmente introduz a histria do HTML apresentando a sua evoluo desde
sua primeira especificao at verso 5. Com relao ao HTML 5, o trabalho identifica
as novas tags e atributos que agora fazem parte da linguagem alm de apontar
elementos que se tornaram obsoletos. Por fim, o trabalho detalha as seguintes APIs
introduzidas com o HTML 5: campos de formulrios, geolocalizao, udio e vdeo,
canvas, armazenamento local e aplicaes offline.
Vale ressaltar que no decorrer do texto o HTML 5 ser apresentado com intuito
de, avaliar os benefcios do novo padro para os desenvolvedores e as novas APIs. Este
trabalho no trata, porm sobre a compatibilidade dos navegadores, visto que a cada dia
os navegadores se atualizam ao novo padro.
2. Histria do HTML
A primeira verso do HTML foi baseada na linguagem SGML (Standard
Generalized Markup Language) [SGML, 1994]. O SGML era utilizado para a
estruturao de documentos e foi dele que o HTML herdou diversas tags tais como:
ttulo <h1> ao <h6>, cabealho <head> e pargrafo <p>. A principal diferena entre
essas duas linguagens de marcao que o HTML implementava a tag <a> com o
atributo href, permitindo assim a ligao (links) de uma pgina a outra. Esse conceito de
interligao entre documentos a base do funcionamento de toda Web.
O sucessor do HTML foi o HTML 2.0, o qual foi apresentado na primeira
conferncia mundial sobre Web, a World Wide Web Conference [HTML 2, 1995]. Essa
verso do HTML pode ser vista apenas como uma correo da verso anterior, ou seja,
apenas formalizava as caractersticas da linguagem que j estavam em uso.
A verso seguinte do HTML a ser lanada foi a 3.2 [HTML 3.2, 1997], a qual
manteve total compatibilidade com a verso 2. O HTML 3.2 adicionou novas
caractersticas linguagem, acrescentando elementos que proporcionavam utilizar
tabelas, applets2 e texto flutuante ao redor de imagens. Em dezembro de 1999 o HTML
4.01 foi publicado trazendo como principal premissa a compatibilidade com as suas
verses anteriores atravs de 3 implementaes:
2.2 WHATWG
O WHATWG o grupo de trabalho tecnolgico de aplicaes de hipertexto para Web.
Trata-se de um grupo livre, no oficial e de colaborao dos desenvolvedores de
navegadores e de seus interessados. O WHATWG desenvolve especificaes baseadas
no HTML e em tecnologias relacionadas para facilitar o desenvolvimento e
compatibilidade das aplicaes Web, com a inteno de submeter os resultados para um
padro organizacional. Essas submisses podem ento fazer parte do padro formal do
HTML.
O WHATWG trabalhou por muito tempo informalmente atravs de trocas de
emails entre seus integrantes. O grupo alcanou seu maior feito quando a sua
recomendao sobre os formulrios do HTML 4 foi aceita, e passou a ser especificao
oficial reconhecida pela W3C, sem quebrar o padro de compatibilidade com o
contedo existente.
Por muitos anos o W3C e o WHATWG ignoraram um ao outro. Enquanto o
WHATWG focava nos formulrios e nas novas caractersticas do HTML, o W3C estava
ocupado com a verso 2.0 do XHTML. Em outubro de 2006, no entanto, ficou claro que
o WHATWG estava com maior reconhecimento na comunidade, j que ao contrrio do
XHTML 2.0 da W3C que estava sendo lanado como rascunho e no estava sendo
implementado pela maioria dos navegadores, a especificao lanada pela WHATWG a
essa altura j estava sendo amplamente adotada pela comunidade. Em outubro de 2006,
Tim Berners-Lee, o fundador da W3C, anunciou que a W3C deveria trabalhar em
conjunto com a WHATWG. O primeiro passo desse trabalho em conjunto foi renomear o
Web Application 1.0 para HTML 5.
3. Novidades do HTML 5
A principal premissa do HTML 5 melhorar a semntica das pginas e adicionar novos
recursos linguagem para responder adequadamente ao avano tecnolgico. Com esse
princpio em 2004 foi feita uma pesquisa que vasculhou mais de um bilho de pginas
usando o motor de busca Google, com o objetivo de verificar como a Web estava
estruturada. Como resultado desse estudo, foram coletadas as 20 classes do HTML mais
utilizadas, as quais so apresentadas na figura 1.
A partir desse estudo a empresa Opera [Opera, 2011] realizou uma nova
pesquisa em 2009, dessa vez vasculhando cerca de 2 bilhes de pginas e no
analisando somente as classes utilizadas, mas tambm os ids mais usados. Os
resultados dessa pesquisa so apresentados na figura 2.
Disponvel em <http://code.google.com/intl/pt-BR/webstats/2005-12/classes.html>
<aside>
<audio>
<canvas>
<command>
<datalist>
<details>
4
Disponvel
em
<http://devfiles.myopera.com/articles/572/idlist-url.htm
http://devfiles.myopera.com/articles/572/classlist-url.htm>
<embed>
<footer>
<header>
<mark>
<meter>
<nav>
<output>
<progress>
<section>
<source>
<time>
<video>
<input type=month>
Usado para campos de ms.
<input type=week>
Usado para campos de semana.
<input type=time>
Usado para campos de hora e minutos.
<input type=datetime>
Usado para campos de data, o Opera apresenta um calendrio.
<input type=datetime-local>
Usado para campos de data local, apresenta um calendrio.
4.1.4. Tipo numrico
Utilizado para campos numricos, no permite a entrada um caractere que no seja
numrico, implementado apenas pelo Opera, declarado da seguinte forma:
<input type=number>
Permite os atributos min, max e step que define um valor mnino, mximo e o intervalo
respectivamente.
4.1.5. Tipo slider
Utilizado para campos de slider, declarado da seguinte forma:
<input type=range>
Podemos ver como o campo tipo slider funciona na figura 4.
Figura 4 - Slider
Figura 6 - Geolocalizao
<video src=meu_video.avi></video>
Podemos ver um exemplo do player de vdeo na figura 8.
4.3.1. Atributos
Com as novas tag de udio e vdeo surgem tambm os seus atributos. A seguir
apresentado um breve descritivo de cada um deles, comeando com os atributos da tag
audio:
autoplay
controls
loop
preload
poster
height
width
4.3.3. Codecs
Codecs so algoritmos usados para codificar e decodificar arquivos de udio e vdeo.
Quando o usurio est assistindo um vdeo, o codec interpreta o container, busca quais
faixas de udio e vdeos esto disponveis e decodifica as faixas de udio e vdeo.
Dentre os codecs de vdeo mais populares temos:
H.264;
VP8;
Ogg Theora.
AAC;
MPEG-3;
Ogg Vorbis.
4.4. Canvas
O HTML 5 define o elemento canvas, para renderizar grficos, jogos e outras imagens.
O canvas ocupa uma regio retangular na pgina. Entretanto, para possibilitar que o
desenvolvedor desenhe na rea delimitada pelo elemento canvas, necessrio usar
Javascript. Para adicionar um canvas na pgina o desenvolvedor deve utilizar o cdigo
HTML abaixo e logo aps definir o contexto de renderizao 2D:
<canvas id=meu_canvas width=300 height=400></canvas>
4.5. Armazenamento local
No HTML 4 a nica forma existente para se armazenar dados locais eram os cookies5.
Porm, a utilizao de cookies acarretava alguns problemas [The Unofficial Cookie
FAQ, 2011], como por exemplo:
5. Concluso
Cookies so grupos de dados trocados entre o navegador e o servidor das pginas, os quais so
colocados em um arquivo de texto criado no computador do usurio. A sua funo principal a de manter
a persistncia de sesses HTTP.
6
Arquivo que lista os arquivos que sero baixados pelo navegador e deixados em cach.
Ao longo deste trabalho foi apresentada a histria do HTML, as tags que no fazem
mais parte da especificao, as novas tags do HTML 5 alm de um detalhamento de
algumas das principais novas APIs que surgiram no decorrer do tempo.
Com a sua nova especificao, o HTML 5 no ser mais apenas uma linguagem de
marcao. O HTML se transformou em uma linguagem de marcao que trabalha em
conjunto com um grupo de APIs Javascript, que tornam essa especificao uma
ferramenta poderosa de desenvolvimento Web. Este trabalho apresentou as principais
APIs que j esto em implementao pela W3C. Porm, uma srie de outras APIs que
j esto em fase de implementao no foram mencionadas, como por exemplo:
API utilizada na computao grfica, para desenvolvimento de aplicativos grficos, ambientes 3D, jogos
entre outros.
O HTML 5 ainda no est pronto para ser usado, entretanto os navegadores mais
modernos j esto implementando a maioria das propriedades descritas nesse trabalho.
Este novo padro adicionar mais semntica e melhorar a estrutura das pginas
disponibilizadas na Web o beneficiando assim o desenvolvimento de mecanismos de
busca cada vez mais eficientes assim como tambm leitores de tela.
Referncias
W3C, disponvel em:
http://www.w3.org/ (20/09/2010).
HTML 4.01 Specification, disponvel em:
http://www.w3.org/TR/html401/ (01/10/2010).
HTML 5, disponvel em:
http://dev.w3.org/html5/spec/Overview.html (01/10/2010)
WHAT open mailing list announcement, disponvel em:
http://www.whatwg.org/news/start/ (04/10/2010)
A Brief History of the Development of SMDL and HyTime, disponvel em:
http://www.sgmlsource.com/history/hthist.htm (10/10/2010)
Hypertext Markup Language - 2.0, disponvel em:
http://www.w3.org/MarkUp/html-spec/html-spec_toc.html (15/10/2010)
Introducing HTML 3.2, disponvel em:
http://www.w3.org/MarkUp/Wilbur/ (23/10/2010)
XHTML Extended Forms Requirements, disponvel em:
http://www.w3.org/TR/1999/WD-xhtml-forms-req-19990830.html (02/11/2010)
XForms 1.0, disponvel em:
http://www.w3.org/TR/2003/REC-xforms-20031014/ (02/11/2010)
Extensible Markup Language (XML), disponvel em:
http://www.w3.org/XML/ (20/01/2011)
The Unofficial Cookie FAQ, disponvel em:
http://www.cookiecentral.com/faq/ (30/01/2011)
Opera, disponvel em:
http://www.opera.com / (21/06/2011)
Dive Into HTML 5, disponvel em:
http://diveintohtml5.org/forms.html (10/04/2011)
W3C confirma Last Call do HTML5 para maio de 2011 e padro completo para 2014,
disponvel em:
http://www.w3c.br/Noticias/W3cConfirmaLastCallDoHtml5ParaMaioDe2011E
PadraoCompletoPara2014 (22/06/2011)