Adobe Flex

Adobe Flex é um conjunto de tecnologias para o desenvolvimento simples de aplicações profissionais com gráficos atraentes e interactividade parecida com Macromedia Flash. Fundado em Março de 2004 como uma aplicação J2EE contendo ficheiros xml dentro de aplicações Flash (ficheiros SWF clássicos), esse conjunto tecnológico evoluiu até ao ponto de produzir ficheiros que podem agora ser publicados na web sem necessitar nenhuma licença Flash. As aplicações desenvolvidas com Flex são corridas no próprio navegador e exploram a capacidade de computação do ambiente Flash Player 9 “runtime environment” para correr qualquer operação do lado cliente e apresentar gráficos e elementos visuais complexos, e reproduzir áudio e vídeo. Como o leitor Flash Player está disponível para os sistemas operativos mais comuns (Windows, Linux, Macintosh e Solaris), sem nenhum custo, a aplicação Flex final pode atingir um largo publico de utilizadores que habitualmente só acedem a web.
Flex é baseado em componentes pré-definidos para permitir o desenvolvimento rápido de aplicações de uma Rich Internet Application (RIA) de uma forma simples. Cada componente pode ser personalizado ou criado desde a base e declarado em documentos MXML, o formato xml proprietário da Adobe que lhe permite definir esquematicamente a interface de utilizador.
A linguagem MXML é o coração dessa aplicação da Adobe e é adoptada para todos os aspectos no desenvolvimento desde as ligações entre dados até os comportamentos, passando pelo acesso aos dados a partir de outras aplicações. Criar animações Flash reduz-se neste sentido a desenvolver ficheiros texto simples com tags pré-definidos que descrevem os componentes e as suas interligações.
Flex inclui muitos componentes avançados como “drag and drop” (ou “arraste e “largue”), serviços web, objectos remotos, colunas ordenadas, gráficos, efeitos de animações e interacção do utilizador.
Existe, obviamente, uma diferença fundamental entre Flex e os standards HTML. Em quanto o HTML é interpretado do lado cliente pelo navegador que recolhe os dados remotos, o MXML só é um ficheiro fonte que é então compilado e produz ficheiros SWF proprietários que são então recuperados pelo leitor Flash player. Além disso, o cliente só será carregado no primeiro acesso, aumentando a velocidade total de carregamento quando comparada as aplicações tradicionais cliente-servidor (tais como o php, asp, perl, jsp) que necessitam um carregamento contínuo a cada acesso.
Os componentes básicos de um ficheiro MXML são: a declaração do documento XML, um contentor raiz de alto nível que contenha toda a aplicação (root Application tag), servindo de alojamento para os elementos.
O componente servidor Flex (ou Flex server) é um gateway que permite ao cliente comunicar com objectos remotos (tais como classes Java ou Coldfusion CFCs que integram Action Message Format) com Serviços Web XML.
A tecnologia Flex inclui Flex Mainframe SDK, que é um kit de desenvolvimento baseado em componentes para a distribuição de aplicações e o leitor Flash Player. Mas Adobe também pôs a venda um ambiente de desenvolvimento mais simples de usar para aqueles que apreciam a tecnologia. O sistema chama-se Adobe Flex Builder e é baseado no popular Eclipse. Flex Builder deixa-o criar facilmente aplicações complexas que incluem Serviços Web, LiveCycle Data Service, ou mesmo simples XML.
Desde Marco 2004 (data da primeira saída comercial de Flex, a 1.0) até agora, temos oito versões, incluindo a ultima disponível, a versão 3.0 que é agora estável e largamente utilizada. O produto da Adobe tem no seu caminho dois formidáveis rivais que estão a ganhar cada vez mais espaço: OpenLaszlo e Ajax. O desafio para conquistar os desenvolvedores está aberto!