Fx4 I: Espacios de nombre

En esta cuarta versión de Flex se han producido cambios considerables en la arquitectura de componentes así como en el lenguaje MXML. Esto se ha hecho para potenciar varios aspectos como son la productividad, facilitar el workflow designer / developer o la integración con herramientas externas.
En esta entrada se hará una introducción a los espacios de nombres de Flex 4.


Antes de empezar es interesante aclarar qué es exactamente Flex 4.
Flex 4 no es ni implica una nueva versión de ActionScript o del Flash Player, “simplemente” se ha mejorado la librería Flex y el compilador (y el debugger y el profiler y seguro que otras cosas que no menciono).
Cuando empecemos a trabajar con Flex 4 lo haremos con el mismo runtime; el Flash Player y lenguaje (AS3) que utilizamos en Flex 3. Eso si, mientras que en el caso de Flex 3 podemos optar por trabajar con Flash Player >= 9, con Flex 4 solo podemos trabajar con Flash Player >= 10. Esto es debido a que Flex 4 saca partido de forma generalizada de las nuevas características de Flash Player 10.

Espacios de nombre

Un espacio de nombre no es nada nuevo, muchos lenguajes sacan provecho de este concepto de distintas formas. Sin ir más lejos ActionScript 3 tiene dos formas de definir espacios de nombre, una mediante la palabra clave package y otra mediante la palabra clave namespace. Esta última es quizás la más obvia ya que la traducción literal es precisamente “espacio de nombre”.
Entonces, ¿qué es un espacio de nombre? pues no es más que un mecanismo de organización que nos permite evitar colisiones entre identificadores. Es gracias a los espacios de nombre que podemos tener una clase llamada miEspacioDeNombre.String sin que colisione con la clase String nativa de ActionScript.

Espacios de nombre en mxml

MXML soporta espacios de nombre, de hecho es una característica que en versiones anteriores de Flex ya se utilizaba, aunque en la versión 4 su uso y comprensión son obligados ya que vamos a tener que utilizarlos concienzudamente desde el primer momento.

Cuando creamos un proyecto con Flash Builder 4, el archivo principal tiene este aspecto:
[mxml]


[/mxml]
Este código se diferencia del que se generaba en versiones anteriores en que por defecto utiliza tres declaraciones de espacios de nombre distintas:

  • xmlns:fx=”http://ns.adobe.com/mxml/2009″
  • xmlns:s=”library://ns.adobe.com/flex/spark”
  • xmlns:mx=”library://ns.adobe.com/flex/halo”

En la gran mayoría de proyectos Flex 4 vamos a utilizar estos tres espacios de nombre, es por eso que están los tres declarados desde los mismos templates de proyecto de Flash Builder.

xmlns:fx: MXML 2009

Este es un espacio de nombres de lenguaje con el que podremos instanciar tipos nativos del Flash Player como Date, String, Array, etc.. además de poder declarar tags específicos de MXML como Declarations, Metadata, Script, Binding, etc… En este espacio de nombres no encontraremos ningún componente.

xmlns:s: Spark

Spark es el nombre que se le ha dado al nuevo set de componentes de Flex 4. Spark implica un nuevo set de componentes pero también una nueva arquitectura que, entre otras cosas, es mucho más modular. En este espacio de nombres encontraremos todos los tipos correspondientes a los nuevos componentes como Button, Group, VerticalLayout, etc… Se debe tener en cuenta que no todos los componentes de Flex 3 se han migrado a Flex 4, este trabajo está en proceso todavía, pero como veremos más adelante si nos hace falta no es problema mezclar componentes Spark y componentes Halo (Flex < 4).

xmlns:mx: Halo

Si en Flex 4 queremos por ejemplo utilizar un DataGrid, tendremos que recurrir a este espacio de nombres, ya que el DataGrid es uno de los componentes que no se ha migrado todavía a la arquitectura Spark. La convivencia entre Halo y Spark es uno de los objetivos principales que se marcaron a la hora de plantear esta nueva versión de Flex.

MXML 2006

Si queremos trabajar en Flex 4 de la misma forma que lo hacíamos en Flex 3 podemos utilizar el espacio de nombres MXML 2006 ( xmlns:mx=”http://www.adobe.com/2006/mxml” ), aunque en este caso no podemos mezclarlo con s (Spark) ni fx (MXML 2009).

Esto es todo lo referente a espacios de nombre que debemos saber en Flex 4.

12 Comentarios

  1. demian

    me quede con ganas de mas!. muy bueno, sigan asi q esta info no se consigue, tengo problemas con el scripting… ahora se pone fx:script, pero no me andan los mismos scripts no se porque

  2. Miguel

    Hola…
    Muy buena la exposicion, si no tienes esto claro cuando comienzas con Gumbo ( o mejor Flash Builder??) te parece que todo ha cambiado y que hay que empezar de cero otra vez.
    Me sumo a la peticion de Edgar, algun ejemplillo

    Saludos

  3. Pingback: Apuntes de Fx4 | AlexdwBlog()

  4. Pingback: Cursos Gratis Flash/Flex/AIR | MAWAPE Sistemas.:::.Desarrollo Web | Aplicaciones moviles | Software a medida

  5. Pingback: Cursos Gratis Flash/Flex/AIR | MAWAPE Sistemas

  6. Daniel

    wao ya veo entiendo eso, que sencillo es y precisamente me estaba preguntando por el significado de esas lineas en la plantilla.

    nos vemo en la lista !

    ciao

  7. Pingback: MadeInFlex » Blog Archive » Serie introducción Flex4

  8. Pingback: oyun,oyna,flash,

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Acerca de Made In Flex

Made In Flex es una comunidad de desarrolladores de Apache Flex creada en 2006.

Apache Flex, anteriormente conocido como Adobe Flex, es un SDK (kit de desarrollo de software) para crear aplicaciones enriquecidas - multiplataforma basadas en Adobe Flash donado por Adobe a la fundación Apache in 2011 y promocionado a proyecto de primer nivel en Diciembre de 2012.

Actualmente estamos cambiando muchos aspectos del sitio web para ofrecer un sitio útil para toda la comunidad que tenga en cuenta las necesidades actuales.

Últimas Fotos

Instalador de Apache Flex

Entrar o Registrase