Estilo de programación

Estilo de programación

Estilo de programación

Estilo de programación (también llamado estándares de código o convención de código) es un término que describe convenciones para escribir código fuente en ciertos lenguajes de programación.

El estilo de programación es frecuentemente dependiente del lenguaje de programación que se haya elegido para escribir. Por ejemplo el estilo del lenguaje de programación C variará con respecto al del lenguaje BASIC.

Contenido

Características del estilo

El buen estilo, al tratarse de algo subjetivo, es difícil de categorizar concretamente; con todo, existen un número de características generales. Con el advenimiento de software que da formato al código fuente de forma automática, el foco en cómo éste debe de ser escrito debe evolucionar de forma más amplia a la elección de nombres, lógica y otras técnicas. Desde un punto de vista práctico, el uso de un computador para dar formato al código fuente ahorra tiempo, y es posible forzar el uso de estándares a nivel de una compañía completa sin debates religiosos.

Nombres de variable apropiadas

Una piedra clave para un buen estilo es la elección apropiada de nombres de variable. Variables pobremente nombradas dificultan la lectura del código fuente y su comprensión.

Como ejemplo, considérese el siguiente extracto de pseudocódigo:

get a b c 
if a < 24 and b < 60 and c < 60
  return true
else
  return false

Debido a la elección de nombres de variable, es difícil darse cuenta de la función del código. Compárese ahora con la siguiente versión:

get horas minutos segundos 
if horas < 24 and minutos < 60 and segundos < 60
  return true
else
  return false

La intención el código es ahora más sencilla de discernir, "dado una hora en 24 horas, se devolverá true si es válida y false si no".

Estilo de indentación

Estilo de indentación, en lenguajes de programación que usan llaves para indentar o delimitar bloques lógicos de código, como por ejemplo C, es también un punto clave el buen estilo. Usando un estilo lógico y consistente hace el código de uno más legible. Compárese:

if(horas < 24 && minutos < 60 && segundos < 60){
   return true;
}else{
   return false;
}

ó bien:

if(horas < 24 && minutos < 60 && segundos < 60)
{
   return true;
}
else
{
   return false;
}

con algo como:

if(horas<24&&minutos<60&&segundos<60){return true;}
else{return false;}

Los primeros dos ejemplos son mucho más fáciles de leer porque están bien indentados, y los bloques lógicos de código se agrupan y se representan juntos de forma más clara.

Valores booleanos en estructuras de decisión

Algunos programadores piensan que las estructuras de decisión como las anteriores, donde el resultado de la decisión es meramente una computación de un valor booleano, son demasiado prolijos e incluso propensos al error. Prefieren hacer la decisión en la computación por sí mismo, como esto:

return horas < 12 && minutos < 60 && segundos < 60;

La diferencia es, con frecuencia, puramente estilística y sintáctica, ya que los compiladores modernos producirán código objeto idéntico en las dos formas.

Bucles y estructuras de control

El uso de estructuras de control lógicas para bucles también es parte de un buen estilo de programación. Ayuda a alguien que esté leyendo el código a entender la secuencia de ejecución (en programación imperativa). Por ejemplo, el siguiente pseudocódigo:

 cuenta = 0
 while cuenta < 5
   print cuenta * 2
   cuenta = cuenta + 1
 endwhile

El extracto anterior cumple con las dos recomendaciones de estilo anteriores, pero el siguiente uso de la construcción for hace el código mucho más fácil de leer:

 for cuenta = 0, cuenta < 5, cuenta=cuenta+1
   print cuenta * 2

En muchos lenguajes, el patrón frecuentemente usado "por cada elemento en un rango" puede ser acortado a:

 for cuenta = 0 to 5
   print cuenta * 2

Espaciado

Los lenguajes de formato libre ignoran frecuentemente los espacios en blanco. El buen uso del espaciado en la disposición del código de uno es, por tanto, considerado un buen estilo de programación.

