Каковы преимущества отображения номеров строк в текстовом редакторе?

27

Я чувствую себя странно, когда я редактирую код в IDE, у которого нет номеров строк в текстовом редакторе.

У меня есть следующие вопросы:

  1. Являются ли номера строк визуально чрезмерными, особенно если в выбранной вами IDE существует функция поиска по строке?
  2. Какая польза от показа номеров строк?
Ник Ларсен
источник
35
2: чувствовать себя полностью мачо над количеством строк написанного кода.
Адам Кроссленд
4
@ AdamCrossland: забавно, что вы должны это упомянуть, я обычно вижу, что это как раз наоборот, и чем больше строк кода я пишу, тем больше времени я трачу на его просмотр, чтобы убедиться, что я ничего не делал дважды, и что я ' м встреча спец.
Ник Ларсен
4
да, это все верно и для меня, но иногда вам просто нужно пристегнуть свой мотоциклетный шлем и пойти на мачо.
Адам Кроссленд
3
Я считаю, что быстрее прокручивать глаза на номера строк, чем использовать функцию goto line моего редактора (это может быть потому, что я сначала должен найти ее каждый раз), особенно когда я уже близко
трещотка урод
7
@ Adam: Почувствуй себя полностью мачо из-за того, как мало строк кода я написал, чтобы заставить его работать.
Newtopian

Ответы:

14

Все, что помогает общению, является плюсом.

  1. Это не занимает много места, так что нет, это не чрезмерно, если вы или кто-либо из ваших коллег посчитаете полезным обсудить код.

  2. Даже если вы не занимаетесь парным программированием, это полезно для анализа кода «через плечо», если вы не используете такие инструменты, как Code Collaborator (мы не делаем сейчас).

Также, если у вас есть члены команды на других сайтах (у нас есть), это полезно для обсуждения кода через чат или по телефону.

Как вы можете сказать им сказать им, чтобы они пошли на линию 1842, если вы не видите линию?

Для меня это бесценный простой маленький инструмент. Даже некоторые из наших спецификаций в формате pdf имеют пронумерованные линии, и удивительно, насколько проще обращаться и обсуждать их по сравнению с ненумерованными.

Хьюго
источник
54

Никто не упоминал о возможности быстрого просмотра трассировки стека исключений, чтобы выяснить, где произошло исключение.

maple_shaft
источник
В самом деле? ОП штатов "referencing stack trace line numbers". Или вы оба имеете в виду разные вещи?
StuperUser
3
Ой ... Я пропустил это! Ну ... это важно, так что стоит повторить! ;)
maple_shaft
4
Ну, вопрос был отредактирован, upvote!
StuperUser
И конечно, просматривая логи (не обязательно из исключений). Все наши журналы индексируют файл + строку, из которой они происходят, невероятно удобно!
Матье М.
@maple_shaft, на самом деле, даже если вы не можете видеть линии, вы все равно можете сделать Ctrl-G (например, простой старый блокнот).
Пейсер
51

Отображаемые номера строк необходимы для парного программирования. Нет более быстрого способа направить взгляд вашей пары на код, о котором вы думаете.

Кроме того, номера строк также чрезвычайно полезны для проверки кода, как формальной, так и неформальной.

Эрик Уилсон
источник
+1: я не рассматривал парное программирование (не удивительно, хотя я определенно не фанат). Тем не менее, полезность номеров строк в обзорах кода сильно зависит, если вы используете приложение для этого (например, CodeCollaborator)
Демиан Брехт
У меня не было привычки нумерации строк, пока я немного не занялся парным программированием, теперь у меня привычка нумерации строк. +1 за то, что я понял эту связь.
SingleNegationElimination
11
Вместо того чтобы говорить «Строки с 247 по 253», я считаю, что быстрее просто выделить эти строки или указать на них пальцем. Я не чувствую, что этого ответа достаточно, чтобы оправдать дополнительный беспорядок.
BlueRaja - Дэнни Пфлугхофт
1
Я поражен, что этот ответ получил 36 голосов за 24 часа.
Эрик Уилсон
@BlueRaja: не уверен в парном программировании (хотя вы могли бы занять обе руки), но при обсуждении с одного стола на другое, это определенно помогает! Что-то я не понимаю в yyy.cpp в строке 314, зачем нам это нужно?
Матье М.
10
  1. Нет, мне нравится иметь данные, чтобы дать мне представление о том, где что-то находится в файле, особенно если я смотрю на большой файл конфигурации, где может быть нелегко снова найти это место.

  2. Я могу взглянуть на номер строки, чтобы увидеть размер файла. Если в файле несколько тысяч строк кода, возможно, пришло время подумать, должен ли этот файл быть разбит или что-то в этом роде. Я также могу использовать его, чтобы судить, насколько глубоко я в файле, если у меня есть приблизительный размер файла и какие цифры на моем экране. Мне нравится идея количественного определения моего местоположения в пределах полосы прокрутки, например, я нахожусь в верхней четверти файла или в третьем квинтиле.

