Reputation: 7792
I was just wandering why is the prefix XXX
?
As far as I know its used for notes/reminders (or at least this is what I use it for and that is what the people on most of the links I googled use it for).
So does anyone know where the XXX
prefix come from ?
Upvotes: 23
Views: 36304
Reputation: 58812
It bugs me too, because XXX may also be used for masking input or format numbers,
Thus creating multi markers warning when you describe amount format:
/**
* @param amount (XXX or XXX.XX)
*/
public doSomething(String amount) {
Multiple markers at this line
-XXX or
-XXX.XX)
As @Jean-PhilippePellet suggested, you can remove it from
Preferences -> Java -> Compiler -> Task Tags
Upvotes: 0
Reputation: 20431
There's also a reference to it on Wikipedia:
XXX to warn other programmers of problematic or misguiding code.
Upvotes: 2
Reputation: 3304
From Sun/Oracle's Java code conventions, section 10.5.4:
Use XXX in a comment to flag something that is bogus but works. Use FIXME to flag something that is bogus and broken.
Upvotes: 28
Reputation: 115600
Various reasons:
Upvotes: 4
Reputation: 156534
From the Hacker's Dictionary entry for "XXX":
A marker that attention is needed. Commonly used in program comments to indicate areas that are kluged up or need to be. Some hackers liken `XXX' to the notional heavy-porn movie rating. Compare FIXME.
Upvotes: 29
Reputation: 3958
I've worked with a team where XXX
was used to point out a "bug or task that was not yet entered in Trac.". After it was entered in Trac the comment would be changed to TODO
with the ID appended.
To Eclipse though, it's just a marker like TODO
and FIXME
. I imagine that it's originally used as a strong form of TODO
. You usually see comments like this:
// TODO: Need to optimize this once n becomes greater than 1000.
But sometimes you'll have a comment like:
// TODO: Fix SQL injection bug before production release!
Unfortunately a quick grep
wont make that SQL injection bug stand out among the 1000s of other TODO
s. Using XXX here would help mark things that must be done before a milestone/release etc.
Upvotes: 3
Reputation: 60006
XXX
, along with FIXME
and TODO
, is known in Eclipse as a task tag, and is indexed by the IDE to let you find the spots marked with those tags easily. You can edit such tags in the Eclipse Preferences -> Java -> Compiler -> Task Tags.
As to where it comes from: it probably emerged form the "tags" that programmers spontaneously wrote in their code to quickly mark a given line. While FIXME and TODO are explicit enough, the reason XXX was used could be a combination of these reasons:
I can't think of anything else...
Upvotes: 9