马兹(Matz)是Ruby的创造者,他在这里和那里阐述了自己的哲学:“源代码就是文档,它甚至准确地说明了所有的错误。”他可能也是指注释。我认为很多不在Ruby源代码中进行注释的人都遵循了他的话。是否跟随他的话由您决定。我还读过一些介绍Ruby的网站说,每当您感到有必要进行注释时,这就表明您应该将该例程拆分为单独的方法,并将其命名为您要注释的部分。
这个问题不仅限于Ruby。代码注释应该尽量少,因为当代码发生变化时,它们通常不会被更新,反而会误导人。正如您所建议的那样,最好的代码是自我说明的,不需要注释。编辑:为了澄清,如果您不能简化代码以消除复杂性,则必须提供注释。在我的经验中,这很少见,通常只适用于外部组件的行为与您的预期不同的情况。