c#命名空间命名约定

use*_*655 5 c# namespaces naming-conventions

我公司的另一位开发人员使用以下命名空间创建了一个新类库:

MyCompany.Repositories.Users

根据我多年来的经验,我希望这个命名空间被命名为:

MyCompany.Repository.User

您通常为命名空间使用哪种样式?我在想我的风格有点标准。它对我来说看起来更干净。你能提供任何推荐命名空间命名约定的权威网址吗?

rav*_*agw 7

有趣的问题。对于 C#,除了“在适当的地方使用复数”之外,我从未见过任何建议。

让我们假设命名空间是 MyCompany.Repositories

借用Java 世界中提出的类似问题,我建议复数是有效的。生活中的组件,他们是所有存储库(命名空间将是在这个意义上均匀UserRepositoryStudentRepositoryLocationRepository,等)。

相反,像MyCompany.ReportingEngine这样的命名空间作为单一命名的命名空间是有效的,因为该命名空间可能包含执行非常不同的事情的异构类(即查询生成器类、报告模型、字段模型、过滤模型)。MyCompany.ReportingEngines建议这个命名空间包含不同类型的类报告引擎。