0

在我的网站项目中,现在使用 python 或 scala 存在冲突。反对 scala 的一个论点是它的编译时间很慢,而 Python 甚至不编译。根据这个问题给出的答案, 为什么 IntelliJ IDEA 编译 Scala 这么慢?

所以我的问题是关于一个网站,更重要的是要考虑什么。一种语言的编译时间慢或一种语言的执行速度慢。scala的慢编译时间是一个影响因素吗?Scala 的 AFAIK 编译代码将比解释的 python 代码运行得更快。

注意 - 语言无法扩展但架构和代码可以扩展是正确的,但使用运行速度快的语言不会有任何坏处。

4

2 回答 2

3

使用编译语言,您只需编译一次。即使在 python 中,也只有在源发生更改时才会生成字节码。我想这与 Scala 相同。寻找哪种语言运行得更快是一种愚蠢的努力,因为它“只是另一场语言战争”。与其寻找速度,不如关注框架、易于开发、运行和维护成本以及语言的整体“友好性”。

于 2011-08-29T11:10:06.767 回答
1

除非您期望 debug-fix-deploy 周期成为默认状态,并且您的应用程序如此庞大且耦合度如此之高,以至于即使在进行简单更改后您也必须重新编译数十个文件,否则构建和预热时间不应该是对于 Web 应用程序来说确实是一个问题。那些经常在网上停留数周甚至数月。一些虚拟机(著名的 HotSpot)将其用于长时间运行应用程序的模式(包括显着更长的启动/预热时间,但允许生成更好的机器代码)称为“服务器”模式是有原因的。

但是正如您自己指出的那样,这并不意味着您必须使用编译语言。以最适合发展的方式发展。万一您应该获得足够的流量以影响底层平台的性能(Twitter 不得不用 Scala 代码替换他们的 Ruby 代码以提高性能,但请注意,它已经运行多年了),无论如何您都可以负担得起重写;)

于 2011-08-29T11:19:09.600 回答