¿Cuáles son las ventajas de mostrar números de línea en un editor de texto?


27

Me siento extraño cuando estoy editando código en un IDE que no tiene números de línea en el editor de texto.

Las preguntas que tengo son:

  1. ¿Son visualmente excesivos los números de línea, particularmente cuando existe una función de búsqueda por línea en su IDE de elección?
  2. ¿Cuáles son los usos de mostrar números de línea?

35
2: Siéntete totalmente machista sobre el número de líneas de código escritas.
Adam Crossland

44
@AdamCrossland: es gracioso que debas mencionar eso, normalmente lo veo exactamente como lo contrario y cuantas más líneas de código escribo, más tiempo termino pasando para verlo para asegurarme de que no hice nada dos veces y que ' m reunión de especificaciones.
Nick Larsen

44
sí, eso también es cierto para mí, pero a veces solo tienes que abrocharte el casco de tu motocicleta e ir por el macho.
Adam Crossland

3
Me resulta más rápido desplazarme con un ojo en los números de línea que usar la función de línea de ir a mi editor (eso podría deberse a que primero tengo que encontrarlo cada vez), especialmente cuando ya estoy cerca
Ratchet freak

77
@ Adam: Siéntete totalmente Macho por las pocas líneas de códigos que he escrito para que funcione.
Newtopian

Respuestas:


14

Cualquier cosa que ayude a la comunicación es una ventaja.

  1. No ocupa mucho espacio, así que no, no es excesivo si a usted o alguno de sus colegas les resulta útil discutir el código.

  2. Incluso si no realiza la programación de pares, es útil para revisiones de código "por encima del hombro" si no utiliza herramientas como Code Collaborator (no lo hacemos en este momento).

Además, si tiene miembros del equipo en otros sitios (nosotros), es útil para discutir el código a través de mensajería instantánea o por teléfono.

¿Cómo puede decirles que les digan que vayan a la línea 1842 si no pueden ver la línea?

Para mí es una pequeña herramienta invaluable. Incluso algunas de nuestras especificaciones pdf tienen líneas numeradas, y es sorprendente lo fácil que es referirse y discutir en comparación con las que no están numeradas.


54

Nadie mencionó la posibilidad de mirar rápidamente un seguimiento de la pila de excepciones para averiguar dónde ocurrió una excepción.


De Verdad? OP estados "referencing stack trace line numbers". ¿O ambos se refieren a cosas diferentes?
StuperUser

3
¡Vaya ... me perdí eso! Bueno ... es importante, ¡así que vale la pena reiterarlo! ;)
maple_shaft

44
Bueno, la pregunta ha sido editada ahora, ¡vota a favor!
StuperUser

Y, por supuesto, mirando los registros (no necesariamente de excepciones). Todos nuestros registros indexan el archivo + línea de donde provienen, ¡increíblemente útil!
Matthieu M.

@maple_shaft, en realidad, incluso cuando no puede ver líneas, aún puede hacer Ctrl-G (por ejemplo, un viejo bloc de notas).
Pacerier

51

Los números de línea que se muestran son esenciales para la programación por pares. No hay una forma más rápida de dirigir los ojos de su pareja al código en el que está pensando.

Por extensión, los números de línea también son extremadamente útiles para las revisiones de código, tanto formales como informales.


+1: No había considerado la programación por pares (aunque no es sorprendente, ya que definitivamente no soy un fanático). Sin embargo, la utilidad de los números de línea en las revisiones de código se ve bastante afectada si usa una aplicación para ello (como CodeCollaborator)
Demian Brecht

No tenía el hábito de la numeración de líneas hasta que hice un poco de programación de pares, ahora tengo el hábito de la numeración de líneas. +1 por hacerme darme cuenta de esta conexión.
SingleNegationElimination

11
En lugar de decir "Líneas 247 a 253", me parece más rápido resaltar esas líneas o señalarlas con el dedo. No creo que esta respuesta sea suficiente para justificar el desorden adicional.
BlueRaja - Danny Pflughoeft

1
Estoy sorprendido de que esta respuesta haya recibido 36 votos a favor en 24 horas.
Eric Wilson

