我意识到这个问题并不完全是一成不变的,但一般来说,您如何知道一个对象的类型何时过多?
我目前正在支持一个我不熟悉基线的项目,但我的任务是基本上修复错误以减少我们 SPR 数据库中的项目数量。我不断遇到扩展许多不同接口(interface)的类,包括一个这样的类,它总共扩展了 12 个。许多其他扩展 7 或 8。
现在我知道依赖于接口(interface)而不是具体实现是很好的设计实践,但这是否太过分了?这是真正的代码味道和潜在的糟糕设计的迹象,还是我只是 react 过度,根据情况,一个类扩展七个、八个甚至十二个不同的接口(interface)可能是正常的?尝试通过基线查找实现十二个接口(interface)的对象的实际具体类型是很累人的。
最佳答案
为了能够证明您必须回答的代码味道(括号中的正确答案):
- 所讨论的对象是否用于实现十二个不同的目的?是的
- 这些目的是否密切相关?否
- 是否有从未使用过的对象的用途?否
- 该对象是否有很少使用的用途,可以作为更通用用途的一部分?否
- 是否存在根本不是目的而只是运行时使用的标记的目的?否
可能还有更多的问题要回答,欢迎在评论中补充。
关于c# - 多少类型对于一个对象来说太多了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6499260/