scala

Apache HttpClientのソースをScalaで書き換えてみる

社内でやっているScala勉強会で、テストがあるJavaの実装をScalaで書き換えてみようということになり、Apache HttpClientのソースをScalaで書き換えることになりました。 作業の流れは以下のとおりです。 対象とするソースを全員でひとつ選ぶ そのソースのフ…

Slickのドライバーを定義ファイルで指定する方法

Playで開発をしていて、テストや開発の序盤はとりあえずH2を使って、本番ではMySQLを使う場合、Slickのドライバーをimport scala.slick.driver.H2Driverのように直接指定してしまうと、後々すべてのモデルのソースを変更していかなければいけなくて、なんか…

【Scala】classとobject

Scalaのclassとobjectの違いだが、classはいわゆるJavaでいうところのクラスと同じ。 ただ、Scalaのクラスではstaticな変数やメソッドを定義することが出来ない。 その代わりに、object(シングルトン)を使う。 class Scalaのクラス定義 class Foo {} // イ…

【Scala】関数定義・関数リテラル

関数定義 Scalaで関数を定義する際の構文はいろいろ省略とか出来てしまうので、一度ちゃんと押さえておく。 構文 def 関数名(変数名:型): 戻り値の型 = {} 例 /** * 基本的な書き方 */ def add1(x: Int, y: Int): Int = {x + y} /** 戻り値の型は省略できる …