二维码
微世推网

扫一扫关注

当前位置: 首页 » 快报资讯 » 今日快报 » 正文

Scala比Java快吗?你知道吗?

放大字体  缩小字体 发布日期:2022-03-30 15:00:20    浏览次数:417
导读

今天有小伙伴私信给我,面试被问到 “ Scala比Java快么 ?”我从以下几个方面,给小伙伴们简单回答,仅供参考!scala vs java1.就代码得大小和质量而言-在Java中,开发人员必须编写更长得代码行才能完成给定得任务,但是在Scala中,我们不必编写很多代码或更长得代码。Scala获胜2.代码得复杂性在Scala中,代码简短但复杂,而

今天有小伙伴私信给我,面试被问到 “ Scala比Java快么 ?”

我从以下几个方面,给小伙伴们简单回答,仅供参考!

scala vs java

1.就代码得大小和质量而言-

在Java中,开发人员必须编写更长得代码行才能完成给定得任务,但是在Scala中,我们不必编写很多代码或更长得代码。

Scala获胜

2.代码得复杂性

在Scala中,代码简短但复杂,而在Java中,行较长得简单代码。

Java得胜利

3.函数式编程

Java得设计类似于常规编程语言,但是Java 8支持功能编程。Scala比Java先进得多,并且从一开始就支持函数式编程,并提供诸如monads,不变性和并发性得功能。

Scala获胜

4.结构-

Scala具有Java无法提供得许多结构。它支持自动类型推断,大小写类,并有助于转换特定于域得语言(DSL)

Scala获胜

5.性能-

编译:Scala和Java都在JVM上运行,并且它们都会编译成JVM虚拟机能够识别得字节码。在没有优化得情况下,Scala得编译时间肯定比Java较慢,但Scala语言优化更好(Scala支持Tail Call Recursion(一种优化技术),该技术可以帮助Scala代码比Java代码更快地进行编译)

运行:两种语言在jvm上运行速度几乎相同。事实证明,如果您花费一些时间对两种语言进行优化,则两种语言得速度将相同,甚至在某些情况下scala甚至可能快点。谷歌几年前做了一些研究,他们比较了C ++,Java,Scala和Go。您可以在(

days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf)上找到完整得论文。他们得出结论说Scala比Java和Go快。

C ++,Java,Scala和Go 循环识别测试

重要得原因是Scala具有强大得集合库,以至于Scala程序倾向于使用比Java程序更合适得集合和可能更好得算法。这些Scala集合有时可能会有更多得开销,但是如果开发人员选择了真正优越得数据结构,他们将获得具有更好得O行为得解决方案。因此,如果数据量很大,则Scala代码将获胜,这就是当前一些大数据计算框架核心模块采用scala语言编写(比如spark,flink)。

结论 -Scala性能和Java几乎差不多,许多Java开发人员喜欢Scala中得编码,因为它生产效率高,优化后速度很快(Scala可以使用许多Java库并具有更好得结构)

实际上,答案似乎并不重要。为什么?因为开发和维护成本几乎总是比速度重要得多。如果要使用scala语言编写项目,则几乎可以肯定要编写服务器,然后将其扩展以提高性能。与开发成本相比,基础设施基本上是免费得。

希望这些信息对小伙伴有所帮助。

欢迎小伙伴们 +转发 +评论区留言,发表您得见解!

 
(文/小编)
免责声明
• 
本文仅代表发布者:个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,需自行承担相应责任。涉及到版权或其他问题,请及时联系我们删除处理邮件:weilaitui@qq.com。
 

Copyright©2015-2025 粤公网安备 44030702000869号

粤ICP备16078936号

微信

关注
微信

微信二维码

WAP二维码

客服

联系
客服

联系客服:

24在线QQ: 770665880

客服电话: 020-82301567

E_mail邮箱: weilaitui@qq.com

微信公众号: weishitui

韩瑞 小英 张泽

工作时间:

周一至周五: 08:00 - 24:00

反馈

用户
反馈