速度比较-解释语言中的程序与OO

时间:2020-03-05 18:37:56  来源:igfitidea点击:

在诸如PHP和JavaScript之类的解释型编程语言中,采用面向对象方法而不是过程方法的后果是什么?

具体来说,我正在寻找的是创建Web应用程序以及在过程式和面向对象的方法之间进行选择时要考虑的事项清单,以不仅优化速度,而且优化可维护性。如果我们知道任何进一步探讨该问题的文章,那么引用的研究和测试案例也将有所帮助。

底线:使用解释型语言的OO与过程比较时,性能真正受到了多大的影响(如果有的话)?

解决方案

回答

底线:否,因为解释的开销超过了方法分派的开销。

回答

也许我疯了,但是担心在这种情况下使用解释性语言的速度就像试图弄清楚油漆棚的颜色一样。甚至不要让我们想到这种优化完全为时过早。

当我们说"可维护性"时,我们就打在了头上。我会选择最有生产力和最可维护的方法。如果以后需要速度,它就不会来自解释语言内部的过程式编程和面向对象的编码范例之间的切换。

回答

如果我们使用的是解释语言,则两者之间的差异是无关紧要的。如果性能存在问题,则不应使用解释性语言。两者的性能大致相同。

回答

实际上,我在自己维护的网站上用python做过这样的小型测试,发现它们的速度几乎相等,过程方法赢得了大约千分之一秒,但是OO代码是如此重要清洁工我没有继续练习不超过一次迭代。

因此,实际上,这并不重要(无论如何,以我的经验)。

回答

表现将取决于执行方式,而不是语言。我们可以使用最慢的语言,并且只要我们将其设计为可扩展的,它就可以扩展为世界上最大的网站。

只要记住优化的第一条规则即可。

别。

:)