Scalaの開発環境をサクッと作る


近年の関数型言語への注目に従い、実務案件でScalaを使う現場も増えてきています。

ChatWorkが開発言語をPHPからScalaに移行したブログ記事が話題になっていましたね。

今回は、Scalaを「自分のPCでとにかく動かせて試せる」ようにするまでの手順をまとめてみました。

新しい言語にチャレンジする場合に、「最初から完璧な環境を作る!」ことよりも「とにかく早く環境が作れて、色々試せる!」ことのほうが重要です。

プランA:Scalaのバージョンは常に最新で良い場合

brew installで突っ込んでしまうのが楽です。

brew install scala

これで最新のバージョンのScalaがインストールされます。

scalaコマンドを叩いて、REPLが起動すればインストール成功です。

scala #REPLを起動

Welcome to Scala version 2.11.7 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_65).
Type in expressions to have them evaluated.
Type :help for more information.

scala> println("Hello,Scala!")
Hello,Scala!

scala> 

ちなみに、REPLの終了は:quitコマンドで終了です。

scala> :quit

pythonとかのREPLに慣れていて、quit()やquitやexitで抜けようとしても抜けられませんので気をつけましょう。

プランB:状況に応じてScalaのバージョンを切り替えられるようにする場合

brewでScalaを直接インストールするのではなく、Scalaのバージョンを管理するscalaenvをまずインストールします。

brew install scalaenv

scalaenvのインストールが終了したら、メッセージの通り、.bash_profileの末尾に以下を追記してコンソールを再起動します。

eval "$(scalaenv init -)"

scalaenvを使って、scalaのインストールできるバージョンを探します。

scalaenv install -l #インストールできるScalaのバージョンをすべて表示

例えば、2.11.7をインストールしてみます。

scalaenv install scala-2.11.7

インストールが完了したら、scala-2.11.7を標準として使う旨のコマンドを叩きます。

scalaenv global scala-2.11.7

コマンドを入力したら、ターミナルを再起動し、REPLを起動してみます。

scala #REPLを起動

Welcome to Scala version 2.11.7 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_65).
Type in expressions to have them evaluated.
Type :help for more information.

scala> println("Hello,Scala!")
Hello,Scala!

scala> 

Scalaを仕事で使う場合は2の手順を踏んだほうが後々のことを考えると安全です。(おそらく、その後sbtのインストールとIDEのインストールをすることになるでしょう。)

しかし、「ちょっと触ってみたい…」場合ならば1の手順でサクッと入れてしまうのも一手です。

環境構築に時間を掛けすぎてモチベーションを下げるのは本末転倒です。

最後に、Scalaに関して非常に参考になった記事を紹介しておきます。(「Scala」でgoogle検索をすると公式サイトを超えて一位になっています!)

http://postd.cc/5-years-of-scala-and-counting-debunking-some-myths-about-the-language-and-its-environment/