|
|||||||
|
|
|||||||
| Autor: Harold Flores | Tecnicos, PHP, Mysql, Linux, Mac, Flex. | ||||||
En el año 2002, Macromedia lanzó el termino RIA (Rich Internet Applications), para describir un nuevo tipo de aplicaciones que combinan los beneficios de una aplicación Web y las ventajas de una aplicación de escritorio, en ese momento la tecnología existente para lograr esto era Flash Player, con su lenguaje de programación Action Script, y con la herramienta authoring, la cual esta dirigida básicamente para diseñadores, y no para programadores, por lo cuál el desarrollo de este tipo de aplicaciones es poco popular, y no fue el boom que se esperaba.
Arquitectura Web Tradicional
Si recordamos la arquitectura tradicional de una aplicación Web, se basa en request – response, sin importar que utilicemos php,asp,jsp, recordemos que el navegador realiza un request al servidor y este envía un respond de vuelta a la página, y este ciclo se repite. En este tipo de plataforma HTML y CSS se convirtieron en los aliados para presentar los datos al usuario. Pero con el pasar de los años y el nacimiento de DHTML y AJAX (Asynchronous JavaScript and XML), se le da una nueva vida a las aplicaciones Web, que empezaron a imitar mucho del comportamiento que las aplicaciones de escritorio podían realizar, ya el usuario podía interactuar con la página cargada sin necesidad de refrescar la página completa, como hasta el momento era necesario, y esto sin dejar de lado la principal ventaja de una aplicación Web “disponible donde se tenga un navegador y conexión a internet”. Sin embargo a pesar de estas nuevas tecnologías las aplicaciones Web seguían resultando desde la perspectiva de usabilidad , menos amigables a las aplicaciones de escritorio, además que para lograr este tipo de comportamiento se necesitabas tener conocimiento en muchas tecnologías al mismo tiempo (Java Script, DMTHL, AJAX,etc) y la experiencia para implementar en distintos navegadores (Firefox,Internet Explorer,Safari,etc) HTML + CSS + JS. Qué es Flex? Es una forma de crear aplicaciones Flash, las aplicaciones Flex se compilan en archivos SWF que son ejecutados por el flash player, una de las ventajas es que el Framework es de código abierto, en este momento se encuentra en la versión 4, la cual tiene una gran cantidad de componentes que hacen mas fácil el realizar aplicaciones RIA, y además al ser de código libre, podemos crear nuestros propios componentes o modificar los existentes. En Flex existen dos lenguajes el MXML, es el utilizado para definir la interface de usuario, apariencia y comportamientos y el ya conocido Action Script, que es un lenguaje orientado a objetos, utilizado para crear la lógica del lado del cliente. Una de las grandes ventajas de Flex, es que lo podemos conectar con nuestras aplicaciones, en este caso en particular con nuestras clases PHP, de diferentes maneras, permitiendo dejar la lógica de negocio y la conexión a la base de datos, separada de la interface, pero interactuando de una forma sencilla y rápida, y en un modelo RIA, en la siguiente sección nos enfocaremos en esto. Arquitectura Flex PHP A diferencia de la arquitectura tradicional que mencionamos anteriormente, la arquitectura Flex PHP, funciona como lo podemos observar en la figura 1, y que lo resumimos a continuación:
Figura1. Arquitectura Flex PHPComo conectar clientes Flex a servicios PHP? En una aplicación Flex, manejamos un concepto de capas, donde la capa de lógica del negocio, y acceso a base de datos se encuentra del lado del servidor y es manejada por la aplicación PHP, Flex ofrece el mecanismo para llamar a las páginas del servidor, y obtener la respuesta, y para esto existen dos formas: sobre http o utilizando sockets. Sobre http, hay cuatro formas distintas de conectarse al servidor, REST Services, Web Services, Remoting, XML-RPC. Se puede utilizar el HTTPService class, para utilizar REST Services, mandando las variables POST en la solicitud y recibiendo la respuesta en XML. WebService Class, la podemos utilizar en el caso que tengamos un Web Services en el servidor (SOAP/WSDL). Y la forma mas interesante y a la que le vamos a dedicar un poco más de tiempo, es al acceso Remoting. Para esta utilizamos la class RemoteObject, podemos citar tres razones de porque es más útil este método:
![]() Figura 2. Remoting AMF3 Referencias http://www.adobe.com/devnet/flex.html http://www.adobe.com/devnet/flex/articles/flex_php_architecture.html http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex4sdk [ Regresar ] |
|||||||