El estilo de mi código
Ultimamente, he leido varios posts sobre estilo de código, o coding standards( como éste de Dominick ). Bueno, pues éste es mi estilo:
En primer lugar, el código debe explicarse por sí mismo. Por eso, en mi trabajo no escribimos demasiados comentarios, aunque sí escribimos diagramas UML.
Pero lo podreis ver todo mucho más claro con una clase de ejemplo:
/*
El nombre de la clase está precedido de las iniciales
del proyecto. En este caso, esta clase extiende a otra
*/
class net.designnation.pnTestClass extends pnSuperClass
{
/*
Primero, definimos las variables privadas. Como las
vamos a manipular a través de getter/setters, todas
terminan con el sufijo "Val"
*/
private var strVal : String;
private var boolVal : String;
private var mcVal : MovieClip
private var arg : Number;
/*
Ahora va el constructor
*/
function pnTestClass( argParam: Number )
{
this.arg = argParam
}
/*
Y los getter/setters. Sólo definiremos los que hagan falta,
es decir, si no necesitamos un getter, no lo definiremos.
*/
function set str( value: String )
{
this.strVal = value;
}
function get str( ): String
{
return this.strVal;
}
/*
Aquí sólo definimos el setter
*/
function set bool( value: Param )
{
this.boolVal = value;
}
function set mc( value: MovieClip )
{
this.mcVal = value;
}
//Los métodos privados
private function privateMethod( Void ): Void
{
}
// El resto de métodos públicos e
// implementación de interfaces
public function publicMethod( Void ): Boolean
{
//Accedemos a una propiedad privada desde
//la clase, por lo que no necesitamos un getter
var returnVal: Boolean = false;
if ( this.boolVal )
{
returnVal = true;
}
return returnVal;
}
/*
Y finalmente, callbacks y listeners
*/
public function onKeyUp( )
{
}
}
Un par de detalles importantes. Siempre utilizamos el "this", para que así sea más facil ver cuándo estamos utilizando un método o propiedad que pertenece a la clase. Si no utilizamos el this, se sobreentiende que el método o propiedad es de la superclase
El espaciado muy importante. HAce que el código sea más facil de leer, y de comprender. No nos importa que la calse tenga muchas líneas en blanco, si eso ayuda a ver "bloques" de código
Las llaves van siempre pareadas. Y siempre hay un espacio en blanco entre operadores
Los métodos que devuelvan un valor, deberán tener un único punto de salida ( "return" )
Espero que os resulte util. Para nosotros, la verdad, lo es.