JB King
источник
1
Несколько тысяч ?
Энтони Пеграм,
4
@Anthony: в игре вы должны видеть loc для каждого файла;)
Демиан Брехт,
3
@ Энтони: конечно. Я видел исходные файлы с 10k + LOC, легко.
tdammers
1
@tdammers, как и я. Вопрос не в том, существуют ли эти файлы, а в том, когда настало время начать пересматривать. На мой взгляд, это обычно задолго до нескольких тысяч. Это задолго до нескольких сотен . На самом деле, как только я начинаю прокручивать, я начинаю чувствовать себя немного нервным (это не значит, что я немедленно рефакторину, заметьте).
Энтони Пеграм,
5
@ Энтони Пеграм - я чувствую, что программа должна быть хорошо структурирована с помощью функций / процедур и так далее. Тот факт, что они находятся в одном файле, меня не беспокоит; наоборот; Я предпочитаю их всех там, а не множество файлов в одном каталоге. Проще тоже дифференцировать, ИМО.
Ладья
9

Я пришел из истории использования редакторов со встроенными в них номерами строк. Мои мысли по этому поводу? Они абсолютно не нужны (теперь я использую Vim с отключенными номерами строк). Подумайте об этом: Даже если вы делаете получить трассировки стека и такие, сколько раз вы вручную искать для строки , используя номера строк , в отличие от ctrl+g(в большинстве редакторов для Windows) или :line-numв Vim?

Изменить: Конечно, это может отличаться для других, но в 99% случаев я использую последний.

Демиан Брехт
источник
7

Одна важная вещь: если вы используете Visual studio или любую другую систему со складными областями, номера строк дают вам мгновенное представление о том, насколько велика область без ее расширения. Кроме того, если у вас есть какая-то запись в журнале, направляющая вас к проблемной строке, хорошо, что вам не нужно использовать команду, когда она находится прямо перед вами.

отметка
источник
3

По любой причине (на ум приходит кросс-компиляция) ваш компилятор может быть не интегрирован в вашу IDE. Поэтому вам нужна абсолютная ссылка на то, где обнаружены ошибки. (Когда вы компилируете вне вашей IDE)

NWS

NWS
источник
2

Единственный раз, когда я использовал номера строк, это когда всплывающая ошибка и трассировка стека сообщает мне, что это произошло в строке x.

Я видел много профессиональных разработчиков, работающих без номеров строк. Таким образом, я не вижу другого применения, кроме поздней ссылки .

Саид Нямати
источник
2

Мне нравится иметь его, когда я использую разделенный экран в jEdit.

Кристофер Махан
источник
+1 Это определенно помогает ориентировать работу разделенного экрана в одном файле! Есть несколько других способов определить, смотрите ли вы на ссылку или рабочую область файла.
Адам
1

Да, как говорит @maple_host, действительно удобно сделать "vi file.py +142", когда я вижу исключение, происходящее из кода в этом номере строки. Плюс другие упомянутые преимущества парного программирования и т. Д. Всегда полезно иметь номера строк в любом редакторе. (Я помню неопределенную ошибку компиляции, сообщенную MS VC ++ 6 в одном из стандартных заголовочных файлов, строка #blah !! .. На самом деле это было переопределение макроса, выполненное мной !!). Найди и убей.

С уважением, Яти Сагаде

Яти Сагаде
источник
-1

Я обнаружил, что текущее выделение строк может решить большинство проблем «где вы смотрите». Но вопрос о трассировке стека имеет решающее значение.

Энтони Мастреан
источник