部分类和一百个成员

Luc*_*ano 0 c# partial-classes

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

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

C#或.Net中的某些内容是否限制了部分类的数量?那么在设计时或编译中其他人的表现或资源消耗怎么样,假设在运行时这两个选择是相同的?

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

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

ata*_*ati 5

那不是用于部分类的.当您不想触及主类中的代码时,应该使用部分类.一个很好的例子是EF生成的代码.

或者,当一些开发人员想要在同一个大班上工作时.他们每个人都将班级的一部分作为一个部分班级.

但是,你不要因为班级很大而将一个班级划分为局部班级.

  • 更不用说巨大的类是代码气味,表明可能缺乏良好的对象和违反单一责任原则.一个类有100个[public ?!]成员很可能需要重构成一堆较小,更简单的类. (3认同)