【发布时间】:2010-10-08 00:38:35
【问题描述】:
我陷入了一个奇怪的设计问题,
我正在研究两种类型的配置文件模型,
- 用户个人资料(属于用户)
- 作为“机器人”在现场维护的其他人(不属于任何人)
这两种 Profile 的典型 OO 行为是相同的,但只有重要的属性/属性是共同的(非常重要的 5-6 个),其他属性如“兴趣等”(几乎 10-15 个属性)没有机器人配置文件
早先从事此工作的编码人员为机器人配置文件/用户配置文件创建了单独的模型/控制器,这在任何地方都会产生大量冗余,并且正如预期的那样难以维护、编写测试等。我想把它干掉,至少可以解决部分/全部这些冗余问题。
有人建议将单表继承作为解决方案
有人建议改用多态关联。
什么是更好的方法。我们什么时候真正使用 STI?
我自己的想法是,当模型的属性相同且行为不同时,最好使用 STI。
想想我能做什么?
【问题讨论】: