命名空间经验法则

Fra*_*k V 7 namespaces organization

在将项目进一步分类到新名称空间之前,是否有一些关于有多少类,接口等应该进入给定名称空间的一般经验法则?喜欢最佳实践或社区偏好?或者这是个人偏好吗?

namespace: MyExample.Namespace
 interface1
 interface2
 interface3
 interface4
 interface5
 interface6
 interface7
 interface8
 interface9
Run Code Online (Sandbox Code Playgroud)

要么

namespace: MyExample.Namespace.Group1
 interface1
 interface2
 interface3
namespace: MyExample.Namespace.Group2
 interface4
 interface5
 interface6
namespace: MyExample.Namespace.Group3
 interface7
 interface8
 interface9
Run Code Online (Sandbox Code Playgroud)

Per*_*der 4

我没有在任何可靠来源看到任何经验法则,但在与大多数开发人员合作时,我看到了一些常见的偏好。有一些东西可以帮助您创建命名空间。

  1. 类的域
  2. 它是一个类还是一个接口(我看到一些开发人员更喜欢像 ShopApp.Model.Interfaces 这样的命名空间)。如果您的接口是某种服务或数据契约,那么效果非常好。
  3. 命名空间不要太深,3 (.) 就足够了。超过这个数量可能会变得烦人。
  4. 如果您在任何时候觉得命名空间变得不合逻辑或难以管理,请开放地重新组织命名空间。
  5. 不要仅仅为了创建名称空间而创建名称空间。