Web Sites com Ajax

JavaScript

Capítulo 3 - Prefácio

Gostaria de iniciar este capítulo com a seguinte frase de Jeremy Keith: "JavaScript doesn't kill websites... People with JavaScript kill websites".

Poderíamos traduzí-la assim: "JavaScript não destrói websites… Pessoas com JavaScript destroem websites". Seria o mesmo que dizer: "Armas não matam pessoas... Pessoas com armas que matam outras pessoas".

Tudo que está ao nosso alcance tem um propósito e um objetivo. A linguagem JavaScript está ao nosso alcance e ela tem o seu propósito. Infelizmente alguns desenvolvedores a utilizaram (e ainda a utilizam) de forma errônea, fazendo com que o seu propósito se modifique.

Mas, afinal, qual o propósito do JavaScript? Por que essa linguagem tem sido utilizada de forma errônea? São tantas respostas para duas simples perguntas, que irei ser breve e objetivo.

Bom, primeiro vamos conhecer o propósito do JavaScript e, na medida em que formos o conhecendo, você verá como ela é pouca utilizada de forma correta e sensata.

A web possui três camadas: conteúdo (XHTML), apresentação (CSS) e comportamento (JavaScript). Uma complementa a outra e cada uma delas desempenha sua função, ou seja, o XHTML conterá a marcação do conteúdo, as CSS irão estilizar a camada de conteúdo vinculado a ela e o JavaScript ficará responsável por toda interatividade que tal conteúdo possa vir a ter com o usuário.

Embora as camadas sejam interligadas entre si, se complementando, elas devem ser desenvolvidas independentes uma das outras. Portanto, na camada de conteúdo teremos somente XHTML, na de apresentação somente CSS e na de comportamento o JavaScript.

Mas o que presenciamos em muitos sites é algo como uma “salada de camadas”, onde a camada de conteúdo ganhe funcionalidades que não devem ser desenvolvidas por ela.

Vejamos alguns exemplos:

<p><font size="2" color="#ff9900">Texto</font></p> <input type="submit" onclick="algumaFuncao();" ...

O primeiro exemplo nos mostra a camada de conteúdo desenvolvendo a função de estilizar o documento, função essa que deve ser desenvolvida pelas CSS.

O segundo exemplo ilustra a camada de conteúdo com funções de interação com o usuário, papel da camada de comportamento.

Você provavelmente já trabalha com duas camadas: conteúdo e apresentação. Isso é um bom começo, uma vez que você já usufruiu das vantagens de se trabalhar com camadas separadas.

Mas, por que ainda não trabalha com a camada de comportamento como as outras?

Se você respondeu por que não sabe, ou por que não teve a oportunidade de aprender, essa é a chance.

Você verá, na unidade seguinte e no desenvolvimento do nosso projeto final, o quanto é produtivo, interessante, acessível e elegante a interação entre essas três camadas.

Bons estudos.