Anonymous objects are evil

Es algo que ya comentaba en lo que yo sé de al hilo de los eventos. Mucha gente que utiliza EventDispatcher lo hace de esta forma:

var event:Object = {type:"Wadus",value:5};
dispatchEvent(event);

Funcionar, funciona, claro. El problema es que la función que recibe el evento no sabe cuáles ni de qué tipo son los parámetros del objeto recibido. A mi me parece mucho mejor tener una clase para el evento y lanzar eventos de tipo conocido:

class WadusEvent{
public static var TYPE_LIT:String = "Wadus"
public var value:Number = 5;
public var type:String = ""
public function WadusEvent(_value:Number){
type = TYPE_LIT;
value = _value;
}
}

Y a la hora de lanzarlo:

var event:WadusEvent = new WadusEvent(5);
dispatchEvent(event);

De esa forma la función receptora sabe perfectamente las propiedades del objeto. Además tenemos validación de tipos a la hora de compilar.

Bueno, pues esto mismo piénsatelo SIEMPRE que te veas usando un objeto anónimo. Imagina que tu aplicación va de gestión de usuarios y que además lees la información de un xml. Normalmente tendrás que parsear el xml y crear un objeto por cada nodo. En lugar de hacer esto:

var worker:Object = {age:30,name:"Pepe"};

Te creas una clase:

class Worker{
public var age:Number = 0;
public var name:String = "";
public function Worker(_age:Number,_name:String){
age = _age;
name = _name;
}
}

Y luego creas instancias:

var worker:Worker = new Worker(30,"Pepe");

Al principio parece más trabajo, pero a la larga yo creo que trae muchos beneficios.

Y ya que pongo un poco de código, ¿alguien recomienda un plugin de WP para meter código? Más que nada porque lo que tengo ahora no respeta los espacios y apesta bastante.

Gracias!

Educa al friki

3 Responses to “Anonymous objects are evil”

  1. jorgemaestre Says:

    Típica POO, merece la pena hacer las cosas bien hechas.

    En cuanto al plugin de WP para formatear código yo uso Code-markup, eso sí, olvídate de la vista WYSIWYG para hacer tus posts.

  2. dmvalverde Says:

    ¿has visto el plugin IG:Syntax Hiliter?

    http://www.la100rra.com.mx/qwilm/2006/04/17/%c2%bfnecesitas-poner-codigo-en-tus-post/

    Saludos!

  3. Zárate Says:

    Gracias a los 2, a ver cual instalo, aunque primero tengo que actualizar WP.

    Gracias!

Leave a Reply