Apache Flex , anteriormente Adobe Flex , es un kit de desarrollo de software (SDK) para el desarrollo e implementación de aplicaciones web enriquecidas multiplataforma basadas en la plataforma Adobe Flash . Inicialmente desarrollado por Macromedia y luego adquirido por Adobe Systems , Adobe donó Flex a la Apache Software Foundation en 2011 [2] y fue promovido a proyecto de alto nivel en diciembre de 2012.
El SDK de Flex 3 se lanzó bajo la licencia MPL-1.1 en 2008. En consecuencia, las aplicaciones Flex se pueden desarrollar utilizando entornos de desarrollo integrados (IDE) estándar, como IntelliJ IDEA , Eclipse , el IDE gratuito y de código abierto FlashDevelop, así como el propietario de Adobe Flash Builder .
En 2014, Apache Software Foundation inició un nuevo proyecto llamado FlexJS para realizar una compilación cruzada de ActionScript 3 con JavaScript para permitir su ejecución en navegadores que no admiten Adobe Flash Player y en dispositivos que no admiten el tiempo de ejecución de Adobe AIR. [3] [4] En 2017, FlexJS pasó a llamarse Apache Royale . [5] [6] La Apache Software Foundation describe la versión actual de Apache Royale como una tecnología frontend de código abierto que permite a un desarrollador codificar en ActionScript 3 y MXML y apuntar a dispositivos web, móviles y de escritorio en Apache Cordova, todo a la vez. . [7] Apache Royale se encuentra actualmente en etapa de desarrollo beta. [8]
Flex usa MXML para definir el diseño de la interfaz de usuario y otros aspectos estáticos no visuales, ActionScript para abordar aspectos dinámicos y como código subyacente, y requiere Adobe AIR o Flash Player en tiempo de ejecución para ejecutar la aplicación. [9]
Macromedia apuntó al mercado de desarrollo de aplicaciones empresariales con sus lanzamientos iniciales de Flex 1.0 y 1.5. La empresa ofreció la tecnología a un precio de alrededor de 15.000 dólares por CPU . [10] Requerido para la implementación, el servidor de aplicaciones Java EE compiló MXML y ActionScript sobre la marcha en aplicaciones Flash ( archivos SWF binarios ). Cada licencia de servidor incluía 5 licencias para Flex Builder IDE.
Adobe cambió significativamente el modelo de licencia para la línea de productos Flex con el lanzamiento de Flex 2. El SDK principal de Flex 2, que consta de compiladores de línea de comandos y la biblioteca de clases completa de componentes y utilidades de interfaz de usuario, estuvo disponible como descarga gratuita. . Las aplicaciones Flex completas se pueden crear e implementar únicamente con Flex 2 SDK, que no contiene limitaciones ni restricciones en comparación con el mismo SDK incluido con Flex Builder IDE.
Adobe basó la nueva versión de Flex Builder en la plataforma Eclipse de código abierto . La empresa lanzó dos versiones de Flex Builder 2, Standard y Professional. La versión Profesional incluye la biblioteca Flex Charting Components.
Los servicios orientados a la empresa siguen estando disponibles a través de Flex Data Services 2. Este componente de servidor proporciona sincronización de datos, envío de datos, publicación-suscripción y pruebas automatizadas. A diferencia de Flex 1.0 y 1.5, Flex Data Services no es necesario para la implementación de aplicaciones Flex.
Coincidiendo con el lanzamiento de Flex 2, Adobe presentó una nueva versión del lenguaje de programación ActionScript , conocida como Actionscript 3, que refleja la última especificación ECMAScript . El uso de ActionScript 3 y Flex 2 requiere la versión 9 o posterior del tiempo de ejecución de Flash Player. Flash Player 9 incorporó una máquina virtual nueva y más robusta para ejecutar el nuevo ActionScript 3.
Flex fue el primer producto Macromedia cuyo nombre cambió a Adobe .
El 26 de abril de 2007, Adobe anunció su intención de lanzar Flex 3 SDK (que excluye Flex Builder IDE y LiveCycle Data Services) bajo los términos de la Licencia pública de Mozilla . [11] Adobe lanzó la primera versión beta de Flex 3, con nombre en código Moxie , en junio de 2007. Las principales mejoras incluyen la integración con las nuevas versiones de los productos Creative Suite de Adobe, soporte para AIR (el nuevo tiempo de ejecución de aplicaciones de escritorio de Adobe) y la adición de funciones de creación de perfiles y herramientas de refactorización para el IDE de Flex Builder.
Adobe lanzó Flex 4.0 (nombre en código Gumbo) el 22 de marzo de 2010. [12] El entorno de desarrollo Flex 4 se llama Adobe Flash Builder, [13] anteriormente conocido como Adobe Flex Builder.
Algunos temas que Adobe ha mencionado y que se han incorporado a Flex 4 son los siguientes:
Flash Builder está disponible en dos versiones: Standard y Premium, [15] la premium agrega las siguientes características;
El 3 de mayo de 2011, Adobe envió Flash Builder 4.5 copiando Flex 4.5 (solo SDK), que ofrece soporte completo para crear aplicaciones Flex y ActionScript para Google Android, así como soporte para crear aplicaciones ActionScript para BlackBerry Tablet OS y Apple iOS. Una actualización de Flash Builder 4.5 y Flex 4.5 agrega soporte para crear aplicaciones Flex para BlackBerry Tablet OS y Apple iOS.
Flex 4.5 SDK ofrece muchos componentes y capacidades nuevos, junto con soporte integrado en Flash Builder 4.5 y Flash Catalyst CS 5.5. Con el SDK de Adobe Flex 4.5 que se rige por tres objetivos principales:
En noviembre de 2011, Adobe lanzó la actualización 4.6 de Flex SDK, con los siguientes cambios:
El 25 de julio de 2012, la comunidad Apache Flex lanza Flex 4.8.0 en incubación y como una versión de paridad con Adobe Flex 4.6.0. Esta es la primera versión bajo la incubadora de Apache Software Foundation y representa la donación inicial de Adobe Flex 4.6 por parte de Adobe System Inc. [16]
Las diferencias y aspectos destacados incluyen:
11 de enero de 2013, la comunidad Apache Flex lanza Flex 4.9.0. Este es el primer lanzamiento desde que Apache Flex se convirtió en un proyecto de alto nivel de Apache Software Foundation. [17]
Las diferencias y aspectos destacados incluyen:
28 de febrero de 2013, la comunidad Apache Flex lanza Flex 4.9.1. Esta fue una actualización menor a 4.9.0. [18]
El 6 de agosto de 2013, la comunidad Apache Flex lanza Flex 4.10.0. [19]
Las diferencias y aspectos destacados incluyen:
28 de octubre de 2013, la comunidad Apache Flex lanza Flex 4.11.0. [20]
Las diferencias y aspectos destacados incluyen:
10 de marzo de 2014, la comunidad Apache Flex lanza Flex 4.12.0. [21]
Las diferencias y aspectos destacados incluyen:
3 de mayo de 2014, la comunidad Apache Flex lanza Flex 4.12.1 [23]
Las diferencias y aspectos destacados incluyen:
28 de julio de 2014, la comunidad Apache Flex lanza Flex 4.13.0. [24]
Las diferencias y aspectos destacados incluyen:
28 de enero de 2015, la comunidad Apache Flex lanza Flex 4.14.0
Las diferencias y aspectos destacados incluyen:
11 de enero de 2016, lanzamiento de la comunidad Apache Flex Flex 4.15.0 [26]
Las diferencias y aspectos destacados incluyen:
14 de marzo de 2017, lanzamiento de la comunidad Apache Flex Flex 4.16.0 [27]
Las diferencias y aspectos destacados incluyen:
LiveCycle Data Services (anteriormente llamado Flex Data Services ) es un complemento del lado del servidor para el SDK principal de Flex y el IDE de Flash Builder y forma parte de una familia de productos basados en servidor disponibles de Adobe. LiveCycle Data Services, implementado como una aplicación Java EE, agrega capacidades a las aplicaciones Flex.
Anteriormente disponible solo como parte de Adobe LiveCycle Data Services ES, Adobe planea contribuir con las tecnologías BlazeDS a la comunidad bajo LGPL v3 . BlazeDS ofrece a los desarrolladores de Adobe acceso gratuito a las tecnologías de mensajería y comunicación remota desarrolladas por Adobe.
Simultáneamente con el lanzamiento previo de BlazeDS, Adobe está publicando la especificación del protocolo de datos binarios AMF , en la que se basa la implementación de comunicación remota de BlazeDS, y está intentando asociarse con la comunidad para que este protocolo esté disponible para las principales plataformas de servidores.
Flex 2 ofrece integración especial con ColdFusion MX 7 . La versión ColdFusion MX 7.0.2 agrega Flash Remoting actualizado para admitir ActionScript 3, una puerta de enlace de eventos de Flex Data Services y el ensamblador de Flex Data Services. Flex Builder 2 también agrega extensiones para ColdFusion que proporcionan un conjunto de asistentes para el desarrollo de RAD Flex. Un subconjunto de Flex 1.5 también está integrado en la plataforma de middleware ColdFusion MX 7, para su uso en la función de formularios ColdFusion Flash. Es posible utilizar este marco para escribir aplicaciones web enriquecidas, aunque su propósito previsto es únicamente para formularios enriquecidos. [ cita necesaria ]
Hay varios marcos de aplicaciones disponibles que ayudan al desarrollador a resolver algunas tareas comunes y configurar la estructura de la aplicación de acuerdo con las mejores prácticas.