Scala不是为基础程序猿、初级程序猿准备的编程语言,因为它确实不容易掌握。
Scala追求一种优雅,并试图高效解决、多途径解决问题,所以,单从语法角度,复杂度大大增加了。
相对于Scala,我觉得Java就显得简单了(语法),但是Scala比Java高级,很多的方法都是现成的,不需要像Java那样,要从基础写起。
这看起来是个矛盾,高级,但又复杂?是的,高级是说它包含了很多高级方法,复杂是因为它有很多Java程序员不习惯的语法糖,和古怪实现(相对于你没见过而言,习惯了就一点都不古怪了),比如,“:::”这个是个方法,实现列表叠加功能,你估计从所未见。
但Scala仍是很诱人的,我总结的Scala优势如下,足以吸引我:

  1. 高级;
  2. 函数式结合面向对象;
  3. 静态语言,但结合动态语言流行的语法特质,实现优雅;
  4. 好的并行库;
  5. 跟Java的亲属关系,借助于Java社区厚实的技术力量;
  6. 性能好。

enter image description here