Что ХХХ означает в комментарии? [закрыто]


72

Что люди обычно имеют в виду, когда вы видите XXXв комментарии. Иногда я увижу такой комментарий:

# XXX - This widget really should frobulate the whatsit

Конечно, я могу сказать, что означает комментарий, но что обычно означает XXX? Это говорит "Это взлом" или, может быть, "Мы должны вернуться к этому позже"? Или это говорит что-то совсем другое?


3
Существует множество ссылок, по которым можно ответить на этот вопрос: catb.org/jargon/html/X/XXX.html ; oracle.com/technetwork/java/javase/documentation/… ; c2.com/cgi/wiki?FixmeComment
— pkh

Я пользуюсь qazлично. Легко набрать, и за 40 лет кодирования это никогда не встречалось в моем коде, поэтому я легко могу найти его. Вместо FixMe: или ToDo: я использую его для быстрых экспериментальных взломов, которые я могу легко изменить, если они не сработают. Но мой qazникогда бы и не быть привержены источник управления, в то время как FIXME: или ToDo: или XXX может быть.
— Mawg

Я заметил, что в кодовой базе Метеора есть много старых XXX комментариев ... своего рода беглый комментарий к его грязным секретам. И кажется, что они используют какой-то инструмент для автоматического удаления их из кода, который поставляется!
— Энди

Ответы:


68

Что XXXпредставляет собой, зависит от автора кода. В общем, он используется в качестве маркера для кода, который требует внимания.

Однако на этой веб-странице изложено несколько иное мышление:

XXX: используется для обозначения чего-то поддельного, но работает

FIXME: используется для обозначения чего-то поддельного и сломанного

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


12
HACKбудет альтернативой XXX.
— Ричард

1
ссылка не работает :(
— Джек

1
FIXME: link broken
— onewhaleid

1
HACK не является альтернативой XXX. Флаг комментария XXX имеет долгую историю и, по сути, означает то, что работает, но требует внимания (поддельное, но работает).
— Брилл Паппин

98

Это грязный кусок кода;)


20
Это смешной ответ или смешной и правильный ответ?
— koenmetsu

4
о, эти непослушные программисты
— aeracode

@koenmetsu смешно и аккуратно. Это неправильно , но пока работает достаточно хорошо, поэтому не совсем неправильно. «Грязный» - это подходящее описание чего-то, что работает, но не совсем правильно (то есть чисто).
— Ииридайн

21

В Википедии : «ХХХ предупредить других программистов о проблемном или вводящем в заблуждение коде». - которые могут быть извлечены из контейнеров с ядом, на которых написано «ххх»; супер старая школа.

Если это заметка TODO, вот соответствующая запись в блоге под названием TODO или не TODO , в которой рассматривается использование GREP для сортировки комментариев по дате, владельцу и т. Д.


13

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

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


2
Также легко найти с помощью grep или тому подобного
— Захари К

7

IIRC - это аннотация, которая предшествует аннотациям TODO или FIXME и имеет аналогичное значение. Например, это довольно часто встречается в исходниках vim.


6

Скорее всего, это последовательность символов, которая не встречается в обычном коде, а это означает, что ее можно легко найти из командной строки:

ravn:tmp ravn$ echo XXXX This is very bad > processor.c
ravn:tmp ravn$ echo XXXX Verify defaults before going in production > main.c
ravn:tmp ravn$ grep -R XXXX .
./main.c:XXXX Verify defaults before going in production
./processor.c:XXXX This is very bad
ravn:tmp ravn$ 

(пример для Unix, я считаю, что "findstr" делает то же самое под Microsoft Windows)


4

но что вообще означает ХХХ? Это говорит "Это взлом" или, может быть, "Мы должны вернуться к этому позже"? Или это говорит что-то совсем другое?

Любой из вышеперечисленных.

Выбор XXX по сравнению с TODO, FIXME, HACK или чем-то еще не регулируется какими-либо строгими правилами или соглашениями. По сути, это означает, что тот, кто его там поместил, имел в виду. Это может быть очевидно ... или это может быть совершенно непрозрачным для вас.


ОБНОВЛЕНИЕ Википедии в настоящее время (2016-03-30) говорит:

Такие теги сильно различаются, но могут включать:

  • ...
  • XXX - предупредить других программистов о проблемном или неверном коде

Обратите внимание на четкие предостережения в исходном тексте. XXX может быть истолкован как намек на «XXX», который вы видите на бутылках с ядом и / или самогоном в классических комиксах, мультфильмах и т. Д.


2

Скорее всего, это маркер, который можно найти позже. В отличие от TODO, FIXME или тому подобного, XXX очень редко встречается в любом слове или конструкции, что делает его идеальным для маркера, который будет стоять отдельно при поиске файлов.


0

Там, откуда я родом, мы используем XXX (а затем YYY, ZZZ) для чисел, которых мы еще не знаем, например: добавьте XXX к YYY, чтобы найти результат, затем добавьте 10%.

Происходит из уравнений в школе, где «х» является неизвестной переменной.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.