Factory Mehtod
应用场景解释
- 根据不同情况, 需要让后续逻辑使用到某个 Interface 下的不同变种(子类)
- 当前应用类, 对具体是哪个变种没有兴趣, 只要满足 Interface 即可
- 有少量的这种变种类,多的话可以演化为抽象工程模式
应用步骤重点
- 将应用类中获取变种实例的地方变为抽象方法, 应用类本身变为抽象类
+createBtn() IBtn
- 生成对应的 应用实现类, 实现createBtn, 返回对应的变种实例
- 在使用应用类实例的地方, 根据实际参数, 选择实例化具体的 某个应用实现类
简单使用的时候, 偷懒对应用类不做变化, 单纯当返回不同变种实例的逻辑封装在 createBtn(). 降低一些复杂度, 减少继承关系