【发布时间】:2014-04-17 23:35:10
【问题描述】:
我喜欢正确记录的代码,对我来说,正确记录描述合同的公共方法是不费吹灰之力的,同样适用于私有或包内部方法来解释代码内部/实现。
但是我不确定我是否应该使用非公开和非保护方法:
- 遵守所有手续,如参数、返回值和异常的描述
- 如果我应该记录不言自明的私有方法,例如
fireSomeEvent,乍一看它的作用显而易见,因为这只会使代码混乱
对此的标准方法是什么?
【问题讨论】:
-
我会说这样做,cmets 可以稍后删除(并通过源代码管理恢复),但以后实现会比较棘手,即使方法非常明显。
-
“不言自明”是一个危险的词;对你来说显而易见的事情可能对其他人来说并不明显。也就是说,如果您有一个具有好名称的单行方法(即名称反映了该方法的目的,而不仅仅是它发生的事情),您可能会争辩说文档没有添加任何内容。另一方面,一致的文档风格有助于程序在视觉上保持一致,并使读者更容易找到东西;另外,这意味着
javadoc可以使用您的方法。 -
“文档”和“评论”是有区别的。大概不需要正式的文档,但是代码应该还是有合适的 cmets。
-
@BheshGurung 当他们看不到它时,他们就看不到它。这些 cmets 适用于从事此类工作的其他开发人员。更重要的是:对于首先实施它的人。没有什么比(用文字)解释它的作用更能迫使你质疑自己的代码了。
-
就个人而言,如果您编写巫术代码,例如长 if 语句、十六进制数学、二进制算术、密码学等,请让 cmets 了解您的代码所做的什么。如果该行简单明了,没有花哨或复杂的内容,则不需要注释。
标签: java code-structure