【发布时间】:2011-03-12 02:12:18
【问题描述】:
现在,如果您阅读 MSDN for C# 中的命名约定,您会注意到它声明属性始终优先于公共和受保护字段。有些人甚至告诉我,你永远不应该使用公共或受保护的字段。现在我同意我还没有找到需要公共字段但受保护字段真的那么糟糕的原因吗?
如果您需要确保在获取/设置值时执行某些验证检查,我可以看到它,但在我看来,很多时候这似乎只是额外的开销。我的意思是说我有一个 GameItem 类,其中包含 baseName、prefixName 和 suffixName 字段。为什么我要承担创建属性 (C#) 或访问器方法的开销以及我会发生的性能损失(如果我对应用程序中的每个字段都这样做,我相信它加起来会少尤其是在某些语言中,例如PHP 或某些性能至关重要的应用程序(例如游戏)?
【问题讨论】:
标签: c# performance coding-style access-levels