1

我已经开始在我们的开发框架中使用方面进行参数验证。它工作得很好,而且我喜欢不用验证代码乱扔公共方法的前半部分。

我想知道是否有人对您将在命名空间结构中放置参数验证的位置有任何建议?我的一部分认为,既然它是顶级功能,它应该在顶级产品命名空间中——很像 System 在 .NET Framework 中的使用方式。我只是担心核心程序集会随着更多这样的功能而膨胀,因为它会进一步发展。

就目前而言,我将它们放在以下位置:

[公司].[产品].ParameterValidators

在此示例中,ParameterValidators 是包含该功能的类(方面)的名称。

除此之外,如果有人对将方面合并到现有代码库中与结构布局相关的进一步建议,我将不胜感激。

4

1 回答 1

1

现在您正在考虑使用技术标准进行分区,即“将所有验证器放在一个命名空间中,因为它们是验证器”。这没有考虑验证器存在的原因。

我的建议是按功能分区:

  1. 通用验证器(例如 nullity 和范围检查)进入通用命名空间。

  2. 更具体的验证器(例如 CustomerValidators)进入更具体的命名空间。

一般的想法是,您没有 1 个包含所有可能的验证器的类,您有几个类(在不同的命名空间中),每个类都声明出于特定原因的验证。

于 2008-12-01T19:20:57.543 回答