日曜日, 8月 23, 2015

Scala始めます

最近仕事でどうやらSparkを使い始めることになりそう.
Sparkの調査過程で明らかになったのは,JavaでSparkのコードを書くべきでなく,scalaで書くべきだということ.(既にSparkを使われている方々にとっては当然のことだと思うが).

まず第一にコードの量が違いすぎる.JavaでのSparkコードは冗長である一方Scalaでのコードは短くエレガントだ.

問題は私自身のscala経験が無いので一から勉強である.
C++, bash, Javaそしてgroovyを主に使ってきた私にしてもscala習得はかなり歯ごたえがありそうな気がする.

以下のコードは一応私にとってhello worldのようなもの.年末までくらいに自身がどれくらいのscalaコードを書けるようになっているか楽しみである.


import scala.util.Random

object Test {
  def main(args: Array[String]) {
    val r = new Random()
    // does not work
    def l1 = r.shuffle((0 to 20).toList)
    def l2 = r.shuffle((0 until 20).toList)
    l1.foreach { it => println(it) }

    println(l1 sameElements l2)
  }
}