Estilos De Programacion
Los lenguajes de programación tienen la particularidad de cumplir un doble rol. Por un lado sirven para comunicar humanos con computadoras. Son la forma de transformar una serie de abstracciones como algoritmos, módulos, tipos de datos y sistemas en algo que una computadora pueda ejecutar. El segundo rol, y que no se ve tanto a primera vista, es que un lenguaje deprogramación sirve para comunicar humanos con humanos. Por ejemplo, para que alguien le cuente un algoritmo a otro. O en muchos casos para que un programador pueda mañana recuperar las ideas que volcó en código hoy.
Las reglas de estilo son flexibles. Esto no significa que uno va escribiendo y cambiando de estilo. Es muy importante dentro de un mismo proyecto mantener siempre las mismasreglas rígidas, aunque estas sean distintas a las que uno usa en otros proyectos. Incluso, cuando se trabaja sobre un proyecto escrito por otro, es mejor adaptarse al estilo en que está escrito en vez de mezclarlos.
No basta con escribir un programa que funcione. El código tiene que estar bien escrito. El problema del estilo es muy recurrente en el desarrollo de software. Muchas veces seescribe el código pensando que la única persona que lo modificará es el mismo programador. Y cuando llega alguien más, y comienza a
revisar el código, comienzan los problemas. Peor aún es cuando se mezclan estilos de programación.
Indentación
En el caso de los lenguajes de computadoras, la claridad también depende de a quien se dirija el lenguaje. Por ejemplo, para lo computadora sonequivalentes las funciones:
float f(float a, float b) {return a*b ;}
typedef float longitud;
typedef float area ;
area area_rectangulo (longitud base, longitud altura) {
/* Devuelve el área de un rectángulo de base `b' y altura `h' */
return base*altura;
}
Pero a una persona le transmite mucha más información y contenido la segunda función. En el sentido inverso, para la mayoríade la gente son iguales:
a = 1
b = 2
a = 1;
b = 2;
Así, la indentación se utiliza para mejorar la legibilidad del código fuente por parte de los programadores, teniendo en cuenta que los compiladores o intérpretes raramente consideran los espacios en blanco entre las sentencias de un programa. Sin embargo, en ciertos lenguajes de programación como Haskell, Occam y Python, laindentación se utiliza para delimitar la estructura del programa permitiendo establecer bloques de código. Indentación es mover un bloque de texto hacia la derecha insertando espacios o tabuladores para separarlo del texto adyacente.
Nombrado de Clases
Las clases deben tener de nombre un sustantivo, tienen que tener estado y no ser ambiguas. Las clases se codifican para el estadoactual del programa, no hay que programar para el futuro, es obligatorio mantener el código reutilizable y limpio, cualquier rutina que no pertenezca a la clase deberá ir fuera de ella. Las clases finales deben ser inmutables (no heredables y no modificables sus rutinas).
Los métodos no dirán nada acerca de los parámetros. Si es necesario es que hay algún problema conceptual y elcódigo (posiblemente la clase entera) debe ser rescrita.
Si hay más de una clase que comparte métodos y tienen una relación conceptual clara, se debe crear una interfaz que las conecte conceptualmente y luego implementarla en cada clase.
Si hace falta una clase con datos globales (como por ejemplo, la conexión a una base de datos) definirla como una clase Singleton (queherede a Singleton es suficiente).
Las clases representan “cosas” y no “acciones”, por tal motivo evitar verbos como nombre de clase.
El nombre de la clase debe estar en singular, salvo que la clase represente multiplicidad de cosas.
Las Nombres de las clases deberían ser Sustantivos: ejemplo carro, hombre, tienda, país, empleado, proveedor
Cada clase...
Regístrate para leer el documento completo.