当前位置:  开发笔记 > 编程语言 > 正文

如果私有变量已经存在,我应该将其标记为私有变量?

如何解决《如果私有变量已经存在,我应该将其标记为私有变量?》经验,为你挑选了3个好方法。

据我所知,在C#中,如果没有另外标记,所有字段都是默认的私有字段.

class Foo
{
  private string bar;
}

class Foo
{
  string bar;
}

我猜这两个声明是平等的.

所以我的问题是:我应该将私有变量标记为私有变量private



1> Marc Gravell..:

现在; 无论如何,字段应该总是私有的,所以无论你是否应该打扰它都是一个优势.

对于更广泛的主题,我记得Eric Lippert的评论 - 基本上说给定一个方法/类/什么:

void Foo() {}
class Bar {}

然后不清楚它们是否是私人/内部故意,或者开发人员是否已经考虑过它,并决定它们应该是私人/内部/其他.所以他的建议是:告诉读者你是故意做而不是偶然做事 - 明确说明.



2> Jon Skeet..:

关于这一点,我已经有一段时间了.我曾经主张将其隐瞒,但现在我认为我已经倾向于明确这一点.

隐瞒原因的理由:

这意味着非私人成员(或任何访问权限超过默认值的人)会有更大的差异; 这突出了阅读代码时的不同之处

明确的原因:

一些开发人员可能不知道默认值:明确表示每个人都清楚

它表明您已经积极做出决定,而不是仅仅将其保留为默认值

后面这几点基本上是Eric Lippert在我们刚才讨论过的时候提出的.


对我来说,使"私有"显式的第二个论点有点像"我正在写'i = + 42'而不是'i = 42'来向维护程序员表明我知道负数!我正在积极地制作这是一个决定!" :)

3> Canavar..:

是的,他们是平等的,但我喜欢将私有变量标记为私有,我认为这会改善阅读.

我也为私人会员使用这种常用符号,它非常有用:

private string _bar;

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有