在工作中,他们对命名空间的命名非常精细(在我加入之前)。一个典型的命名空间可能是
CompanyName.SubCompanyName.DepartmentName.ProjectName.UniqueProjectName.ProjectName.FilteredProjectName
可悲的是,尽管知道项目所在的位置有一定的清晰度,但是这个命名空间太嘈杂了,我想要缩短它。
我想使用 using
关键字(用于声明要使用的命名空间)和等号来使用命名空间别名。现在问题变成了命名空间声明和类属性之间的歧义。例如
Project.Message
现阶段,我们并不知道 Project 是一个静态类、命名空间还是已初始化对象的名称(尽管关键词“this.”可能有助于澄清)。
因此,基于这个背景,我的问题是关于命名规范的。对我来说,使用匈牙利式命名约定(虽然现今被认为过时)会很有意义,这样我就可以做如下操作:
请注意,我在前面加了 ns(命名空间)前缀。因此,如果代码看起来像以下任何一种,至少有一些清晰度:using nsProject = 公司名称.子公司名称.部门名称.项目名称.唯一项目名称.项目名称.过滤后的项目名称
this.Project.Message
nsProject.Message
Project.Message
以上3个示例现在已经比较清晰了:第一个已经在项目中声明,第二个是命名空间,第三个可能是静态方法调用。
这种方法有什么评论吗?我是否正在重复造轮子(是否已经有指南)或者其他人对可以做什么有不同的意见?
编辑
希望使用别名的另一个原因是当前命名空间与文件夹结构不匹配(或在某些地方没有任何意义)。所以,我不仅想确保使用的对象/名称空间类型清晰,而且我的别名也将作为文件夹位置的指南。我知道,这可能被认为是黑客行为等,但这是许多步骤中的第一步(如本文中的注释所述)。