我清楚地记得,曾经有一段时间,微软推行的指导方针是向抽象类添加“ Base”后缀,以避免它是抽象的这一事实。因此,我们有类 System.Web.Hosting.VirtualFileBase
、 System.Configuration.ConfigurationValidatorBase
、 System.Windows.Forms.ButtonBase
,当然还有 System.Collections.CollectionBase
。
但是我注意到,最近框架中的许多抽象类似乎没有遵循这个约定。例如,下面的类都是抽象的,但不遵循这个约定:
System.DirectoryServices.ActiveDirectory.DirectoryServer
System.Configuration.ConfigurationElement
System.Drawing.Brush
System.Windows.Forms.CommonDialog
这就是我能在几秒钟内鼓起来的。所以我去查了官方文件,看看我是不是疯了。我在 班级图书馆开发设计指南的 MSDN 上找到了 类、结构和接口的名称。奇怪的是,我找不到在抽象类名称的末尾添加“ Base”的指导方针。该指南不再适用于框架的1.1版本。
我是不是疯了?这个指南曾经存在过吗?它就这么一声不响地被遗弃了吗?过去两年我一直在自己创建长的类名,结果一无所获吗?
谁能给我点好处。
更新 我没有疯,这个指导方针是存在的。2005年,Krzysztof Cwalina 抱怨过这个问题。