1 de diciembre de 2009

Aplicaciones a las cuales está destinado Flex


Mientras muchas aplicaciones tienen muchas o todas las características señaladas anteriormente, Macromedia diseñó Flex para funcionar particularmente bien con aquellas aplicaciones que deben satisfacer los requisitos ya señalados de una forma regular. Esos requisitos se manifiestan en las siguientes aplicaciones:


  • Ventas
  • Autoservicio
  • Toma de decisiones mediante graficos

Venta guiada
Estas aplicaciones mejoran el comercio en línea e incorporan configuradores de productos, motores de comparación, selectores de productos, cestas de compras/cajas, y más. En este tipo de aplicación, el usuario normalmente tiene que desplazarse a través de un proceso de múltiples pasos para configurar, seleccionar o comparar productos. Cuando se implementan en HTML, esas aplicaciones pueden resultar muy tediosas y confusas para el usuario final, lo cual se traduce en el abandono de la cesta de compras y pérdida de oportunidades lucrativas. Este tipo de aplicación resulta muy bien para las capacidades de un cliente dinámico, implica un alto grado de integración a lo largo de los múltiples niveles y es del dominio de los desarrolladores de aplicaciones empresariales.
Con Flex, los desarrolladores pueden crear aplicaciones de venta guiada que aumenten las razones por las cuales este tipo de aplicaciones se hicieron populares en un principio: para fomentar el negocio en línea. Pueden crear aplicaciones que ayuden a combatir las altas tasas de abandono de las cestas de compra en línea, a la vez que ayuden a aumentar el tamaño del pedido y la frecuencia.


Automatización del proceso del negocio
Estos tipos de aplicaciones tienen con frecuencia procesos complejos la manipulación de datos y la validación del lado del cliente. Un sistema hacer reservas de hotel es un buen ejemplo de una aplicación de que refleja la automatización del proceso del negocio. Existen muchas aplicaciones internas que se ajustan a esta descripción también, ejemplo, el trámite de pedidos y los sistemas de registro. Los desarrolladores pueden racionalizar procesos complejos usando Flex para ofrecer tramitación más rápida y más sencilla y proporcionar más respuesta Las aplicaciones Flex ayudan a los usuarios finales a mantener su concentración, interactuar con la aplicación e incrementar la frecuencia través de una respuesta/retroalimentación instantánea. En última automatización del proceso del negocio en Flex quiere decir finalización transacción con mayor rapidez y una calidad de datos más alta.

Toma de decisiones mediante graficos

Las aplicaciones que proporcionan acceso a datos e información, como el sistema de informes de ventas, son críticas para el desenvolvimiento del negocio.
Hoy en día, los usuarios finales pueden sentirse frustrados por un rendimiento indeseable ocasionado por cada solicitud que inicia un viaje de ida y vuelta al servidor para poder producir el resultado deseado. Las organizaciones también tienen que luchar con la integración de datos importantes del negocio que provienen de sistemas desiguales. En consecuencia, las hojas de cálculo proliferan aun en organizaciones que ya están usando algún medio para generar informes de negocios o soluciones de inteligencia.
Para las organizaciones que quieren sacarle más provecho a su solución de inteligencia, o quieren proporcionarle a los usuarios finales una perspectiva más profunda y más rápida, un “salpicadero” hecho con Flex aporta enormes beneficios. Al brindar una combinación de manipulación directa y componentes de enlace de datos, Flex le permite a los usuarios ver y trabajar dentro del contexto de la aplicación. También pueden aplicar filtros, elegir formatos de gráficos y explorar dinámicamente sin tener que devolver nada al servidor.

Flex, Editores de código y Flex Builder



Los desarrolladores de aplicaciones Flex pueden trabajar con varios tipos de herramientas. El primer tipo de herramienta incluye cualquier editor de texto genérico, como VI, emacs o Microsoft Notepad. Los archivos de MXML son archivos de texto normales, para que los desarrolladores puedan usar el editor de texto que deseen. Esta modalidad basada en archivos de texto también hace que las aplicaciones Flex sean fáciles de gestionar con los sistemas de control de código fuente.
El segundo tipo de herramienta que se puede usar para crear aplicaciones Flex es el entorno de desarrollo integrado. Por ejemplo: Borland JBuilder, JetBrains IntelliJ IDEA y Altova xmlspy. La ilustración 4 muestra una aplicación Flex editada en IntelliJ IDEA.



