Scala太复杂了吗?

最近,关于Scala是否“过于复杂”,存在一些争论。

一位博客作者最近认为 ,“复杂的”误解来自于面向对象的程序员和功能性程序员的不同心态。 对于熟悉面向对象语言的开发人员来说,像Scala这样的功能语言不可避免地会感到与众不同且令人困惑。

他还写道,从面向对象的编程转变为功能样式的必要转变实际上并不像看起来那样令人生畏:“在Java中,当进行并发编程时,我们使用不可变对象。 我们使用匿名内部类来模拟lambda和闭包。 我们使用迭代器和谓词来模拟列表推导。 我们认识到这些和其他功能概念,但是以回旋方式实现它们,因为Java语言没有直接支持它们。” 如果您是Java程序员,那么也许您已经在以一种实用的方式进行思考,但是并未意识到这一点。 他认为Scala绝不复杂,对于Java开发人员来说是一种有用的新语言,可以使他们过渡到函数式编程,而无需牺牲其面向对象的技能,甚至无需离开JVM平台。

马丁·奥德斯基(Martin Odersky)也为斯卡拉(Scala)辩护 。 他承认,Scala的某些部分可能很复杂-他称某些核心库为“极其复杂的软件”-但就用户体验而言,Scala“非常易于使用”。

有证据表明,Scala在教育环境中被用作年轻程序员的跳板。 基于Kojo桌面的软件应用程序就是一个很好的例子:它针对儿童,并且基于Scala。 Kojo旨在通过创建计算机艺术和动画以及探索几何和代数来帮助年轻人掌握编程基础知识。

奥德斯基还认为,斯卡拉所谓的复杂性实际上只是选择的自由。 尽管Scala的概念有限,但这些概念非常笼统且正交,可以通过多种方式组合。 通过提供得出相同结论的多种途径,可以产生复杂性的错觉。 奥德斯基还声称,Scala的简洁性可以增加复杂性的概念,因为Scala的每一行都要做更多的工作“您可能会说,比更冗长的语言更难于理解。”

当前的Scala版本是2.8。


翻译自: https://jaxenter.com/is-scala-too-complex-102132.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值