繁体   English   中英

C#关于结束{}的评论

[英]C# comments on closing {}

我一直在使用DevExpress CodeRush和Refactor! 在本周的Pro中,我选择了一个注释程序插件,该插件将在您键入代码时自动生成注释。

我不想谈谈挑选基本含义(实际上很好)的工作有多么出色,但是它的默认实现确实引发了一个问题。

默认情况下,输入}字符以关闭块将导致插件添加如下注释。

using(MyType myType = new MyType())
{
    myType.doWork();
} // using

(即,在打开括号的地方添加注释。)

虽然我可以看到在某些情况下此行为可能很有用,但我觉得结果代码看起来很杂乱,并带有所有其他注释。

我想知道其他人对这种评论的看法。 不仅从学术的角度来看,而且如果我对它们有很多负面评论,我可以决定是将其强加给我的同事还是将其剔除。

我认为像这样的注释是没有用的,除非代码很糟糕。 使用正确的代码格式,不难发现块在哪里开始以及块在哪里结束,因为通常这些块是缩进的。

编辑:如果一个过程太大,以至于不知道哪个代码块被大括号关闭,那么无论如何应该已经有更多描述性的注释来描述该过程,而这些注释只会很混乱。

我发现一个从代码生成注释的插件的想法相当无用。 如果机器可以推断出它,那么任何阅读它的人也可以推断出它。 这些评论极有可能是完全多余的。

我觉得这些大括号的注释是乱七八糟的,如果个人需要,它可以提供更好地由IDE直接提供的信息。

IMO不需要任何描述代码已经告诉您的注释。

如果您确实有太长的代码块,那么您必须滚动很多才能看到那里的代码,然后开始做错了什么,因此可以考虑拆分代码。

不良的不良注释样式-它在代码库中引入了维护开销。

我认识过一些前VB编码人员,他们发现C语法代码中}的痕迹令人困惑,但是在这种情况下,真正的解决方法是重构代码,以防止深度嵌套和过长的功能和/或代码块。

如果using块扩展到IDE中的页面上,可能会很有用,但是您还有其他问题需要担心。 在这种情况下,我可以通过适当的缩进来实现,并且选择一个IDE时,IDE会突出显示匹配的花括号。

我通常会对此表示反对,但是如果您不能避免长时间使用,则可以使用。

有时您会得到非常大的代码块,或者将许多嵌套的块放在一起。 在这种情况下,有时我会使用这种风格,但绝对不是一直如此。 我也不将其限制为代码:HTML可以从这种“关闭注释”样式中受益匪浅:

<div id="content">
    <div id="columns">
        <div class="column">

            <!-- .. snip a lot of lines .. -->

        </div> <!-- .column -->
    </div> <!-- #columns -->
</div> <!-- #content -->

此类注释仅对具有许多嵌套块的非常长的代码块有用。 但这并不是说,首先应该是这样,因为许多嵌套块和长方法都需要进行重构。 所以我根本不喜欢这样,因为读者显然可以看到它是什么代码块。

我认为,IDE功能比注释更有用,它不仅可以突出显示匹配的花括号对,还可以在工具提示上显示打开行,因此,如果在示例中将鼠标悬停在右花括号上,它将出现“工具提示中的MyType myType = new MyType())”。

这将使您能够轻松理解大型功能的复杂嵌套括号,而无需提供持续的视觉混乱。

我总是觉得记住这一点很有用...

清除,写得很好的代码将提供足够的什么样的代码是做一个称职的程序员解释把它捡起来。

代码中应留有注释,以解释代码为什么这样做!

换句话说,使用意见,以帮助你的代码的读者理解算法,或什么的代码应该实现 ,而不是它是如何实现它!

您可能想看看Jeff Atwood的这篇文章

不要这样做,如果在整个地方使用它,只会增加噪音,此外,适当的缩进还应解决可读性问题。

我会保持关闭状态。 当您有多个以相同位置结尾的块(较长或较短的块)时,我只会看到使用它的要点-在这种情况下,我自己使用了它们。 但是,如果使用它们,最好是在精心选择的位置手动添加它们,而不是使用一些自动工具添加它们。

如果您必须考虑某种类型的评论是否可用,则很可能是后者。

注释用于解释某些代码块或整个实体,以简化理解。 不要使格式更易于阅读。

拥有始终符合这种行为的插件既肥胖又丑陋。

我同意,有更好的方法来描述代码在做什么。

如果您的代码很长,并且前面有一个信息丰富的注释,例如// Fix Work Item,则可以将该代码作为自己的方法进行重构。 然后使用注释作为新方法的名称FixWorkItem()。 这样做是使您的代码更具自记录性的快速方法,甚至可以揭示一些您以前没有注意到的设计特征。

密切注意诸如此类的单行注释,这些注释可能会被IDE自动处理。 记录自身的代码甚至比最佳书写的独立注释要好,当然在描述意图时也是如此。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM