2008-11-09 18 views
20

¿Sigue un estándar para envolver líneas largas en el código fuente? ¿Qué longitud de línea le resulta más cómoda de leer?Formato de ancho de línea estándar

A veces encuentro personas que programan en monitores de pantalla ancha y les gusta utilizar su ancho completo para mostrar el código fuente. Prefiero las líneas más cortas, alrededor de 80-100 caracteres, pero me es difícil tratar de convencer a mis colegas con la popularidad cada vez mayor de los dispositivos de pantalla ancha.

Editar:

pregunta similar:

+0

Pregunta muy similar a http://stackoverflow.com/questions/110928/ –

+0

Gracias, Andrew. Una búsqueda rápida en SO y las preguntas sugeridas que aparecen cuando está escribiendo el suyo no resultaron en nada. –

Respuesta

39

No comprometer la legibilidad de las reglas dogmáticas sobre el número exacto de caracteres en una fila. El desplazamiento horizontal no es deseable, pero una línea de 81 caracteres es más fácil de leer que una indentación: una versión envolvente.

80 caracteres es probable que sea inadecuado para la programación de estilos con sangrías grandes y/o nombres de variables detallados. Mantenga la cantidad de complejidad lógica hasta un máximo por línea, no la cantidad de caracteres.

3

Usted no debería tener que desplazarse horizontalmente para leer el código. ¡Pero pantallas más grandes no significan líneas más largas! También hay un límite de cuánto debe continuar en una sola línea.

Así que digo: mantenlo a 70-80 caracteres como siempre. Las pantallas más grandes solo significan que el IDE tiene más espacio.

0

Programo casi exclusivamente en una computadora portátil, por lo que estoy de acuerdo con las líneas más cortas. Por supuesto, normalmente estoy diseñando pantallas para PDA, por lo que puedo salirse con la tuya. Pero si el código se comparte entre desarrolladores, terminará en la computadora portátil de alguien eventualmente, y las barras de desplazamiento me hacen llorar.

12

Me atengo a la regla de 80 líneas (Y trato de convencer a todos a hacer lo mismo). Algunas razones:

  1. Puede abrir 2 (o más) editores a la vez.
  2. Lo mismo con las herramientas de comparación. - la mayoría (¿todos?) muestran los dos (algunos tres (¿algunos más?)) archivos uno al lado del otro.
  3. A veces es necesario trabajar desde un control remoto, en una estación de trabajo diferente o en una computadora portátil, y de repente, su código de 120 carácteres a línea muy bien formateado se ve horrible.
+11

8 años después, con dos monitores y monitores 1440p por menos de $ 300, todos los motivos enumerados aquí se mitigan. Por lo tanto, elijo dividir una línea en un lugar que no hace que el código sea ilegible. Espero que todavía no estés tratando de hacer que los demás se adhieran a 80 caracteres. – Monir

+2

80 caracteres (no * líneas *) fue la resolución del terminal de la computadora hace 50 años, no tiene sentido seguir este estándar en la actualidad. –

+2

Las convenciones de Python aún sugieren un intento de 80 caracteres para mantener el código limpio y legible en una ventana pequeña.El hecho de que tenga una casa de 3000 pies cuadrados/pies no significa que deba llenarlo con basura. Si lo necesita para apoyar a su familia de 5 personas, entonces por supuesto, llénelo. – cgseller

-2

Utilizamos codificación estándar de 80 caracteres en línea. La razón original para la limitación de 80 caracteres no es relevante hoy, pero debe seleccionarse un número ...

Además de lo obvio (organización de códigos y legibilidad), generalmente encuentro que las líneas largas son el resultado de un mal estilo y la regla mejora calidad del código y reducir errores. Basta con comparar los siguientes ejemplos:

status = do_something(); 
if (status == error) 
{ 
    do_error_handling(); 
    return; 
} 
/* do you regular flow */ 
status = do_more(); 
if (status == error) 
{ 
    do_error_handling(); 
    return; 
} 
/* do more of you regular flow and keep you line 80 chars*/ 

