编程语言
首页 > 编程语言> > c# – 为什么在setter之前定义getter(编码约定)

c# – 为什么在setter之前定义getter(编码约定)

作者:互联网

我很欣赏这个问题有点傻,所以如果这不是主题或非建设性的话,我会事先道歉.

为什么在C#中使用getter之前用getter定义属性是标准约定?对于具有这两者的属性,您几乎总是在getter之前使用setter,因此它处于有效状态.因此,我首先定义吸气剂似乎有些落后.

此外,setter通常会有一些验证逻辑,getter不需要.在吸气剂之前使用这个逻辑以使其更清楚地表明属性应该如何表现是不是更整洁.例如:

public decimal Price
{
    get { return _price; }
    set
    {
        if(value < 0m)
        {
            throw new ArgumentOutOfRangeException();
        }

        _price = value;
        OnPropertyChanged("Price");
    }
}

setter中的代码比getter更有趣,如果它不优先并且首先定义?

*我知道这些东西没有规则,但实际上每个例子都有,属性在setter之前定义了getter.

解决方法:

因为给予比接受更好.

更严重的是,我猜测是因为无论是谁编写了代码片段(或者是自动生成VS中的属性代码),都会下意识地选择此顺序.

然后,因为我们其余的人只是这个开拓牧羊人的羊,我们毫无疑问地追随.

直到你.

你质疑我们曾经伟大的牧羊人,无政府状态只会随之而来.提交您的代码并为山丘奔跑.

标签:c,properties,conventions,coding-style
来源: https://codeday.me/bug/20190711/1434840.html