为了账号安全,请及时绑定邮箱和手机立即绑定

去斯卡拉去!主要区别是什么?

去斯卡拉去!主要区别是什么?

Go
慕码人2483693 2021-04-08 18:14:48
我刚刚发现此网页比较了一些用Scala,C#和Go编写的代码。我很惊讶地看到Scala和Go代码看起来多么接近,比起Scala代码和C#代码而言,要多得多。所以我的问题是:Scala和Go之间最显着的区别是什么?
查看完整描述

3 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

我不这么认为,至少在概念上它们是非常不同的。Go比C#更像C ++并且面向“低级”,C#仅具有一些功能,而Scala允许您编写典型的“功能”代码(比OCaml或Haskell更冗长,但类似)。Scala的类型系统相当复杂,但是仍然基于类似Java / C#的基础。另一方面,Go的面向对象部分看起来完全不同。我没有尝试过Go,因为我发现它太像C了,太底层了。作为Java程序员,我知道C#在技术上处于领先地位,并且Java中缺少许多不错的功能。在学习Scala时,它扩大了我的视野,为我提供了功能代码的优势和功能,而又没有失去面向对象世界的好处。


查看完整回答
反对 回复 2021-04-26
?
慕桂英546537

TA贡献1848条经验 获得超10个赞

坦白地说,Scala代码以极其命令式的风格编写。我不是功能纯粹主义者,但是将该页面的Eratosthenes筛子代码与在Scaladoc的Stream类开头的更短,更易读的Eratosthenes筛子示例进行对比。该页面的代码到处都有大量的vars和while循环,更不用说bitshift了。现在,我不知道关于什么是惯用的Scala代码有多少共识,但这绝对是遥不可及的。因此,除了Scala和Go都是C的后代之外,它没有说其他任何有关Scala和Go的相似之处。


查看完整回答
反对 回复 2021-04-26
  • 3 回答
  • 0 关注
  • 244 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信