lugar:

status = do_something(); 
if (status == succes) 
{ 
    /* do you regular flow */ 
    status = do_more(); 
    if (status == success) 
    { 
      /* do you regular flow */ 
      /* nest again and get line behind visible screen */ 
    } 
    else 
    { 
     /* do error handling */ 
    } 

} 
else 
{ 
    /* do error handling */ 
} 

segundo ejemplo es mucho menos legible difícil de mantener y probablemente conducirá a algún problema en el camino ...

Editar

Reemplazó goto con do_error_handling() en el código para evitar que no sea relevante di scussion.

Como dije antes 80 caracteres no relevantes hoy en día, solo un número 100 es bueno también.

Para cualquier persona que se encuentra segundo ejemplo más legible nido FAVOR cuantas veces más con código real y tratar de leer de nuevo :)

+6

curiosamente, el segundo me parece mucho más legible y esperaba que fuera tu ejemplo de código "legible" cuando analicé por primera vez tu publicación. Nunca he entendido esta fascinación con 80 caracteres en las prácticas modernas de codificación (entiendo la importancia histórica). Por lo general, lo mantengo en 100chars – Karan

+0

, entonces ¿está sugiriendo que usemos declaraciones GOTO? =) –

+1

no comenzaremos a ir a la discusión aquí :) actualizaré un ejemplo – Ilya

1

pantalla más grande - más grande de la fuente. Yo uso GVim con Conslas 14pt maximizado a una resolución de pantalla de 1280x800. Intento abarcar aproximadamente el 80-90% de ancho de pantalla.

3

También depende de otras convenciones que esté utilizando. En un trabajo, estábamos programando en Java y la convención era usar identificadores largos y descriptivos, lo que significaba que solo un par de ellos podía caber en una línea sin toparse con el límite de 80 caracteres. Pensé que era bastante estúpido teniendo en cuenta que a cada desarrollador de la compañía se le había proporcionado un monitor de pantalla ancha que podía caber fácilmente 200 caracteres. Con la consistencia del hardware así, no tiene sentido imponer un límite de línea estúpidamente pequeño.

3

Prefiero las líneas más largas por una simple razón: puedo poner más código en mi ventana. Hay una gran diferencia entre tener que desplazarse verticalmente para leer una función y poder encajarla en una sola pantalla. Si todo está en línea, de modo que la función se desplace por la parte inferior mientras que la mitad derecha de la pantalla está vacía, considero que es una gran pérdida. Tenga en cuenta que abrir dos ventanas de editor tampoco ayuda aquí.

1

Aparentemente tengo líneas de hasta 258 caracteres de longitud (contando pestañas como dos caracteres) en uno de mis proyectos recientes, así que ahí está mi respuesta. =)

0

Utilizo alrededor de 72-75 columnas para asegurarme de que puedo imprimir el código en páginas con formato de carta sin demasiados problemas. También uso espacios en lugar de pestañas y soy cuidadoso con el diseño.

Para notar cuando salgo del margen derecho, a menudo pongo una línea de texto que puedo usar como regla. Configuro la ventana de visualización IDE para que la regla se ajuste al ancho horizontal y luego me aseguro de no salir de ella.

Lo hago en documentos .txt, así como .c, .java, .cpp, archivos por lotes, etc. Esto hace que sea más fácil enviar fragmentos en el correo electrónico, publicarlos en blogs, ponerlos en comentarios, etc. la regla es a menudo justo por debajo de una línea superior que identifica el archivo y el formato del texto:

/* example.txt 0.00     UTF-8     dh:2008-11-09 
*---|----1----|----2----|----3----|----4----|----5----|----6----|----7----* 
*/ 

Por supuesto, se utiliza la convención comentario del tipo particular de archivo.

Cuestiones relacionadas