Protocolo AMF(Action Message Format)

A Macromedia introduziu no mercado há algum tempo o Macromedia Flash Remoting, um gateway (Dispositivo que atua em qualquer camadado modelo ISO/OSI para vencer “diferenças” entres redes, manipulando e convertendo dados) baseado no protocolo AMF(Action Message Format). O protocolo AMF foi criado pela antiga Macromedia para facilitar a comunicação entre o Flash e um servidor.

Quando comparado a outras técnicas de conectar o Flash e um servidor, como loadVariables ou loadVars, o protocolo AMF apresenta algumas vantagens.

  • Sendo facil de usar o AMF automaticamente converte os tipo de dados nativos do servidor para actionscript e vice-versa.
  • O Flash Remoting(espefifico para ColdFusion, mas outras linguagens seu sua biblioteca AMF como AMFPHP e ZendAMF para PHP ou BlazeDS para Java) serializa as mensagens entre o servidor e o Flash usando o Action Message Format(AMF é um formato binário baseado em SOAP).
  • O AMF foi desenvolvido para se integrar com perfeitamente com design patterns.

Quando comparado com o HTML tradicional, é possivel criar aplicativos em Flash com habilidades para criar dinamicas e sofisticadas interações com o usuario, incluindo:

  • O Flash Player em execução pode trasmitir dados e chamar metodos do servidor.
  • Separação da apresentação e da logica de programação
  • Eficiente uso da largura de banda em virtude do protocolo AMF
  • Facil desenvolvimento para multiplas plataformas e serviços

Após um tempo de seu lançamento exclusivamente para ColdFusion, o protocolo AMF sofreu engenharia reversa e foram sendo criadas implementações para outras linguagens, inclusive JavaScript. Hoje o protocolo AMF é aberto e você mesmo pode criar sua implementação e as mais usadas para integração com um servidor PHP são o AMFPHP e ZendAMF. Com suporte completo a especificação AMF3 feita para usar com ActionSript 3.0.

AMFPHP, Flash, Flash Platform, Flash Remoting, Flex, Principal, RIA

2 comments


  1. Muito bom artigo Leandro…

    Show !!!

    []´s

  2. Ops… LEONARDOOOOOOOOO

    Escrevi Leandro.. foi mal…

    🙂

    []´s

Leave a Reply