terça-feira, 10 de julho de 2007

Convença sua Equipe: Para Desenvolvimento Web, é com Adobe® Flex™

Há alguns dias, elaborei uma solução usando Flex aqui na empresa, e me pediram para argumentar
o porque de usar o Flex, não medi esforços e logo fiz um .doc, Segue abaixo:


Adobe Flex

Características do Adobe® Flex™ 2:


O Adobe® Flex™ 2, é um produto desenvolvido a princípio pela Macromedia, hoje fundida com a Adobe, empresa muito famosa por seus reconhecidos programas para WEB, como Adobe Photoshop, Adobe Dreamweaver, Adobe Acrobat Reader. O Adobe® Flex™ 2 é a solução de desenvolvimento de aplicativos mais completa e potente para se criar e fornecer aplicativos avançados de Internet (RIAs) no ambiente empresarial e na Web. Ele permite que as empresas criem aplicativos multimídia personalizados que melhorem significativamente a experiência do usuário, revolucionando o modo como as pessoas interagem com a Web.

Ex:
Flex Store, Gráficos, Style Explorer.


O SDK (Software Development Kit) do Flex, a partir da versão 2.0, foi dado como free a comunidade, logo qualquer um podia baixar seu SDK, e programar e compilar de graça. Mais tarde em Abril de 2007, a Adobe decide tornar todo o Flex OpenSource, até mesmo o seu compilador (mxmlc.exe) sobre a licença (MPL) Mozilla Public License .
O Flex conta com uma poderosa ferramenta para desenvolvimento, O Adobe Flex Builder™, uma IDE baseada no Eclipse™ o que agiliza muito o desenvolvimento de interfaces. Esta é uma ferramenta é cobrada pela Adobe®.


A Licença do Adobe® Flex™ 2 e o que é Cobrado:

O Flex, está sob a licença MPL, basicamente um
código sob a licença MPL quando o fonte copiado ou alterado sob a licença Mozilla deve continuar sob esta licença. Porém, este código pode ser combinado em um programa com arquivos proprietários como por exemplo um servidor de aplicação como da BEA. Além disso, é possível criar uma versão proprietária de um código sob a licença Mozilla. Por exemplo, o navegador Netscape 6 e 7 são versões proprietárias das versões correspondentes da suíte Mozilla.
Em todo o ambiente Flex, apenas o Flex Builder (IDE de desenvolvimento) e o Flex Charts (API para desenvolvimento de Gráficos), isto é, a princípio para se desenvolver com Flex não necessita ter gastos, lembrando que todo o SDK do Flex é OpenSource. O Flex Builder já com a API de Gráficos, fica em torno de U$500,00 a U$600,00.

O Lado “Servidor “ do Flex...


A princípio, o Adobe® Flex™ 2 não necessita de um servidor de aplicação, uma vez que o Flex é apenas umas solução para a camada de aprensentação, porém o Flex pode rodar com liguagens como Java, PHP, ASP, C#, ColdFusion, e estes necessitam de um servidor de aplicação, para isto existe Frameworks OpenSource que estão do lado do servidor, que fazem a comunicação entre o Flex, e alguma linguagem.
Como por exemplo, para integração do Flex com Java usando o servidor da BEA Workshop, existe o GraniteDataServices ou OpenAMF.

Vantagens de se utilizar o AdobeFlex:


Em comparativo com Telas em Html (JSP):
  • Não há necessidade de programar compatibilidade entre browsers, como o Firefox ou Internet Explorer, pois a aplicação Flex roda sobre uma Máquina virtual, nada mais nada menos que o plugin Flash, este encontrado em 98% dos computadores na WEB.
  • Com a ajuda do Flex Builder, o desenvolvimento fica muito ágil, uma vez que o Flex B uilder tende a ser uma ferramenta RAD(Rapid Application Development, como Delphi) o que resumidamente é clicar e arrastar para desenhar telas.

  • A interface final, sempre fica dinâmica e mais interativa.

Em comparativo com o OpenLaszlo:

  • O OpenLaszlo não contém uma IDE, o que retarda o processo de desenvolvimento.
  • O OpenLaszlo só se comunica através de XML, já o AdobeFlex, se comunica via WebServices, XML, RPC, AMF dentre outros. Lembrando que o protocolo desenvolvido pela Adobe, o AMF, é o mais rápido para troca de dados na WEB.Ver comparativo:
http://www.jamesward.org/census/
  • O OpenLaszlo conta um compilador, que compila quando uma requisição via browser é feita, logo quando se trata de uma aplicação muito grande, seu tempo de compilação é muito grande. Já o Flex pode ser compilado e depois ser colocado em produção, ou também ser compilado quando for requisitado pelo browser.

  • O OpenLaszlo não tem uma empresa administradora de reconhecimento no mercado, o que torna difícil ter uma possível consultoria.

  • A sintaxe da linguagem do OpenLaszlo a primeira vista é complicada, o que torna o tempo de aprendizado mais longo. Já com o Flex a sintaxe é muito similar com HTML.
  • Gerais..:

    • O Flex é a complementação da WEB 2.0, conceito que resumidamente deixa equivalente a visualização de um sistema Desktop e um sistema WEB. Só que de maneira mais dinâmica onde o clicar e carregar uma nova página desaparece!
    • Fácil Integração com Servidores J2EE, como por exemplo o Servidor de Aplicação da BEA WebLogic. Também vale lembrar que a BEA em suas versões mais novas, já integrou o Adobe Flex. Ver:
    BEA Flex
  • Documentação bem elaborada.
  • Suporta Clusterização.
  • Seu SDK é todo OpenSource Licenciado sob a licença da MPL.
    A Comunidade Flex está cada dia maior, logo fica fácil a troca de opiniões e dúvidas.
    Se necessário suporte da Adobe.
  •