Unidad 18. Avanzado: ActionScript 3 - Crear una clase para variables globales

Una variable global es aquella a la que podemos acceder desde cualquier parte del proyecto.

En ActionScript 2 podíamos crear una variable global de la siguiente manera:

//Código ActionScript 2

_global.miVariable = "Esta es una variable global";

Esto ya no es válido en ActionScript 3. Pero en su lugar podemos crear una clase y guardar en ella estas variables.

La clase la escribimos en un archivo .as (ArchivoNuevoArchivo de ActionScript).

Aunque no es obligatorio, lo habitual es crear un patrón de diseño Singleton. No vamos a detallar que és. A grandes rasgos, es una forma de escribir una clase de manera que no se creen objetos distintos, y se utilice una instancioa única. Recordemos que si tenemos varios objetos, cada uno puede asignar valores distintos a sus variables.

Su estrucura en el archivo as (al que llamaremos variablesGlobales.as, el mismo nombre que daremos a la clase)sería la siguiente:

package {

	public class variablesGlobales {

		// Aquí declaramos nuestras variables

		public var miVariableTexto:String = "Hola";

		public var miVariableNumero:Number = 100;

   ///

		

		private static var instancia:variablesGlobales;

		public function variablesGlobales() {

		}

		public static function variables():variablesGlobales {

			if (!instancia) {

				instancia = new variablesGlobales();

			}

			return instancia;

		}

	}

}

Es importante declarar nuestras variables como public var para que puedan ser accedidas desde fuera.

Guardamos el archivo en la misma carpeta en la que estamos trabajando.

Ahora podemos acceder a enuestras variables con la siguiente sintaxis:

variablesGlobales.variables().nombreVariable

Por ejemplo:

trace(variablesGlobales.variables().miVariableTexto);

variablesGlobales.variables().miVariableNumero = 5;

Nota: en vez de variablesGlobales podemos emplear el nombre que queramos, cambiándolo en todos los sitios donde corresponda. De igual manera, podemos cambiar el nombre del método con el que accedemos a las variables (variables()). Lo habitual es llamarlo getInstance() porque lo que realmente hace es devolver la instancia única del objeto.

   Inicio