@BlueRaja: tampoco estoy seguro de la programación de pares (aunque podría tener las dos manos ocupadas), pero al discutir de un escritorio a otro, ¡definitivamente ayuda! Hay algo que no entiendo en yyy.cpp en la línea 314, ¿por qué necesitamos eso?
Matthieu M.

10
  1. No, me gusta tener los datos para darme una idea de dónde está algo en un archivo, especialmente si estoy mirando un archivo de configuración grande donde puede que no sea fácil encontrar ese lugar nuevamente.

  2. Puedo mirar el número de línea como una forma de ver qué tan grande es un archivo. Si hay algunos miles de líneas de código en un archivo, entonces puede ser el momento de considerar si ese archivo se debe dividir o algo así. También puedo usarlo para juzgar qué tan profundo estoy en un archivo si tengo un estadio del tamaño del archivo y qué números están en mi pantalla. Me gusta la idea de cuantificar mi ubicación dentro de la barra de desplazamiento, por ejemplo, estoy en el cuarto superior del archivo o el tercer quintil.


1
Unos pocos miles ?
Anthony Pegram

44
@Anthony: Deberías ver loc por archivo en un juego;)
Demian Brecht

3
@ Anthony: claro. He visto archivos fuente con 10k + LOC, fácilmente.
tdammers

1
@tdammers, yo también. El problema no es si estos archivos existen, sino cuándo es el momento de comenzar a reconsiderarlos. En mi opinión, eso es normalmente mucho antes de unos pocos miles. Es mucho antes de unos pocos cientos . De hecho, una vez que empiezo a desplazarme, empiezo a sentirme un poco inquieto (no significa que refactorice de inmediato).
Anthony Pegram

55
@Anthony Pegram: creo que un programa debe estar bien estructurado a través de funciones / rutinas, etc. El hecho de que estén todos en el mismo archivo no me molesta; todo lo contrario; Los prefiero todos allí en lugar de una gran cantidad de archivos en un directorio. Más fácil de diferenciar también, en mi opinión.
Torre

9

Vengo de un historial de uso de editores con números de línea incrustados en ellos. ¿Mis pensamientos al respecto? Son absolutamente innecesarios (ahora uso Vim con números de línea deshabilitados). Piense en esto: Incluso cuando se hace llegar seguimientos de pila y tal, ¿cuántas veces usted manualmente miras a la línea utilizando los números de línea en lugar de ctrl+g(en la mayoría de los editores de Windows) o:line-num en Vim?

Editar: Por supuesto, esto puede ser diferente para otros, pero el 99% de las veces, uso el último.


7

Una gran cosa: si está utilizando Visual Studio o cualquier ide con regiones plegables, los números de línea le dan una idea instantánea de cuán grande es un área sin expandirla. Además, si tiene algún tipo de registro que lo dirige a una línea problemática, es bueno no tener que usar un comando cuando la línea está justo en frente de usted.


3

Por alguna razón (viene a la mente la compilación cruzada) su compilador puede no estar integrado en su IDE. Por lo tanto, necesita una referencia absoluta de dónde se encuentran los errores. (Cuando compila fuera de su IDE)

NWS


2

La única vez que he usado números de línea es cuando aparece un error y el seguimiento de la pila me dice que ha sucedido en la línea x.

He visto a muchos desarrolladores profesionales trabajando sin números de línea. Por lo tanto, no veo otro uso que la referencia tardía .


2

Me gusta tenerlo cuando uso pantalla dividida en jEdit.


¡+1 definitivamente ayuda a orientar el trabajo de pantalla dividida en el mismo archivo! Hay algunas otras formas de determinar si está mirando la referencia o el área de trabajo del archivo.
Adam

1

Sí, como dice @maple_host, es realmente conveniente hacer un "vi file.py +142" cuando veo una excepción que se origina en el código en ese número de línea. Además de las otras ventajas mencionadas con la programación emparejada, etc. Siempre es beneficioso tener los números de línea en cualquier editor. (Recuerdo el vago error de compilación informado por MS VC ++ 6 en uno de los archivos de encabezado estándar, línea #blah !! .. ¡En realidad fue una redefinición de macro realizada por mí mismo!). Encuentra y mata.

saludos, Yati Sagade


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.