0

除了拥有具有一百个成员的类的非典型原因(例如,访问一百个对象的 DAO 模式)之外,最好的方法是什么:只有一个具有所有成员的类,或者每个具有一个成员的数百个部分类?

每个成员的一个部分类看起来不错,因为它有助于构建插入和删除成员的自动化解决方案,只需创建或删除文件(类)。

.Net 中的 C# 或其他内容是否限制了部分类的数量?假设在运行时这两种选择是相同的,那么设计时或编译时的其他性能或资源消耗呢?

详细示例:具有数百个需要从 DaoFactory(DAO 模式)访问的对象的数据库通常对数据库中的每个对象都有一个成员。我们不是在讨论这背后的业务,为什么这个系统有以及它是如何工作的,但我们有一个情况,所有对象都需要通过 DaoFactory “暴露”。当然,多个 DaoFactories 对对象进行分组可以最小化其大小(成员数量),但前提是划分考虑了它们之间所有可能的关系,因此将所有可能的数据库事务组合在它们之间进行分组。

所以,假设我们不能分割这个 DaoFactory,我们有一个有数百个成员的类,部分类是我要求的替代方案,有一种工具可以维护它,只需为每个成员创建或删除部分类.

4

2 回答 2

5

这不是部分类的用途。当您不想接触主类中的代码时,应该使用部分类。一个很好的例子是 EF 生成的代码。

或者,当几个开发人员想要在同一个大类上工作时。他们每个人都将课程的一部分发展为部分课程。

但是,您不会仅仅因为班级很大就将班级划分为部分班级。

于 2013-08-16T20:03:40.820 回答
0

一个有一百个很可能不相关的成员的班级有什么意义。

如果您要生成代码,看起来您可能会促进自动化解决方案的构建......进行数据访问,创建一个或多个抽象类,可能(可能,实际上)实现通用功能的泛型必需的。

让您的代码生成器构造合适的具体实例。

这种方法也适用于手动构建。

于 2013-08-16T20:08:54.433 回答