我在代码中看到了很多,甚至vim都将它标记为特例。 #TODO
和#FIXME
是另外两个修正标记vim高亮显示,#XXX
是什么意思?
答案 0 :(得分:113)
XXX
通常是单挑。它可能是:
我经常更喜欢更具描述性的标签,例如FIXME
或TODO
或HACK
。 XXX
通常用作上述所有内容。
在FreeBSD code cross reference上搜索“XXX”是很多用途的一个很好的例子。有成千上万......
答案 1 :(得分:68)
NOTE
:代码如何工作的描述(当不明显时)。XXX
:关于可能存在的陷阱的警告,可以用作NOTE:XXX:
。HACK
:没有很好的编写或格式错误的代码来规避问题/错误。应该用作HACK:FIXME:
。FIXME
:这有点好用,但可以做得更好。 (通常编写的代码需要重写)。BUG
:这里有一个问题。TODO
:没问题,但通常在跳过某些内容时需要编写附加代码。至少这是关于这些标签的教学方式。基本上前两个(NOTE
和XXX
)用于获取信息,不需要任何操作。虽然最后三个(FIXME
,BUG
和TODO
)确实需要采取措施。 HACK
介于两者之间(我认为几乎没用过。)。
答案 2 :(得分:18)
来自June 2005 Python Enhancement Proposal that was rejected的一些说明。
在
FIXME
和XXX
之间进行选择很困难XXX
似乎更常见,但描述性更差 此外,XXX
是一段代码中有用的占位符 有一个未知的值。因此
FIXME
是首选拼写 Sun表示,XXX
和FIXME
略有不同,严重程度会提高XXX
然而,这个话题几十年来一直混乱,而且数百万 不受Sun影响的开发人员很容易称他们为同义词。
PEP始于,
此PEP已被拒绝。虽然社区可能感兴趣,但 不希望标准库符合这个标准。
...
什么是Codetags?
程序员广泛使用特殊代码注释标记约定来提供服务 作为需要仔细检查或代码的代码段的提醒 评论。标记示例包括
FIXME
,TODO
,XXX
,BUG
,但在现有软件中广泛使用的还有更多。这样 此后,标记将被称为 codetags 。这些代码标记 可能会出现在应用程序代码,单元测试,脚本,一般 文档或适当的地方。
PEP是一本有趣的读物。
答案 3 :(得分:9)
看看PEP350。它解释了所有TODO
,XXX
等。我每天都会使用它,因为我无法准确记住其中一个代码标记的含义。
答案 4 :(得分:5)
我使用XXX
因为它比TODO
更容易输入。
XXX
适用于您匆忙的时候,并会自行回复。
TODO
适用于必须将其交给其他人的情况。
答案 5 :(得分:2)
可能是因为你不知道如何处理的情况 看看这个:List view of TODO/FIXME/XXX/HACK statements
alt text http://editra-plugins.googlecode.com/svn/wiki/images/commentbrowser/cb_screenshot.PNG
答案 6 :(得分:2)
占位符,通常暗示它引用的代码是:
或更糟。
答案 7 :(得分:2)
来自(旧)Java code conventions:
在评论中使用XXX标记虚假但有效的内容。使用 FIXME标记虚假和破碎的东西。
答案 8 :(得分:0)
XXX是警告的缩写,与NOTE略有不同,但与HACK非常相似。它可能是正在使用的第三方库/代码中的错误,而// XXX的代码:表示由于第三方代码中的错误而导致解决方法,或者对于正在查看/修改的人来说可能意味着“警告”用于指示为什么某些事情以某种方式完成的代码,否则在第一眼看起来可能看起来不正确/不优雅。 HACK是通用术语,意味着可以在您自己的代码库或第三方库中出现的问题的解决方法。
答案 9 :(得分:0)
我相信虽然FIXME
适用于开发人员,而HACK
适用于维护者,XXX
适用于用户。
例如,如果您忽略XXX
并在其他地方调用此函数,而不了解它是如何工作的,则会发生意外情况,并且处理此问题的人将不满意(至少是添加了该问题的人) XXX
认为如此)。如果您不使用此功能,您可能会认为问题将会消失。
但对于FIXME
,您觉得值得修改代码以使其正常工作。对于HACK
,即使您不使用它,也可能没有更好的选择。
如果您在自己的代码上写了XXX
并且有人使用了它,那么您可能会因为完全重写代码而感到不满意,然后它以完全不同的方式运行,并且您破坏了其他人的代码。但是如果你离开了FIXME
或TODO
,你就不会那么在意了。
答案 10 :(得分:0)
我使用// XXX,因此不必记住行号。相反,当我想返回该代码段时,我只是搜索XXX。