scala

スゴいと噂のsparkを動かしてみる

やりたいこと sparkとかいう分散処理系の何かがスゴいらしいので、とりあえず動かしてみたい sparkって何ができるの?? 一言「分散処理」 ただ、分散処理でも、Hadoopと違って、ストレージに保存せずにon memoryで分散処理を実行できる いちいちストレージ…

sbtでプロジェクト管理をする話

やりたいこと scalaのプロジェクトを管理したい。 (なんだかよくわからないけど、みんながsbtを使っているので、自分も使ってみたい。) やってみたこと sbtのインストール macなら、 brew install sbt まあ、公式マニュアルの通りなんですけどね。 sbtで管…

scalaでmapを連結する方法

やりたいこと mutable.Mapが複数あるとして、このMapを連結してしまいたい。 PythonでいうところのUpdateメソッドを利用したい。 書き方 ++=メソッドを利用する。 val Map1 = mutable.Map\[String, Int]() val Map2 = mutable.Map\[String, Int]() Map1 += (…

scalaの命名規則

あるとき、ふと「そういえば、scalaの命名規則ってどうなっているんだろう?」と思ったので、調べてみた。 すると、割りと簡単に見つかった。「キャメルケースを使いなさい」とのことだ。 原文をここからもってくると、 Scalaは「キャメルケース」命名規約を…

scalaのクラスを別ファイルに分離

やりたいこと コードを別ファイルに分離したい。 pythonでいうところの、モジュール化を行ないたい。 どうやって解決するか クラスをパッケージ内に定義して、別ファイルに分離する。 別ファイルに定義したクラスの書き方 package パッケージ名 class クラス…

メソッドパラメータの型指定でHigher Kinded Typesを使う

やりたいこと メソッドのパラメタで、Mapを使いたい。 で、Mapのキー(または値)の型を明示的にしておきたくない。 いくつかの種類の型をキー(または値に持てるようにしておきたい) 解決法 Higher Kinded Typesを使う。 日本語にすると、「高階型変数」と…