工厂方法模式

  • 创建型模式
  • 工厂方法为了解决简单工厂扩展性的问题
  • 简单工厂要扩展的时候, 需要修改工厂内容, 这就违背了设计模式对外扩展开放, 对内修改关闭原则 所以就有了工厂方法模式.

举个栗子

  • 还是简单工厂模式的那个栗子, 我们发现简单工厂模式违背了开闭原则,那么怎么解决个问题呢请看下面

工厂方法模式流程图

92173-x95xdumtxs.png

总结

  • 为了满足闭合原则, 同时不去改动之前的代码(也就是简单工厂中的静态方法)
  • 只要是实现了接口类我们就可以随意的去扩展代码,从而避免修改之前的代码
  • 如果这样的话代码量会很多,个人觉得在工作中还是要根据实际情况来决定

完整示例代码:

Github

标签: none

添加新评论