Where does the XXX comment prefix in Eclipse come

2019-03-14 21:01发布

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 ?

6条回答
手持菜刀,她持情操
2楼-- · 2019-03-14 21:27

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.

查看更多
闹够了就滚
3楼-- · 2019-03-14 21:28

Various reasons:

  1. It's easy to search for.
  2. No collision, as no sane person would use it as a variable.
  3. It can used to mark code that needs e*X*tra special attention, dangerous code, not to be seen by underaged, etc.
查看更多
beautiful°
4楼-- · 2019-03-14 21:34

There's also a reference to it on Wikipedia:

XXX to warn other programmers of problematic or misguiding code.

查看更多
该账号已被封号
5楼-- · 2019-03-14 21:36

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.

查看更多
三岁会撩人
6楼-- · 2019-03-14 21:39

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:

  • The string "XXX" does not usually occur in regular source code and is easy to look for with tools such as grep or a simple text search in an editor;
  • Traditionally, "X marks the spot" which needs attention; triple X even more so;
  • The X key is very close to the Command/Alt/Windows keys and is easy to reach, being on the lower row of the keyboard.

I can't think of anything else...

查看更多
你好瞎i
7楼-- · 2019-03-14 21:44

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 TODOs. Using XXX here would help mark things that must be done before a milestone/release etc.

查看更多
登录 后发表回答