Como divulgadores das Web Standards, muitos de nós participamos de comunidades online tais como listas de discussão, fóruns, grupos e blogs (não só escrevendo nossas próprias matérias como também comentando em blogs alheios). Em tais comunidades, é comum encontrarmos pessoas recém começando com HTML, e até mesmo várias delas já bastante familiarizadas com a marcação, mas principiantes nas práticas de desenvolvimento Web Standards.
Invariavelmente os iniciantes logo se encontram perante a eterna questão da decisão entre HTML ou XHTML; e hoje eu pretendo neste artigo responder a esta questão (para os principiantes) de uma vez por todas. Minha resposta é dada para os principiantes e para nós que ensinamos as práticas Web Standards. A resposta para usuários mais experientes seria diferente.
Eu não pretendo começar o debate XHTML versus HTML e muito menos reiterar que servir XHTML como text/html é extremamente nocivo; eu devo sim lembrar que tanto HTML quanto XHTML têm seu emprego apropriado e que é importante usar a ferramenta adequada para cada caso. Mas, para iniciantes é preciso dar uma resposta clara e apontar um caminho seguro para o aprendizado, assim, nós que ensinamos temos que adotar um caminho unificado na nossa posição. Se iniciantes se depararem com diferentes respostas vindas de diferentes fontes o resultado será uma confusão generalizada e acabaremos por lançar para sempre, os iniciantes, para o lado negro da força.
Quero começar dizendo que XHTML não é para iniciantes. Devemos começar ensinando HTML e assim sedimentar um caminho seguro para um futuro com XHTML. Argumenta-se que o futuro é o XHTML (the future lies with XHTML) (embora caiba um ‘vamos ver se é mesmo’) e desta forma devemos começar logo ensinando XHTML. Na teoria tal pensamento parece certo, mas a realidade é que nós estamos ensinando em um ambiente predominantemente text/html e o fato é que: tentar ensinar XHTML nas condições do HTML à maneira ‘tag-soup’ é algo parecido com tentar ensinar uma criança a nadar jogando-a em uma piscina funda e só perceber que ela está se afogando quando já for muito tarde. Com o XHTML acontece o mesmo; existe muita coisa que o iniciante deve aprender além dos itens relacionados com o suporte ao XHTML pelos navegadores e assim devemos simplesmente aceitar que eles não estão preparados para XHTML e então ensinar HTML.
XHTML não é simplesmente HTML 4 em sintaxe XML, ele é um pacote com todas as implicações e requisitos do XML com todas suas “Fragilidades” e “Cuidados no manuseio” próprios da marcação. A despeito da crença atual, envolvendo o uso de servir XHTML como text/html e fazer a mudança para XML quando o suporte do navegador melhorar, existem fortes evidências de que XHTML desenvolvido em ambiente text/html não sobreviverá à transição para XML, contrariando as suposições atuais.
O grande número de páginas ao estilo ‘tag-soup’ clamando ser XHTML é desenvolvida por principiantes que não levam em consideração detalhes extremamente importantes da codificação, sendo que a maioria destes principiantes, sequer entende direito o que estão fazendo e precisariam primeiro aprender para depois usar. Eu não pretendo me aprofundar em minúcias, mas aponto a seguir nesta matéria, alguns daqueles detalhes e garanto que se você perguntar a um iniciante (que tenha aprendido XHTML baseado nos princípios do HTML) sobre qualquer um dos detalhes apontados, eles não terão a mínima noção de sobre o que você esta falando. Vamos aos detalhes:
Eu tenho quase certeza de que não existe uma lista de diferenças entre HTML e XHTML, contudo cada uma destas diferenças que eu apontei (e mais uma série delas que eu não apontei) deve ser muito bem entendida por todos que queiram aprender XHTML apropriadamente.
A grande maioria delas ou não se aplica ou não são muito bem explicadas sobre o ponto de vista de condições HTML. Contudo, por tudo isto e mais ainda pelo fato de que iniciantes aprendem sobre condições HTML, não é seguro para principiantes aprender XHTML. Ao ensinar XHTML para iniciantes, nós estamos na verdade ensinado uma nova forma de codificação ao estilo ‘tag soup’ sob a égide do “desenvolvimento segundo as standards” e isto torna-se mais nocivo do que útil.
Usuários experientes e capazes de entender todas estas implicações estão em condições de fazer um julgamento fundamentado de quando é recomendável usar HTML ou XHTML, contudo o mesmo não se aplica aos principiantes. Para finalizar, quero reiterar que nós devemos nos unir nestes pontos de vista e encorajar os principiantes a começar com HTML e não com XHTML.
Este artigo é uma tradução do original em inglês de Lachlan Hunt
publicado em XHTML is not for Beginners
Em 2006 comecei a publicar nesse blog uma série de desafios CSS que consistiam em…
Há muito tempo que eu não publico um "Teste seu conhecimento". Esta semana, revendo algumas…
Introdução Elementos da marcação HTML podem ser aninhados uns dentro de outros, criando-se uma cadeia…
HTML5? Web universal? É comum eu me deparar com dúvidas sobre a HTML5 não só…
Quem é Tab Atkins Jr? Tab Atkins Jr, um desenvolvedor americano, trabalhou durante muitos anos…
Pessoal, a BrazilJS Conf 2013 disponibilizou para o Maujor cupons de desconto para serem oferecidos…
View Comments
Olha só....
Uma pessoa que escreve uma réplica cheia de erros de português como você, Guilherme, não merece crédito pelos comentários.
Sou web master há 6 anos, e dificilmente vejo em posts uma falta de respeito e profissionalismo com um colega.
Como você disse, é lamentável.
Despreso esse artigo.
É a coisa mais ridícula que já vi em toda minha vida.
Horrível.
Lamentavel.
Sou designer e programador a muito mais tempo que você meu caro amigo.
Dou aula a mais de 3 anos.
Seu artigo é desprezavel.
desejo que voces possa fazer meu msn mais seguro
Otimo texto.
òtima 'tradução' perfeita fonte de leitura.
Esta 'transição' parece ser muito complicada, eu mesmo, as vezes me pego a ler artigos como este, e novamente voltar e achar que está totalmente perdido caindo neste mundo de informação que está entrando em nossos olhos.
Bem, mais para dizer uma ótima materia, e que ainda temos muito para estudar.!
Concordando com os colegas acima, realmente está muito legal esta tradução do artigo do Lachlan Hunt! Aproveitando, gostaria de sugerir:
O carinha disse "Eu não pretendo me aprofundar em minúcias", mas creio que nada impede de que aqui tal aprofundamento aconteça. É apenas uma sugestão, mas o que acha, Maujor, de fazer uma "série" com detalhes de cada um dos itens elencados? Lembra-se daquela vez que fez várias matérias sobre algumas tags não muito conhecidas? Então, algo do gênero.
Creio que seria de grande ajuda para nós, "principiantes que não levam em consideração detalhes extremamente importantes da codificação"...
Excelente artigo, parabéns pela iniciativa de tradução.
Além do mais, muita gente divulga a idéia que o XHTML é "melhor" que o HTML. Não é bem assim.
As vantagens do XHTML são basicamente divididas em duas: Pode ser extendido e pode ser tratado com ferramentas XML, como o XSLT. Ele não é mais "semântico" do que o HTML, não é mais "correto" e não tem motivo para ser usado se você não faz (ou pretende fazer) uso direto dessas vantagens.
É muito comum ver hoje em dia sites que não usam nada disso, não extendem o XHTML (mesmo porque até para profissionais isso é um trabalho delicado) e não usam ferramentas XML diretamente no documento.
O XHTML foi idealizado para trazer o HTML pra essa nova gama de tecnologias XML, pra trabalharem em conjunto. É raro usarem isso, o HTML ainda é visto como "aquilo que vai pro navegador" e não "aquilo que pode ser interpretado por uma máquina". Para a maioria massante dos sites hoje em dia, o HTML dá e sobra. Basta ser usado corretamente.
Muito bom este artigo.
Realmente são pontos importantes a serem discutidos atualmente, já que estamos neste verdadeiro 'oba-oba' para aprender os Web Standards e acabamos nos esquecendo de alguns detalhes cruciais.
Sempre deve-se começar pelo básico, simples. E o HTML é o caminho mesmo.
Abraço!
Maujor, como sempre ótimos traduções, ou melhor, bons textos para mostrar a comunidade brasileira.
Achei esse muito bom, um guia ótima para quem está entrando no mundo do XHTML.
Parabéns!