标签: design-patterns
哪种设计模式或模式组合是正确的或最适合以下常见情况:
假设我有一个下订单的方法。我有不同的订单类型和不同的国家。该方法的实施因订单类型和国家而异。
我的想法是使用策略模式,我可以拥有OrderType1Country1Strategy,OrderType1Country2Strategy,OrderType2Country1Strategy等对象。
我的问题是,任何两个类都有公共代码,我不知道如何最好地处理。 对于那种或替代模式的任何想法?可以用某种方式使用装饰器吗?
答案 0 :(得分:1)
您可能需要查看Bridge设计模式,该模式提供了一种避免(子)类数量激增的方法。
基本上,您可以分离订单和国家/地区类的层次结构,并通过桥梁组合这两个。