Componentes Flex

El modelo basado en componentes facilita la creación de las aplicaciones Flex.
Los desarrolladores pueden utilizar los componentes que vienen incluidos en Flex, extender los componentes para añadir nuevas propiedades y métodos y crear nuevos componentes.
Los componentes Flex son muy flexibles y le permiten a los desarrolladores definir a su antojo el aspecto del componente, la forma en que el componente reacciona a las interacciones del usuario, la fuente y el tamaño de fuente de cualquier texto incluido en el componente, el tamaño del componente en la aplicación y muchas otras características. Los componentes Flex admiten las
siguientes características:
Eventos – Acciones de la aplicación o del usuario que exigen la respuesta del
componente.

  • Comportamientos – Cambios visibles o audibles en el componente
    provocados por una acción de la aplicación o del usuario.
  • Skins – Símbolos (“revestimientos”) que definen el aspecto del componente.
  • Estilos – Conjunto de características, como la fuente, el tamaño de fuente y
    la alineación de texto.
  • Tamaño – Altura y anchura de un componente (todos los componentes
    tienen un tamaño predeterminado).


La biblioteca de clases de Flex proporciona dos tipos de componentes: los contenedores y los controles. Cuando los desarrolladores crean una aplicación usando Flex, describen la interfaz del usuario con controles y contenedores. Los controles son componentes de la interfaz de usuario que manejan las interacciones del mismo y muestran datos que los usuarios pueden manipular
directamente a través de ese control. Algunos ejemplos de controles son el DataGrid y el TreeControl. Un contenedor define una región de la superficie de dibujo del Flash Player y controla la disposición para todo en el contenedor, incluyendo los otros contenedores y controles. Algunos ejemplos de contenedores son el contenedor Form (formulario) para introducir datos, un Box (cuadrado) y una Grid (cuadrícula).
La mayoría de los controles tienen las siguientes características:

  • La API de MXML para declarar el control y los valores de sus propiedades y
    eventos
  • La API de ActionScript para llamar a los métodos del control y establecer
    sus propiedades y eventos durante la ejecución
  • Aspecto y carácter personalizables usando estilos, skins y fuentes


Comportamientos Flex.
La Flex Class Library (biblioteca de clases de Flex) también proporciona comportamientos precreados que le permiten a los desarrolladores añadir con facilidad movimiento y sonido a sus aplicaciones para darle a los usuarios un contexto para sus acciones. Por ejemplo, un desarrollador puede usar comportamientos para provocar que un cuadro de diálogo rebote un poco al recibir enfoque.
Un comportamiento es la combinación de un causante junto con su efecto. Un causante es una acción, por ejemplo el clic del mouse sobre un componente, o un componente que se vuelve visible. Un efecto es un cambio visible en el componente que ocurre en el transcurso de un periodo, medido en milisegundos.
Algunos ejemplos de efectos son atenuar, mover, cambiar de tamaño o pausar.
Los desarrolladores pueden definir múltiples efectos para un solo causante así como personalizar los efectos o fabricar efectos combinados para satisfacer las necesidades particulares de su aplicación.


Servicios de Flex durante la ejecución
El servidor de presentación Flex incluye un conjunto de servicios para la compilación de las aplicaciones dinámicas de Internet y la memoria caché, la integración de los recursos de la empresa, y las necesidades de despliegue durante la ejecución. Todos los servicios de Flex reducen al mínimo la redundancia y explotan al máximo los recursos empresariales existentes. Por ejemplo, la lógica de la aplicación del lado del servidor, la autenticación, y la gestión de sesiones se proporcionan a través de una integración con el Java subyacente en vez de introducir las capas de servicios redundantes.
Flex complementa a Java y a otras tecnologías existentes, pero es una aplicación completamente nativa en los servidores de aplicaciones Java y se integra con la plataforma de servicios web, integración de datos y aplicaciones, seguridad y otros recursos. Flex da soporte a los siguientes servidores de aplicaciones Java:

  • IBM WebSphere
  • BEA WebLogic
  • Macromedia JRun
  • El Apache Tomcat servlet container
  • El servidor de aplicaciones Oracle 10g
  • Fujitsu Interstage 6 para la versión japonesa

