Scala适合初级程序员?

Tra*_*din 11 scala

我们正在考虑将Scala用于我们公司内的新项目.我们有一些只有PHP知识的初级程序员,我们怀疑他们可以处理Scala.你有什么看法?有人说:"斯卡拉是一个复杂的野兽!",有人说:"一旦你得到它就很容易." 也许有人有真实的经历?

Apo*_*isp 18

"我的同事不会理解斯卡拉"同时夸大其难度并侮辱你的同事.

  • Scala并不那么难.它只是另一种编程语言.初级程序员与Scala一起遇到的任何麻烦都会或多或少地与其他任何语言一样.

  • 你的同事很聪明.当然,我不知道他们,但这是一个非常安全的赌注,除非你的公司是雇佣愚蠢的人的组织,在这种情况下,你有更大的问题.

也就是说,在我的公司,我们有一些用Scala开发的核心产品,我们没有发现人们比Java更麻烦.代码通常更清晰简洁,更易于概括和重用等.


Nil*_*idt 14

我猜Scala可以用作"初学者"语言.即使背后有棘手的想法,你也不必在开始时使用/解释它们.如果你用Scala解释纯OO,我会说这是直截了当且容易理解的.由于Scala减少了其他语言的大量代码开销,因此使用Scala学习概念甚至比使用Java/C++更容易.

我认为Scala作为初学者语言的一个主要缺点是缺乏文档.不要弄错,官方的Scala文档非常好,而且可用的少量书籍对于获取语言的细节非常有用,但这些并不是为初学者编写的.例如在Java中,你会发现数百本书名为"用Java学习OO",你不会发现Scala可能是一个显示阻止者.

正如Hannes所提到的,只在研究项目中引入新的语言,而不是生产甚至是旗舰项目.如果你有一些青少年,这会使情况更好,采取一些内部工具,你总是想要和需要,让他们在研究项目中创建它.这也是尝试不同开发过程的好机会.如果Scala可以用作初学者语言,那么你的大三学生很可能会受到挑战并且会提供一个好的原型和非常好的证据.

  • *Scala*编程绝对是为初学者编写的.此外,您使用Java学习的大多数内容都可以直接应用于Scala.实际上,您可以以或多或少完全相同的方式使用所有您喜欢的Java库. (2认同)

Don*_*zie 7

我相信大多数人转向Scala都是经验丰富且热情的编码员.我建议你先与高级程序员一起获得Scala项目的内部经验,然后再制定指导初级程序员的策略.我还建议你只涉及那些渴望加入的人.


Han*_*ger 1

我最初的想法是 Scala 对他们来说太重了,但后来我想因为 Scala 是一个 OO/Imperitave/Functional 混合体,可以向他们介绍 scala 的 OO/Imperative 部分,直到他们感到舒服为止,但话又说回来,他们可能会在 Scala 中有不好的 PHP 习惯,因为 scala 作者大多更喜欢函数式风格而不是命令式风格。

所以,它可以工作,但我会为一个研究项目这样做,而不是为了一个旗舰项目。

编辑:也许还应该这么说:像 Scala 这样的函数式/面向对象混合体似乎变得越来越流行,特别是因为函数式语言如何处理并行处理,而不是我们在 Java 等语言中所了解的并行处理方式。芯片中的核心数量正在迅速增加,因此这一点很重要。然而,提到 PHP,您似乎正在开发线程不太重要的 Web 服务器脚本。PHP 甚至没有线程。

这提出了另一点。您想开发 Scala Web 应用程序,即Lift吗?如果是这样,那么您的学习曲线也会加倍,这一点也应该考虑在内。