命名用于替换现有API的C#类/方法的建议

Mic*_*rke 4 c# c++ coding-style naming-conventions

除了长期解释之外,我还有一种情况需要基本上重新实现.NET框架类,以便以与继承或组合/委派策略不兼容的方式扩展行为.问题不在于我采取的行动方针是你要做的,还是建议,而是一个命名/编码风格的问题.

是否存在一种范式,用于命名具有与现有类或方法相同功能的类和方法,以及C++中存在的ClassEx/MethodEx的约定?

[编辑]我明白为此选择好名字很重要......我还没有编写一行代码,而是花时间思考我将要采取的措施的后果,包括搜索为了一个清晰,描述性的名称,同时努力简洁.问题是我想到的名字并不十分简洁.[/编辑]

Jas*_*aty 5

以下是我在.NET Framework中看到的方法:

  1. 称之为稍微不同的东西,但不要使用任何特定的后缀.例如,System.TimeZoneInfo被引入取代System.TimeZone.

  2. 把它放在另一个名称空间中 例如,WPF Button是在System.Windows代替的System.Windows.Forms.

  3. 用数字后缀它.例如X509Certificate2对比X509Certificate.(这种做法在COM接口中很常见,但在.NET中已不再受欢迎了.)

请注意,这TimeZoneInfo是一个公开的案例,微软正在处理这个有争议的命名问题.请参阅http://blogs.msdn.com/kathykam/archive/2007/03/28/bye-bye-system-timezone2-hello-system-timezoneinfo.aspxhttp://blogs.msdn.com/kcwalina/ archive/2006/10/06/TimeZone2Naming.aspx获取极好的信息.