繁体   English   中英

类型和命名空间相同时的类型和命名空间命名

[英]Type and namespace naming when the type and namespace are the same

.NET 设计指南建议避免对命名空间和类型使用相同的名称。

不要对命名空间和该命名空间中的类型使用相同的名称。

例如,不要使用Debug作为命名空间名称,然后在同一命名空间中还提供一个名为Debug的 class。 一些编译器要求这些类型是完全合格的。

鉴于上述情况,建议不要在Company.Entities.Customer命名空间中定义Customer类型。 在这种情况下,我可以看到两种可能的选择:

  1. 将命名空间复数化为Company.Entities.Customers并在其中包含单一的Customer类型
  2. 保留单一命名空间Company.Entities.Customer并将Customer保留在Company.Entities命名空间中

这两个选项似乎都是合理的,并且选项 1 提供的所有相关类型的逻辑分组感觉比命名空间之外的单一类型更明智(对于具有类似命名问题的类型可能会重复)。

鉴于这两种选择,是否有针对这种情况的标准方法,或者它是基于意见的(因此这个问题将被关闭)?

两种方法都可以使用(如果从这两种方法中选择,我个人会使用第二种方法 go),但还有其他可能性值得考虑:

  1. Entities后缀添加到命名空间名称,即Company.Entities.CustomerEntities

  2. 从“按类型分组”方法(即实体/存储库/控制器/视图等的根级文件夹)切换到垂直切片架构视频演示)/功能文件夹方法,我个人在过去几年中越来越喜欢这种方法(看到这个这个这个)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM