我有一个像这样的数据结构
联盟 - <轮次---<游戏--- 2名玩家
但是,当创建一个回合时,它需要知道在创建之前在GUI上选择了什么配对方法,因此它知道如何配对团队。
任何人都可以就如何实施此建议提出建议吗? 我想保持模型与GUI分离,但我不能在不知道所选配对方法的情况下创建圆形对象。 而且我不确定实现配对的最佳方式是什么。
我想过像
这样的东西interface IPairingMethod{}
public class RoundRobin:IPairingMethod{}
在Round构造函数中使用DI,但它看起来并不干净。工厂模式会有帮助吗?
答案 0 :(得分:3)
从我的角度来看,工厂方法甚至抽象工厂听起来像是解决问题的方法。如果您不想在运行时动态更改配对方法,您还可以考虑使用IoC容器。