AS3 eval(): compilar AS3 desde el Flash Player
Algo que hasta ahora parecía imposible se ha hecho realidad gracias a metal.hurlant.com/blog/ y al proyecto Tamarin que Adobe a donado a la fundación Mozilla.
Se trata de la posibilidad de poder compilar porciones de código ActionScript en tiempo de ejecución desde el Flash Player.
El proyecto que permite esto se llama As3Eval y es una librería (licencia MPL/GPL/LGPL) que porta el compilador de Tamarin a AS3. El resultado final es que podemos crear aplicaciones que se autocompilan a si mismas, exactamente de la misma forma en que lo hacemos con el homólogo eval() en Javascript.
En la página del proyecto hay un enlace a una demo en la que puedes testear tu propio código, por ejemplo:
-
import mx.core.Application;
-
import mx.controls.Button;
-
var b:Button = new Button();
-
b.label = "Hola Mundo!";
-
b.x = b.y = 200;
-
b.addEventListener( "click", clickHandler );
-
Application.application.addChild(b);
-
function clickHandler(evt):void
-
{
-
Application.application.alpha = Math.random();
-
}
simplemente increíble....
Y por si fuera poco, dos días después de lanzar esto, el mismo chico nos vuelve a sorprender con JSObject, un wrapper de JavaScript para AS3. Algo parecido al JSObject de Java pero para AS3.
* ActionScript 3 Eval Library * AS3 JSObject
Adobe Flex Open Source
No es una broma no... la gente de Adobe ha decidido abrir el código del SDK de Flex (no el FlexBuilder) bajo la licencia MPL.
Esto es (sacado de un post de Ryan Stewart):
* The Flex Compilers (mxmlc, compc, asc) * Flex command line debugger * View source utilities * Automated Testing Framework * Flex core component library (incluye Apollo components) * Build Scripts * Web tier compilers * Flex-Ajax Bridge
A finales de este año la transición total será efectiva.
Enlaces: * Adobe to Open Source Flex [vía MIF]
Flash Player 9 para Linux y empieza a desarrollar Flash/Flex en Linux
Leo en MIF que la beta del Flash Player 9 para Linux ya ha salido.
Esto significa que las nuevas aplicaciones que creemos con AS3 y Flex2 serán realmente multi plataforma y que el que quiera ya puede empezar a desarrollar para estas tecnologías desde Linux con el Flex SDK gratuito de Adobe.
* Flash Player 9 prerelease * Flex2 for Linux
Arrays tipados con MTASC
Leyendo el blog de shaoken he visto una funcionalidad muy interesante en MTASC. Desde su última versión se puede utilizar una técnica que emula el funcionamiento de los generics de Java.
En Java (y he visto que con haXe también) se puede hacer lo siguiente:
lo cual nos obligará a llenar dicho Array solo con Strings.
Pues bien, con MTASC podemos hacerlo de la siguiente manera:
-
var arr: /*String*/ Array;
Si intentamos añadir un tipo que no sea String a la variable arr, el compilador nos lanzará un Error.
Enlaces relacionados: * MTASC: Tableaux typés * Genericidad en Java y ActionScript * haXe:Arrays * MTASC
FDT nuevo plugin ActionScript para Eclipse
La gente de powerflasher.com está acabando de desarrollar FDT.
FDT es un nuevo plugin que convierte Eclipse en un completo editor ActionScript. Está al caer y por lo que he podido ver está muy muy bien.
No es un proyecto abierto, se tendrá que pagar por él. A ver qué precios pondrán..
Hay algunos videos que muestran lo que hace:
* FDT demos
( vía andre-michelle.com )
Enlaces relacionados: * Towards Open Source Flash Development * ASDT plugin * flashout + asdt videos
Herramientas de testeo para Flash
He puesto juntas unas cuantas herramientas de debug que he ido encontrando con el tiempo.
Las dos sobre las que hablo son relativamente nuevas y van más allá de ofrecer un panel de salida fuera del IDE.
- Muestra toda la jerarquía de objetos de la película en vista de árbol colapsable.
- Muestra todas las propiedades y métodos del objeto seleccionado.
- Cambia valores a cualquier propiedad en tiempo real.
- Ejecuta funciones en tiempo real pasando parámetros.
- Controla el flujo de Vídeo y Sonido en tiempo real.
- Saca mensajes en el panel de salida.
- Recurre un Array u Objeto en un solo paso y sácalo por el panel de salida.
- Mide los frames por segundo reales de la película.
- Posibilidad de salida por el Output panel del Flash IDE o por la consola Admin Tool.
LuminicBox.Log, API de logging para Flash (Pablo Costantini)
- Muestra las propiedades de los objectos recursivamente en vista de árbol colapsable.
- Diferentes tipos (niveles) de mensaje.
- Filtros para pasar solo los tipos de mensajes especificados.
- Posibilidad de salida por el Output panel del Flash IDE o por la consola FlashInspector.
- Pesa apenas 3Kb.
- Las librerías están disponibles y se pueden modificar/mejorar bajo la licencia Mozilla Public License.
Otros:
* Log4f:
Debugger complejo con filtros.
* as2logger:
API para mostrar logs basada en las lbrerías de Java.
*
Flash 7 Trace viewer:
Panel de salida fuera del IDE de Flash que soporta la función trace()
* AFTERTHOUGHT :
Panel de salida fuera del IDE de Flash que puede guardar los logs en un archivo externo. Mensajes de salida coloreados según niveles
* Output Logger:
Panel de salida fuera del IDE de Flash con opciones de configuración y coloreado de mensajes por niveles.
* S.O.S.:
Panel de salida fuera del IDE de Flash.
Image injector para MTASC
Un usuario de la lista de correo de MTASC ha anunciado que ha sacado un a utilidad que permite incrustar imágenes en el código binario de un swf.
La utilidad se llama Image Injector y es gratuita.
El sistema para trabajar las imágenes puede ser, o bien con attachMovie(), o bien utilizando metadata tags a la flex:
[Embed(source='imagen.jpg')] var image1:String="imagen";
Enlace al artículo y descarga: * Image Injector Enlaces relacionados: * MTASC * Los GUI para MTASC * Testeando aplicaciones hechas con MTASC desde SOS * Compilador para ActionScript 2.0 MTASC
Eclipse para MTASC y otros…
Carlos Rovira ha escrito un artículo en actionscript.com acerca de como crear un entorno de desarrollo para .swf 100% multiplataforma y OpenSource.
Las herramientas propuestas son MTASC, Eclipse y algunos interesantes plugins para Eclipse.
Para acabar de redondear la iniciatia cabe decir que hay herramientas que permiten crear gráficos vectoriales en formato svg: InkScape y otras que luego permiten transformarlos a formato swf: svg2swf
Con esto ya se podría crear un entorno de trabajo totalmente independiente de Flash y con casi todas las funcionalidades necesarias para poder dearrollar normalmente sin coste alguno.
Enlace al artículo: * Towards Open Source Flash Development Enlaces relacionados: * InkScape * svg2swf
mtasc.org el sitio oficial de MTASC
Nicolas Canesse ha anunciado el nuevo sitio oficial de MTASC, así que ya podeis actualizar los favoritos.
Esperemos ver alguna mejora pronto... unos foros, un blog, una nueva cara...
Enlace a la página * Sitio oficial de MTASC
Los GUI para MTASC
Para los que todavía no conozcan, MTASC es un compilador multiplataforma que compila ActionScript 2.0.
En principio es un compilador que funciona mediante la línea de comandos, pero hay una serie de desarrolladores que se han molestado en crear unos interfaces gráficos (GUI) con los facilitar las repetitivas tareas que se pueden realizar con el compilador.
Este es el listado de GUIs actualizado:
WinMTASC Autor: Daniel Aguilar Plataforma: Windows Página de descarga ( si no está ahí todavía sigue este link ) XMTASC Autor: Oscar Sánchez Plataforma: MAC Página de descarga
Enlaces relacionados: * Apunte para desarrolladores que utilizan MTASC * Testeando aplicaciones MTASC desde SOS * Compilador para ActionScript 2.0 MTASC











