代码之家  ›  专栏  ›  技术社区  ›  ffxsam

与函数继承(工厂函数)相比,伪经典继承有哪些技术优势?

  •  6
  • ffxsam  · 技术社区  · 6 年前

    备选标题:“为什么这么多流行的JavaScript库使用伪经典继承而不是函数继承(工厂函数)?”

    建议使用工厂函数,以便获得方法和属性的真正隐私。这是有道理的,所以我想知道为什么这么多现代JS库仍然使用psuedoClassic继承(使用 new

    编辑:这是

    编辑2:我可以看到伪经典的几个优点:

    1. 当你 console.log
    2. 在相关注释中,您可以使用 instanceof
    1 回复  |  直到 5 年前
        1
  •  0
  •   Jordan Brooklyn    6 年前

    让我们把重点放在你的例子上。我不认为工厂的功能是必要的,虽然他们可以首选的原因,你说。例如,您可以使用“显示模块”模式,将信息与新信息一起隐藏。

    http://jargon.js.org/_glossary/REVEALING_MODULE_PATTERN.md

    我认为这其实只是一种模式的偏好,而不是另一种模式,在这种情况下,显示模式与工厂。很可能人们的信息是孤立的,不同的理论在不同的地方占主导地位。你只是抓住了辩论的一部分,并想知道为什么每个人都不做X而不是Y,他们主要是想满足类似的担忧。

    在静态类型语言中,由于强类型化,依赖性变得更受关注,您会发现大量避免使用新的方法。你也会从函数式编程、过程式编程和面向对象编程中得到不同的答案。我认为javascript的一个有趣的方面是它吸引了各种语言背景的人。