Я видел это много в коде, даже vim отмечает его как особый случай. #TODO
и #FIXME
являются двумя другими маркерами фиксации vim, но что означает #XXX
?
В чем смысл #XXX в комментариях кодов?
Ответ 1
XXX
в комментарии обычно хедз-ап. Это может быть:
- Что-то, что не реализовано полностью правильно.
- Что-то, что должно быть исправлено позже.
- Выделите возможное проблемное место.
- Что-то, о чем вы не уверены, вопрос.
Я часто предпочитаю более описательный тег, например FIXME
или TODO
или HACK
. XXX
часто используется как уловка для вышеперечисленного.
Поиск "XXX" в ссылка на код FreeBSD является хорошим примером многих применений. Есть тысячи...
Ответ 2
-
NOTE
: описание того, как работает код (если это не очевидно). -
XXX
: предупреждение о возможных ловушках, может использоваться какNOTE:XXX:
. -
HACK
: Не очень хорошо написанный или искаженный код, чтобы обойти проблему/ошибку. Должен использоваться какHACK:FIXME:
. -
FIXME
: Это работает, вроде, но это можно сделать лучше. (обычно код, написанный в спешке, нуждается в перезаписи). -
BUG
: Здесь есть проблема. -
TODO
: Нет проблем, но добавочный код нужно писать, как правило, когда вы что-то пропускаете.
По крайней мере, так меня научили эти теги. В основном первые два (NOTE
и XXX
) используются для информации, и никаких действий не требуется. В то время как последние три (FIXME
, BUG
и TODO
) требуют действия. HACK
находится где-то посередине (и почти никогда не используется, я думаю?).
Ответ 3
Некоторые заметки из Июнь 2005 Предложение по улучшению Python, которое было отклонено.
Выбор между
FIXME
иXXX
затруднен.XXX
кажется более распространенным, но гораздо менее описательным.
Кроме того,XXX
является полезным заполнителем в куске кода
имея неизвестное значение.Таким образом,
FIXME
является предпочтительным написанием.
Солнце говорит, чтоXXX
иFIXME
немного отличаются, что даетXXX
более высокую степень тяжести.
Однако с десятилетиями хаоса на эту тему и слишком много миллионов разработчики, на которые не будет влиять Sun, легко по праву назвать их синонимами.
PEP Начнется с
Этот PEP отклонен. Хотя сообщество может быть заинтересовано,
нет желания, чтобы стандартная библиотека соответствовала этому стандарту.
...
Что такое кодетаги?
Программисты широко используют условные обозначения разметки кодовых обозначений кода для обслуживания в качестве напоминания о разделах кода, которые нуждаются в более тщательном осмотре или обзор. Примеры разметки включают
FIXME
,TODO
,XXX
,BUG
, но там гораздо больше в широком использовании в существующем программном обеспечении. такие разметка в дальнейшем будет называться кодовыми. Эти кодовые обозначения могут отображаться в коде приложения, модульных тестах, сценариях, общих документация или везде, где это подходит.
PEP интересен для чтения.
Ответ 4
Посмотрите на PEP350. Это объясняет все TODO
, XXX
и т.д. Я использую его каждый день, когда не могу точно вспомнить, что означает один из тегов кода.
Ответ 5
Я использую XXX
, потому что его легче набирать, чем TODO
.
XXX
- это то, когда вы спешите и вернетесь к этому самостоятельно.
TODO
- это когда вам нужно передать его кому-то другому.
Ответ 6
Возможно, это касается случаев, когда вы не знаете, как обращаться.
Проверьте это: Просмотр списка инструкций TODO/FIXME/XXX/HACK
alt text http://editra-plugins.googlecode.com/svn/wiki/images/commentbrowser/cb_screenshot.PNG
Ответ 7
От (старый) Соглашения Java-кода:
Использовать XXX в комментарии, чтобы отметить что-то фиктивное, но работает. использование FIXME, чтобы отметить что-то, что является фиктивным и сломанным.
Ответ 8
Заполнитель, обычно подразумевающий код, на который он ссылается:
- Гадкий
- Scary
- Магия
или хуже.
Ответ 9
XXX не подходит для предостережения, который немного отличается от NOTE, но очень похож на HACK. Это может быть ошибка в сторонней библиотеке/коде, которая используется, а код с //XXX: указывает, что либо обходной путь из-за ошибки в стороннем коде, либо это может означать "предостережение" кому-то, кто ищет/изменяет код, указывающий, почему что-то делается определенным образом, что в противном случае может показаться некорректным/неэлегантным в первом взгляде. HACK - общий термин, означающий обходной путь для проблемы, которая может присутствовать либо в вашей собственной базе кода, либо в сторонней библиотеке.
Ответ 10
Я считаю, что FIXME
для разработчика, а HACK
- для сопровождающего, XXX
для пользователя.
Например, если вы игнорируете XXX
и вызываете эту функцию в другом месте, не понимая, как это работает, может произойти что-то неожиданное, и человек, занимающийся этой проблемой, будет недоволен (по крайней мере, тот, кто добавил XXX
думает так). Вы можете подумать, что проблема исчезнет, если вы просто не используете эту функцию.
Но для FIXME
вы будете чувствовать себя достойным, чтобы просто исправить код, чтобы он работал. И для HACK
у вас может не быть лучшего выбора, даже если вы его не используете.
Если вы написали XXX
на свой собственный код, а кто-то его использовал, вы можете чувствовать себя несчастным по причинам, так как вы полностью переписали этот код, и тогда он ведет себя совершенно по-другому, и вы нарушили код другого. Но если вы оставите FIXME
или TODO
вместо этого, вам не все равно.