方法末尾的注释最佳实践?

4

我有一些代码,每个方法后面都有注释,例如:

// End of contructor DbFactoryDBConnection()

这样的注释是否应该用于表示方法的结束呢?这是从前一份工作中学来的常见做法。

5
个人观点:呸,不需要。现代的集成开发环境拥有针对此类问题的语法和结构高亮功能。为何要在代码中加入毫无价值的注释呢? - dash
1
个人观点:同 @dash 所说。我唯一能想到的理由是如果该方法跨越多个屏幕,那么有更好的方法可以改善这种情况。 - George Duckett
好的,这证实了我的怀疑。它们将被移除。谢谢。 - CSharpened
7个回答

4

我认为这些评论是针对方法体无法适应单个屏幕的情况而言的。我相信这是重构和拆分这样的长方法以缩短方法甚至提取新实体/服务/助手的好迹象。这就像C#区域,有时用于隐藏非常长的代码块,这表明您有某种God Object反模式


2
不需要。如果你想知道大括号正在关闭什么,而不用滚动,你可以使用ReSharper。这在许多方面都非常好。只需将光标放在大括号上,如果它的开头不在视野内,则会提示显示其前面整行的内容。

2
通常这种注释会带来过多的文档化麻烦。
注释应该存在于类和方法的开头,以及在代码内部需要做出重要决策之前。
如果您发现需要记录IF、SWITCH或METHOD的结尾,则很可能需要重新审视代码以简化它们。

1
我认为这种注释是完全不必要的,只会让代码变得混乱。大多数IDE(如Visual Studio)多年来都已经有了突出显示方法范围(或其他内容)的功能,所以我不确定你通过这样做能够增加代码的价值。

1

你可以随时使用Visual Studio的PowerCommands,它会在括号结尾处添加注释,以便知道当前所在的括号结束位置。我经常使用它,它非常有帮助:)


0
不,不应该使用这样的注释。唯一的原因是,某人会使用这样的注释是因为方法太长了。但即使如此,现代IDE也会在某个方法中显示您当前所在的位置,并允许将方法折叠回到定义中。
这样的注释毫无价值,只会污染代码库。

0

我认为这不应该出现在源代码中;它很容易与有效的源代码块失去同步。如果您认为这有帮助,可以使用Visual Studio中的扩展程序来显示此信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接