domingo, 11 de maio de 2008
O Blog, o tempo, e o guarda-roupa
A política de atualização ou de adição de um conteúdo no blog é algo a ser pensado. É realmente necessário um conteúdo relevante, ou pode apenas ser a virtualização digital ou a digitalização virtual do coceito de um 'Diário'?
Relembrando os primórdios, me lembro do tempo onde, como muitas outras, blog virou a buzzword e eu não tinha idéia do que se tratava, quando era nada mais, nada menos do que um web log, um diário virtual.
Quão diário tem sido meu blog virtual?
Quão virtual tem sido meu blog diário?
São perguntas que ainda quero responder.
Mudando de assunto: Dá-lhe Grêmio!
Subscrevo-me virtualmente, e pseudo-diariamente.
E o guarda-roupa? Sem razão de estar, acho que um blog é isso, você fala, pensa, não muito, e escreve. E depois se arrepende. Ou não.
terça-feira, 19 de fevereiro de 2008
AJAX for dummies reloaded
Há algum tempo sendo tema de palestras e dabates, Ajax vem como um alívio aos desenvolvedores web, que sentem cada vez mais encurralados a adicionar interatividade em suas aplicações.
A história começa quando no ínício do ano 1999 a Microsoft lança a versão 5 de seu navegador, incluindo uma nova funcionalidade ao seu controlador ActiveX. Trata-se da possibilidade de criar um objeto do tipo XMLHTTP, que, de acordo com documentação da Microsoft, permite que seja postada uma árvore xml para um servidor web de preferência, e obtida a resposta enviada pelo servidor para que processamentos client-side pudessem ser feitos.
A alternativa até então usada para conseguir um resultado semelhante consistia no uso de IFRAMEs (frames html que, via css, podem ser tornados invisíveis): formulários eram postados para os IFRAMEs, processados, e o resultado era, na maioria das vezes, um xml (para ser processado novamente em client-side), ou um Javascript contendo o código a ser executado pelo navegador.
O cenário hoje se assemelha muito com o anterior. Até o lançamento do Internet Explorer 7, controles ActiveX eram usados para a criação dos objetos XMLHTTP, já na nova versão, a Microsoft, permite que a requisição seja feita sem o uso de controles ActiveX, e sim através do Objeto XMLHttpRequest, cujo draft já está presente no W3C.
A respeito do navergador Mozilla, consta que desde sua versão 1.0 a funcionalidade está presente e claramente definida como uma cópia daquela presente no IE. A diferença mais visível entre as duas implementações foi, até o lançamento do IE 7, o uso de um Objeto Javascript no lugar de um controle ActiveX, objeto esse que tem o nome de XMLHttpRequest, o mesmo proposto pelo W3C, fato que não é uma coincidência.
Com a exposição em forma de Objeto Javascript pelo IE 7 e grandes esforços por parte do W3C, bem como de outros desenvolvedores de navegadores (Opera, Safari, Mozilla, e etc.), estamos muito próximos de uma solução 100% compatível com os vários clientes web.
Quando se pergunta às pessoas o que é o Ajax, as respostas sempre variam: alguns dizem que é um tecnologia, outras um paradigma, outras uma técnica, e a lista se extende. Prefiro porém acreditar (e concordar com a definição contida no Wikipedia para o termo) que trata-se de uma técnica que se utiliza de várias tecnologias. AJAX, sigla de Asynchronous Javascript And XML, consiste em fazer uso de requisições utilizando o objeto Javascript XMLHttpRequest de maneira assíncrona. Por “assíncrona”, temos que o número de requisições feitas pelo browser não corresponde necessariamente ao o número de solicitações que um usuário tem conhecimento que faz a um servidor. Cito o exemplo das famosas caixa de seleção de estado e cidade: ao selecionar um estado, o browser faz uma solicitação ao servidor informando o estado, que retorna as cidades referentes àquele estado, para então, com base na resposta presente no objeto XMLHttpRequest, popular a caixa de seleção com a nova lista.
Como um dos components da Web 2.0, AJAX tem nos feito acreditar que o mundo de Rich Web Applications é realmente possível e que estamos cada vez mais dentro dele.
Referências:
http://support.microsoft.com/kb/217145/en-us
http://blogs.msdn.com/ie/archive/2006/01/23/516393.aspx
http://msdn2.microsoft.com/en-us/library/ms950766.aspx
http://adaptivepath.com/publications/essays/archives/000385.php
http://www.w3.org/TR/XMLHttpRequest/
