El estilo programado refiere a un sistema de reglas o de pautas usadas al escribir el código fuente para un programa de computadora . Se demanda a menudo que lo que sigue un estilo programado particular ayudará a los programadores rápidamente a leer y a entender código fuente conforme a el estilo así como la ayuda evitar introducir averías.
Un trabajo clásico sobre el tema era los elementos del estilo programado, escritos en los años 70, e ilustrados en gran parte con ejemplos de la lengua del FORTRAN frecuente en ese entonces.
El estilo programado usado en un programa particular se puede derivar de los estándares de la codificación del o de las convenciones de código del de la compañía o de la otra organización computacional, así como las preferencias del autor del código. Los estilos programados se diseñan a menudo para un lenguaje de programación específico (o la familia de lengua), pero algunas reglas se aplican comúnmente a muchas idiomas. (El estilo consideraba bueno en código fuente C puede no ser apropiado para el código fuente del BASIC, y así sucesivamente.)
lang=" del
Los primeros dos ejemplos son probablemente mucho más fáciles de leer porque se mellan de una manera establecida (un " paragraph" colgante; estilo). Este estilo de la muesca es especialmente útil al ocuparse de las construcciones jerarquizadas múltiples.
Este ejemplo se idea algo, por supuesto; todos los antedichos son equivalentes a la declaración más sucinta
lang=" del
El pitón utiliza la muesca para indicar las estructuras de control, así que la muesca correcta es requerido . Haciendo esto, la necesidad de acorchetar con el que se eliminan los apoyos rizados ({y}), y legibilidad es mejorada mientras que no interfiere con estilos de codificación comunes. Esto puede llevar a los problemas donde el código se copia y se pega en un programa del pitón, porque el nivel de la muesca del código pegado puede no ser igual que el nivel de la muesca de la línea en el código en el cual se está pegando. Tal cambio de formato es aburrido de hacer a mano, pero algunos editores de textos y el IDEs tienen características para hacerlo automáticamente. Además, el código del pitón puede ser hecho inutilizable cuando está fijado en un foro o un Web page que quita el whitespace: en Web pages, el código del pitón se debe incluir en " < pre> … < /pre> " el HTML marca con etiqueta para ser exhibido correctamente.
El Haskell tiene semejantemente la regla Off-side que deja la muesca definir bloques; sin embargo, desemejante en de pitón, la muesca no es obligatoria en el &mdash de Haskell; los apoyos rizados y los puntos y comas pueden (y estar de vez en cuando) ser utilizados en lugar de otro.
$search = arsenal (“a”, “b”, “c”, “d”, “e "); $replacement = arsenal (“foo”, “barra”, “baz”, “quux "); con: lang=" del $search = arsenal (“a”, “b”, “c”, “d”, “e "); $replacement = arsenal (“foo”, “barra”, “baz”, “quux ");
El 3ultimo ejemplo hace dos cosas intuitivo claras que no estaban claro en el anterior:
la búsqueda y substituye términos es relacionada y fósforo para arriba: no son variables discretas;
hay un más término de la búsqueda que hay términos del reemplazo. Si esto es un insecto, es más probable ahora ser manchado.
Discusiones contra de la alineación dificultad vertical de la demanda generalmente en mantener la alineación.
Comparar los ejemplos sintácticamente equivalentes siguientes del código de C.
lang=" del
También se recomienda para evitar usar carácteres de lengüeta en el medio de una línea mientras que diversos editores de textos rinden su anchura diferentemente.
Por ejemplo, considerar el recorte siguiente del Pseudocode : lang=" del el consigue a un b c si a < 24 y b < 60 y c < 60 de vuelta verdad otro de vuelta falso
Debido a la opción de nombres variables, la función del código es difícil de resolverse. Sin embargo, si los nombres variables se hacen más descriptivos: lang=" del el consigue segundos de los minutos de las horas de el si las horas de < 24 y minuta < el 60 y secunda < 60 de vuelta verdad otro de vuelta falso
el intento del código es más fácil discernir, a saber, el " Dado un rato de 24 horas, verdad será vuelto si es un rato válido y un otherwise" falso;.
lang=" del return (horas < 12) (minutos < 60) (segundos < 60);
La diferencia es a menudo puramente estilística y sintáctica, pues el código de objeto idéntico del producto moderno de los recopiladores para ambas formas.
Sin embargo, una discusión a favor del anterior es que algunas depuraciones permiten que usted camine línea por línea: si su prueba también causara cambios a las variables que usted probaba, y usted quisiera examinar los valores de todas las variables después que prueban, después solamente el método anterior permitiría que eso fuera eliminada errores. Estes 3ultimo no permitirían que su depuración alcanzara una línea " después del test" donde todavía existieron esas variables.
= para la asignación y un == doble para la comparación, y donde las asignaciones se pueden hacer dentro de las estructuras de control, a veces se considera bueno programando estilo para poner constantes a la izquierda en cualquier comparación. Las líneas siguientes son funcionalmente idénticas: lang=" del Sin embargo, de los dos que siguen, las líneas typoed, el primer son un error de sintaxis que será diagnosticado por el intérprete, mientras que este 3ultimo es un insecto sutil que fija el valor de $a para ser verdad, después evalúa para verdad. lang=" del
lang=" del i = 0 mientras que i < 5 impresión i * 2 del i = i + 1 extremo del mientras que
El recorte antedicho obedece las pautas del estilo del nombramiento y de la muesca, pero el uso siguiente del " for" la construcción hace el código mucho más fácil leer:
lang=" del para i = 0, i < 5, i=i+1 impresión i * 2 del
En muchas idiomas, el " de uso frecuente; para cada elemento en un range" el patrón se puede acortar:
lang=" del para el de i = 0 a 5 impresión i * 2 del " de la impresión ; Loop" terminado;
En los lenguajes de programación de la llave, ha llegado a ser común para que los documentos del estilo requieran eso incluso donde opcional, las llaves se coloque después de que todas las construcciones del flujo de control .
lang=" del para (i = 0 a 5) { impresión i * 2 del ; } " de la impresión ; Loop" terminado; ;
Esto previene programa-fluye los insectos que pueden ser desperdiciadores de tiempo rastrear, por ejemplo donde un punto y coma terminal se introduce en el extremo de la construcción (un error tipográfico común): lang=" del
… o donde otra línea se agrega antes del primer: lang=" del
lang=" del
Esto previene errores de sintaxis o insectos sutiles del secuencia-encadenamiento cuando se reordenan los artículos de la lista o más artículos se agregan al extremo, sin el programador que nota el " missing" separador en la línea que estaba previamente por último en la lista. En otras idiomas, tales como ECMAScript, sin embargo, esta práctica es un error de sintaxis, así que los programadores deben evaluar la lengua objetivo antes de adoptar esta técnica.
.
| Random links: | Batley | Araña de mar | Dave Hyatt | Lysochrome | Ælfthryth, condesa de Flandes |