Frameworks Ajax

Um Framework Ajax utiliza as tecnologias CSS (camada de formatação da apresentação), XHTML (camada de estrutura da apresentação), XML (dados a serem manipulados) e JSON (outra especificação do formato dos dados); Javascript (camada de controle) por meio de DOM (modelo de árvore de objetos) e com o objeto XMLHttpRequest (que fornece conexões assíncronas). Extende essa tecnologias padrões com componentes de eventos, efeitos, Drag’n’Drop, entre outros.

O benefício de se usar um Framework Ajax é o encapsulamento da complexidade de manipulação das tecnologias necessárias, fornecendo um só mecanismo Cross Browser que permita a utilização do ajax com acessibilidade semelhante ao ambiente desktop, além de facilitar o tratamento dos dados nas camadas físicas entre o lado cliente e o lado servidor.

Camadas

A primeira camada que praticamente todos os frameworks abstraem é a manipulação da utilização de chamadas ao servidor, como somente os browsers modernos implementam o objeto XHR, as estratégias de IFrame e Scripttag são delegadas como estratégias secundárias, alguns frameworks hoje até tem scripttag como técninca principal.

Existem ainda frameworks na UI (User Interface) e no lado servidor, os chamadas Frameworks ajaxificados (Ajaxian Frameworks) como Struts 2, JSF, etc.

camadas ajax

Tipos de Frameworks

Existem 3 categorias principais de tipos de Frameworks, no AjaxPatterns.org voce encontra um sumário com detalhamento dos tipos.

Javascript Multipurpose

Frameworks que fornecessem componentes sobre o conjunto de todas as tecnologias web no lado cliente e mecanismos de acesso ao lado servidor, como o encapsulamento do tratamento dos dados.

camadas ajax camadas ajaxcamadas ajax

Javascript Remote

Frameworks que são especialistas no encapsulamento do mecanismo de troca de objetos entre as camadas físicas.

camadas ajaxcamadas ajax

Javascript Specialized

Frameworks que são especialistas em somente um determinado comportamento ou mecanismo do conjunto de tecnologias web, como por exemplo: especialistas em efeitos ou somente na extensão do javascript.

camadas ajax camadas ajax

O foco desse blog será nos frameworks Ext, YUI e DWR, eventualmente falarei também de outros Frameworks como Prototype e Scriptaculous.