你遇到过的源代码中最好的注释是什么?


当前回答

回到《Hitchhiker’s Guide》刚问世的时候,我曾经测试过某些内容是否可滚动,以及用户是否尝试着滚动,这是一种限制可变长度的语言。所以:

if (scroll and noScroll) # or tea and no tea

其他回答

在1983年的COBOL中见过:

   C   I don't know what this next bit does so I'll jump around it
       GOTO DONE.

我刚刚完成了一个日志框架(使用Trace,为什么没有这样的存在我不知道)。我做了一个继承自TraceListener的方便基类。它覆盖了所有的TraceListener方法,并将它们路由到一个方法中——因此有很多文档注释:

// TODO: Need some codemonkey to doc comment this class.
# To understand recursion, see the bottom of this file 

在文件的底部:

# To understand recursion, see the top of this file

几年前,我在一个没有单元测试可言的大型代码库中工作。

代码中隐藏了一个执行一些日历计算的方法。它有点坏了,由于一些不幸的情况,不得不以一种非常笨拙的方式处理夏令时。

我们不得不修了几次,每一次,我们都会在几个月后发现一些东西坏了。

在花了一整天的时间修复和分析之后,我把代码放到了源代码控制中,并附上了这样的评论:

// this code was written after a version trying to do {this} failed because of {reason},
// previously we were doing {this} which failed because of {reason}. This is 
// now written {this} way so that {lots of reasons here}. If you want to touch
// this code, please make sure that it produces the right answers when tested with:
//
// {some sort of unit test}

最终,我的团队被外包了。有时我想知道这段代码发生了什么:)

Fix problem where Nulls don't work properly.  Stupid Microsoft!

代码以迂回的方式一行一行地将null转换为零长度的字符串,因为愚蠢的程序员不理解null是什么,也从未听说过Nz()函数。