Compárese el siguiente extracto de código C:

 int cuenta; for(cuenta=0;cuenta<10;cuenta++){printf("%d",cuenta*cuenta+cuenta);}

con:

 int cuenta;
 for (cuenta = 0; cuenta < 10; cuenta++)
 {
    printf("%d", cuenta * cuenta + cuenta);
 }

En los lenguajes de programación de la familia C se recomienda también evitar el uso de caracteres tabulador en medio de una línea, ya que diferentes editores de textos muestran su anchura de forma diferente.

El lenguaje de programación Python usa indentación para indicar estructuras de control, por tanto se requiere obligatoriamente una buena indentación. Haciendo esto, la necesidad de marcar con llaves ({ y }) es eliminada, y la legibilidad es mejorada sin interferir con los estilos de codificación comunes. Con todo, esto lleva frecuentemente a problemas donde el código es copiado y pegado dentro de un programa Python, requiriendo un tedioso reformateado. Adicionalmente, el código Python se vuelve inusable cuando es publicado en un foro o página web que elimine el espacio en blanco.

Véase también

  • Estilo de indentación
  • Bug

Enlaces externos

Convenciones de código en castellano

Convenciones de código en inglés

Convenciones de código de proyectos

Obtenido de "Estilo de programaci%C3%B3n"

Wikimedia foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Mira otros diccionarios:

  • Programación a nivel funcional — Saltar a navegación, búsqueda La programación a nivel funcional es unos de los dos paradigmas contrastantes identificados por John Backus en su trabajo sobre los Programas como objetos matemáticos, siendo el otro la programación a nivel de… …   Wikipedia Español

  • Programación por capas — Saltar a navegación, búsqueda La programación por capas es un estilo de programación en el que el objetivo primordial es la separación de la lógica de negocios de la lógica de diseño; un ejemplo básico de esto consiste en separar la capa de datos …   Wikipedia Español

  • Programación basada en prototipos — Saltar a navegación, búsqueda Programación basada en prototipos es un estilo de programación orientada a objetos en el cual, las clases no están presentes, y la re utilización de procesos (conocida como herencia en lenguajes basados en clases) se …   Wikipedia Español

  • Programación imperativa — La programación imperativa, en contraposición a la programación declarativa es un paradigma de programación que describe la programación en términos del estado del programa y sentencias que cambian dicho estado. Los programas imperativos son un… …   Wikipedia Español

  • Programación orientada a objetos — La programación orientada a objetos o POO (OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones, para diseñar aplicaciones y programas informáticos. Está basado en varias técnicas, incluyendo… …   Wikipedia Español

  • Programación funcional — Diagrama del funcionamiento de una subrutina. En ciencias de la computación, la programación funcional es un paradigma de programación declarativa basado en la utilización de funciones aritméticas que no maneja datos mutables o de estado.… …   Wikipedia Español

  • Programación por capas — La programación por capas es un estilo de programación en la que el objetivo primordial es la separación de la lógica de negocios de la lógica de diseño, un ejemplo básico de esto es separar la capa de datos de la capa de presentación al usuario …   Enciclopedia Universal

  • Programación — Saltar a navegación, búsqueda Libros acerca de programación. En informática, la programación es un proceso por el cual se escribe (en un lenguaje de programación), se prueba, se depura y se mantiene el código fuente de un …   Wikipedia Español

  • Programación estructurada — Saltar a navegación, búsqueda La programación estructurada es una forma de escribir programas de ordenador (programación de computadora) de forma clara. Para ello utiliza únicamente tres estructuras: secuencia, selección e iteración; siendo… …   Wikipedia Español

  • Programación a nivel de valores — Saltar a navegación, búsqueda La programación a nivel de valores es unos de los dos paradigmas contrastantes identificados por John Backus en su trabajo sobre los Programas como objetos matemáticos, siendo el otro la programación a nivel… …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”