Ver Mensaje Individual
  #8  
Antiguo 16-02-2011
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Reputación: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Voy a comentarte algunas cosillas:

Cita:
Empezado por razonasistemas Ver Mensaje
* Tamaño del fichero. Si se meten miles de lineas en un solo fichero, éste se convierte en ilegible.

* Tamaño de las funciones. Cuando estudiaba se decía que una función no debería ser mayor que el tamaño de la pantalla. Así que una función con mas de x lineas seria un criterio.

* Ratio mínimo de comentarios. Debería haber un ratio lineas_de_comentario / lineas_totales mínimo. Estos comentarios deberían de ser útiles, ya que hace años traté de instaurar un estilo de comentarios parecido al javadoc y me encontré con que la gente ponía como comentarios en un button.click, por ejemplo "@param sender componente que activa el evento" o "@return no se devuelven resultados" o sea, comentarios sin ningún valor.

* Comentarios en funciones. Si una función tiene mas de x lineas entonces es compleja y debería de tener en su cabecera un comentario explicando el funcionamiento.
Lo que hace ilegible el código no es el tamaño, sino la documentación y el estilo. Si usas nombre con significados reales, bien formateado (por ejemplo, con CamelCase o usando_caracter_subrayado), bien indexado y con comentarios bien redactados, da igual cuán largo sea.

He visto funciones de pocas líneas en las que es imposible saber qué hacen y menos aún cómo lo hacen, sin embargo he visto funciones de varias páginas en las que el algoritmo está claro y diáfano.

Personalmente creo que limitar el tamaño "porque sí" es una tontería, aparte de que puede afectar al rendimiento al multiplicar las llamadas. Recuerda que cada llamada a método o función es tiempo extra, mayor cuantos más parámetros tengan.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita