Desenvolvendo de acordo com os padrões Web

Cada novo dia que abrimos nosso navegador para acessar mais um dos milhares de mash-ups, APIs e XMLs que facilitam nossa vida estamos nos afastando cada vez mais da função primordial da Web e da forma como foi planejada para ser: um imenso e estático repositório de documentos. Alternativa fácil para a colaboração online, a Web facilita a publicação e a recuperação de informações para um público que não é informata por vocação ou formação. O HTML foi estabelecido e interpretado pelos navegadores para facilitar a vida destes marcadores amadores, resultando em uma linguagem simplória, sem muitos recursos e sem a obrigatoriedade de ser corretamente desenvolvida.

O uso comercial da Internet e o surgimento dos primeiros profissionais da Web não alteraram o curso do desenvolvimento desta plataforma até o final da década de 1990 com as primeiras versões das recomendações XML (e XHTML), CSS e DOM. Estas foram as primeiras tentativas para o estabelecimento de paradigmas para a criação profissional de documentos para a Web e para o desenvolvimento de aplicativos simples para auxiliar a publicação e a recuperação de informações. Ainda hoje, mesmo com Ajax, Ahah, Amass e hypes similares, algumas destas recomendações são as nossas ferramentas essenciais no desenvolvimento Web. Nos últimos meses isto vem sido questionado como no caso da picuinha do WHATWG e a polêmica do HTML 5 x XHTML 2.

No entanto, a Internet comercial já estava a pleno vapor quando estas recomendações saíram. Muitos de nós, os primeiros profissionais da Web, estávamos mais do que formados empiricamente durante os anos da bolha. E com estas recomendações ainda não corretamente implementadas pelos navegadores e nossa formação profissional comprometida pelo cotidiano, não há de se admirar a quantidade de maus hábitos criados, documentados e perpetuados desde então.

Citemos alguns dos vícios do profissional Web e como começar a abandoná-los:

  1. Não ligamos para a marcação do código
    Seja lá como o código estiver marcado, o navegador irá tentar solucionar e apresentar aquele conteúdo da melhor forma possível. Se for um conteúdo simples não teria problema algum, mas em interfaces com alto nível de interatividade (como Ajax) ou qualquer acesso à árvore do HTML (como CSS e DOM) a queda de performance e o surgimento de bugs de renderização acontecem o tempo todo.
    Escolha um doctype que melhor se adeque às necessidade do projeto e tente validá-lo. Nem sempre é possível conseguir a marca de zero erros e zero alertas de primeira. Apenas tentar ser válido já é um ótimo começo no caso de integração com produtos legados ou de terceiros. Validadores em tempo real como o HTML Validator são uma ótima opção para manter a produtividade.
  2. Usamos marcação ignorando sua verdadeiras finalidades
    Sem uma camada de apresentação estabelecida através de uma recomendação e com a devida implementação nos navegadores, conseguir uma boa identidade visual em um website é impossível. Para isso, por muito tempo, usamos marcações para gerar tabelas para montar estruturas de página. Para muitos desenvolvedores e designers, CSS design ou tableless resume o desenvolvimento de acordo com os padrões Web, enquanto é apenas uma parte dele. A marcação semântica do código vai além de trocar tds por divs.
    Leia a lista de tags HTML e adicione em seus favoritos de consulta rápida. A marcação semântica é essencial para a indexação automática de documentos e um facilitador na portabilidade para outros dispositivos.
  3. Desenvolvemos de acordo com o navegador e não seguindo as especificações
    Em um mundo onde só se acessa a Web de um computador com monitor, teclado e mouse, com um único sistema operacional dominante e dois navegadores Web com mais de 95% do market share, fazer uma interface que funcione em qualquer situação é tão fácil quanto um “se” e um “senão”. Não vivemos mais neste mundo. Hoje podemos escolher entre vários navegadores, sistemas operacionais e dispositivos. Testar uma interface em todas as possibilidades não é só uma tarefa ingrata. É praticamente impossível.
    Devemos trabalhar com o que é comum a todos, que é a Web e seus padrões. Há diferenças de renderização e funcionamento de um navegador para outro? Claro, não há navegador perfeito. Trabalhe com o que melhor implemente as especificações abertas (atualmente Opera, Firefox e Safari) e trate as exceções.
    No CSS, aprenda como não ser prisioneiro dos CSS hacks contornando propriedades que são problemáticas, como por exemplo no caso do box model do Internet Explorer.
    No JavaScript, use a detecção de objetos ao invés da detecção de navegadores. A lógica é simples: se tem o objeto que preciso, faça; senão, não. Mesmo entre as diferentes versões de um mesmo navegador há diferenças na implementação dos objetos.

Não estamos mais nos anos da primeira euforia da Web. Estamos na Web 2.0, na fase áurea dos aplicativos de publicação e indexação de documentos! Muitas das recomendações tiveram problemas de implementação e outras foram duramentemente criticadas, mas o espírito da Web prevalece o mesmo. Podem continuar tentando transformar a Web em uma plataforma avançada de desenvolvimento de software, mas o objetivo continua o mesmo: criação, colaboração e publicação de documentos.

O princípio fundamental do desenvolvimento dos padrões passa por esta definição. Qualquer interface gerada a partir deste princípio terá potencial de ser acessível para qualquer tipo de usuário, ser automaticamente indexável por qualquer mecanismo de busca e portável para qualquer navegador, sistema operacional e dispositivo.

Por | Tags: | Alterado em 07/06/07 às 19:06

Comentários

  1. André M. disse:

    Muito bom este artigo, Simone. Infelizmente, aqui no Brasil, são poucas as empresas que se preocupam com os web standards (em alguns casos elas até dizem, mas não cumprem, na verdade) e temos que martelar cada vez mais que web standards não é questão de modismo. Bom trabalho e este teu site está ótimo! Parabéns!

  2. André M. disse:

    Com martelar, quis dizer que é importante que as empresas se conscientizem mais e mais em adotar os web standards, tornar seus sites mais acessíveis e melhorar a usabilidade e melhorar a web de um modo geral.

Faça um comentário

*