Las aplicaciones Flex se compilan en un modelo “justo a tiempo”, sin perturbar la experiencia del usuario. La aplicación Flex se compila la primera vez que se acude a ella, y luego se mantiene en la memoria caché para las invocaciones subsiguientes; las aplicaciones Flex se recompilan automáticamente si se actualiza cualquier archivo relacionado.
Los servicios relacionados a la integración de Flex son:

  • Proxy de servicios web del lado del servidor que extiende el modelo de seguridad nativo de Flash y da soporte al acceso de datos de una forma segura fuera del dominio de origen de la aplicación.
  • Acceso de objetos Java del lado del servidor que está disponible para aplicaciones, datos e integración de directorios.
  • Soporte de sesiones compartidas que permite que las sesiones de la aplicación Flex sean compartidas entre los contextos de HTML y la aplicación Flex.
  • Autenticación que da soporte a los servicios sign-on (entrada al sistema) para una sola vez en J2EE.
  • Servicios de detección y actualización de Flash Player que detectan, y actualizan si quiere, las instalaciones de Flash Player —un requisito fundamental para las empresas que operan bajo principios estrictos de configuración de dispositivos cliente. (Flex requiere Flash Player 7 para que pueda sacar provecho de las características de seguridad y
    rendimiento.)
  • Instanciación diferida carga elementos de la aplicación a solicitud o bajo el control del desarrollador—en vez de todos al mismo tiempo— porporcionando varias opciones durante la ejecución para mejorar el tiempo de iniciación.

MXML El lenguaje de marcas de Flex


Al igual que HTML, MXML es un lenguaje de marcas que describe las interfaces del usuario que exponen contenido y funcionalidad. A diferencia de HTML, MXML proporciona abstracciones declarativas para la lógica de niveles de presentación y enlaces entre la interfaz del usuario y los datos del lado del servidor. MXML ayuda a elevar al máximo la productividad del desarrollador y aprovechar la reutilización de la aplicación porque separa nítidamente la capa de presentación, de la capa de la lógica del negocio. El desarrollo con MXML se basa en el mismo proceso iterativo que se utiliza para otros tipos de archivos de aplicaciones web, como HTML, JSP, ASP y ColdFusion Markup Language (CFML). Desarrollar una aplicación con MXML es sencillísimo: se abre el editor de texto, se escriben las etiquetas, se guarda el archivo, y se abre el URL del archivo en un navegador web.

Generalidades del producto Flex




El servidor de presentación Flex se despliega en los servidores de aplicaciones Java existentes a modo de archivo .war (pronto saldrá una versión para .NET) y consiste de la estructura de la aplicación Flex y los servicios que se procesan durante la ejecución de Flex.


La estructura de la aplicación Flex está compuesta por MXML, ActionScript 2.0 y la biblioteca de clases Flex. Los desarrolladores combinan MXML y ActionScript 2.0 para escribir aplicaciones Flex. El MXML se usa para definir declarativamente los elementos de la interfaz del usuario y el ActionScript 2.0 para la lógica del cliente y el control de los procedimientos.
La Flex Class Library (biblioteca de clases de Flex) tiene componentes Flex, gerentes y comportamientos. Con el modelo de desarrollo basado en componentes Flex, los desarrolladores pueden incorporar componentes precreados, crear nuevos componentes o combinar componentes precreados con componentes hechos.

Ventajas de una gran experiencia de usuario


Proporcionar una experiencia superior para el cliente es un distintivo clave para la mayoría de las empresas de éxito, y la explosión de la Internet ha aumentado el porcentaje de interacciones en línea entre clientes y socios. Esto quiere decir que las experiencias en línea están sustituyendo las interacciones personales, y esta tendencia va en rápido aumento. Si bien a primera vista esa tendencia trae potenciales ventajas para reducir los costes, las ventajas que una organización
en particular pueda derivar de ella son inciertas. Esto se debe a que en el mundo de la Internet optar por otra posibilidad es muy fácil, y por consiguiente, la calidad de la experiencia del usuario se convierte en uno de los factores más importantes para forjar y mantener las relaciones en línea. La excelencia en la experiencia del usuario ha sido el sello que ha distinguido a las marcas predominantes en el mundo de los negocios. Las organizaciones que entienden la ventaja de una excelente experiencia de usuario concentrarán sus esfuerzos en atraer y retener sus relaciones en línea.