Design-Patterns-Factory-Method

Factory Mehtod

应用场景解释

  • 根据不同情况, 需要让后续逻辑使用到某个 Interface 下的不同变种(子类)
  • 当前应用类, 对具体是哪个变种没有兴趣, 只要满足 Interface 即可
  • 有少量的这种变种类,多的话可以演化为抽象工程模式

应用步骤重点

  • 将应用类中获取变种实例的地方变为抽象方法, 应用类本身变为抽象类

    +createBtn() IBtn

  • 生成对应的 应用实现类, 实现createBtn, 返回对应的变种实例
  • 在使用应用类实例的地方, 根据实际参数, 选择实例化具体的 某个应用实现类

简单使用的时候, 偷懒对应用类不做变化, 单纯当返回不同变种实例的逻辑封装在 createBtn(). 降低一些复杂度, 减少继承关系