为私有变量设置 public 有意义吗?

Does this public get set for a private variable make sense?

我正在开发一个代码库,一个学生的知识有问题,在这里我只是感到困惑,如果那里有任何合理的意图,或者如果它只是不必要的......我个人只会使用 ShowNewButton 字段并丢弃 _showNewBtn ,请提意见。

private _showNewBtn;
public bool ShowNewButton
        {
            get => _showNewBtn;
            set
            {
                bbNew.Visibility = value == false ? BarItemVisibility.Never : BarItemVisibility.Always;

                _showNewBtn = value;
            }
        }

我认为 _showNewBtn 没有理由(在您提供的示例中)。 您现在有 2 个标记,其中包含按钮的可见性状态。在某些时候,如果您不小心,这会导致问题。 完全删除 _showNewBtn

public bool ShowNewButton
{
  get => bbNew.Visibility == BarItemVisibility.Always;
  set
  {
    bbNew.Visibility = value == false ? BarItemVisibility.Never : BarItemVisibility.Always;
  }
}

或证明 _showNewBtn 的存在,这使我的评论无效。