Actionscript: mejorando la presentacion del codigo: 2da parte

Convenciones en el uso de funciones

Las funciones perminten la reutilización de código,

  • Si un segmento de código es usado en mas de un lugar debe ser codificado en una función.
  • La proceso que lleva a cabo la función debe ser lo más específico posible.
  • Se debe evitar la siguiente sintaxis:
myCircle = function(radius:Number):Number {
//...
}

Detener repetición de código

Cuando usamos el evento “onEnterFrame” para repetir un segmento de código, debemos tener en cuenta el momento en que hay que detenerlo para evitar problemas de rendimiento. Para esto debemos borrar el evento usado “delete” por ejemplo:

circleClip.onEnterFrame = function() {
circleClip._alpha -= 5;
if (circleClip._alpha<=0) {
circleClip.unloadMovie();
delete this.onEnterFrame;
trace("onEnterFrame borrado");
}
};

Optimizando el código

  • Evitemos llamar consecutivamente una funcion dentro de un “loop” es mejor introducir el código de la función dentro del loop.
  • Use en lo posible funciones nativas.
  • No abuse del tipo “Object” sea lo mas posible preciso en el uso de los tipos.
  • Asigne la longitud de una arreglo “Array.length” antes de usarlo dentro de un loop
  • Enfoque la optimización en los loop, este es la operación que Flash player necesita mayores recursos.
  • Incluya la palabra var para declarar variables.
  • No use variables globales cuando son suficiente locales.
  • Formateo del código

    • Añada un salto de línea luego de cada segmento (funciones, modulos, etc.) de codificación
    • Agrupe los segmentos de código lógicamente.
    • Use una identación consistente.
    • Use espacios antes te un paréntecis, por ejemplo:
    var i:Number;
    for (i=0; i<10; i++) {
    //codigo
    }
    • Exceptuando la guia anterior, no coloque espacio entre el nombre de la función y el paréntesis
    function obtenerUsuario(){
    //codigo;
    }
    getUrl("http://www.undermedia.com.ec");
    • Coloque espacios despues de una serie de argumentos
    funcion (nombre:String, apellido:String) {
    //codigo
    }
    • Coloque espacios el operador y los operandos. (Excepto en el operadores . ++ –)
    var edad:Number = 20 + 1;
    • Procure colocar cada elemento en líneas separadas.
    • No codifique asignaciones múltiples. Separe cada asignación en diferentes líneas.
    var undermedia:Number = (a = b + c) + d;

    Guas para sentencias condicionles

    • Separe la sentencias if, else..if, y if..else en diferentes líneas.
    • Use siempre llaves {} para las sentencias if
    //Incorrecto
    if (numUsers == 0)
    trace("no users found.");
    • Si tiene operaciones complejas agrúpelas con parentesis

    if (genero== 'masculino') && (edad >= 22)) {}
    //codigo