【问题标题】:Factory Method Pattern vs inheritance工厂方法模式与继承
【发布时间】:2020-10-25 05:28:48
【问题描述】:

使用这种模式有什么意义? 考虑到这篇文章简直是毫无意义:https://refactoring.guru/design-patterns/factory-method

为什么不使用简单继承? 这是一个小比较: https://codesandbox.io/s/factory-method-pattern-vs-good-old-inheritance-opovv?file=/src/inheritance.ts

【问题讨论】:

  • 继承在心跳中从简单到复杂。用图表解释的网站根本对我没有帮助。并不是说它们不好,但有时在代码中查看示例会有所帮助。一个很好的阅读原则是“优先组合而不是继承”。这有点过时了,但这里有一篇工厂模式博文:scotthannen.org/blog/2016/02/23/abstract-factory-pattern.html

标签: oop inheritance design-patterns factory


【解决方案1】:

没有人与其他人对抗;工厂方法通过继承使用多态性将对象创建推迟到子类。

不要将模式混淆为大于其组成部分。模式只是软件设计常见用例的名称,因为任何重要的东西都值得命名。

【讨论】:

  • 有对。方法“A 类扩展 B”也使用“多态性,通过继承,将对象创建推迟到子类”。
  • 不,你只是糊涂了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-19
  • 2020-11-22
  • 1970-01-01
相关资源
最近更新 更多