如果我有一个Dog
模型,您可以选择它为Types
中的1个,分别为Small,Medium和Large。如果我要在其中加入逻辑,这些类型本身应该是模型吗?什么是模型设计?
答案 0 :(得分:2)
所有不同类型都有一个共同的界面,但逻辑上有所不同吗?
如果接口是相同的(即它们都具有相同的函数定义)那么我只是为每个不同类型的狗都有子类,这些类扩展了原始的Dog模型并且有一些工厂类来处理创建Dog模型并根据Dog的类型自动选择合适的类。通过使用具有Dog类型的通用接口的工厂类,应用程序的其余部分不需要关心Dog的类型,您可以通过简单地修改工厂类来自由添加/删除新类型。