标识符的.NET资本化规则和属性System.Text.Encoding.UTF8

时间:2016-11-17 13:36:40

标签: c# .net naming-conventions

为什么属性System.Text.Encoding.UTF8的名称都是大写的?根据{{​​3}}以及UTF是一个超过2个字符的首字母缩写的事实,该属性应该被命名为System.Text.Encoding.Utf8或者我错了吗?

1 个答案:

答案 0 :(得分:1)

这都是大写的,因为它是以这种方式撰写的。

.NET 1.0的设计和实现(以及Encoding.UTF8一直回到那里)远远超出了框架设计指南的当前形式,更不用说它们的实施了。因此,您可以在这些指南的框架内找到大量违规行为。一小部分样本:

  • System.Security.Cryptography.RNGCryptoServiceProvider(还有很多其他类System.Security.Cryptography
  • System.Text.ASCIIEncoding
  • System.Runtime.InteropServices.COMException

系统搜索可能会出现更多。

这并不像看起来那么愚蠢:人们首先提出指导方针的全部原因是因为他们注意到这样的不一致,然后坐下来提出一套最能反映当前做法的规则。然而,回过头来改变当前类的大写(并破坏过程中的现有软件)是不值得的。

相关问题