Loading...

Scalaハンズオンセミナー(Play FrameworkでCRUDアプリを作る)

Scalaハンズオンセミナーを1/13(金)に開催します。お気軽にご参加ください!

Scalaとは

Scalaは2001年にスイス・ローザンヌにあるスイス連邦工科大学 (EPFL) のマーティン・オーダスキー教授によって設計されたプログラミング言語です。 ScalaはJavaプラットフォーム(Java仮想マシン)上で動作し、既存のJavaのプログラムと容易に連携させることができるプログラム言語です。

特徴

  • 開発生産性を高める簡潔な表記が可能
  • Javaの豊富なライブラリがそのまま使える
  • 全てがオブジェクトとして扱われるオブジェクト指向言語
  • 静的型付けを行う関数型言語
  • 型推論があり
  • 関数型プログラミングができる

JavaとScalaの関係

Scala はプリコンパイラであり、Scala で記述されたソースコードはコンパイルされて Java の class ファイルになります。 つまり、Scala 内から自由に Java のクラスを使うことができます。 また、Java のコードからも自由に(いくつかの制限はありますが) Scala のクラスを呼び出すことができます。

活用事例

様々なIT系企業でScalaを利用してサービスを展開しています。

ビズリーチ、ヌーラボ(実戦での Scala 〜 6つの事例から知る Scala の勘所) はてな(はてなにおけるScala活用事例) ドワンゴ(ドワンゴでのScala活用事例「ニコニコandroid」

それではScalaの環境構築していきましょう。

環境構築(Macの方)

Macでハンズオンを参加される方の環境構築方法です。 (Windowsは下に記載しています。)

Javaインストール(Mac)

本ハンズオンにはJava8のインストールが必要です。 下記よりJDKをダウンロードしてください。

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

ダウンロードしたpkgをダブルクリックしてインストールしてください。

Scalaインストール(Mac)

下記リンクよりscalaをダウンロードしてください。

http://www.scala-lang.org/download/

ターミナルを開いて下記のコマンドを実行してください。

cd ~/Documents/

curlでscalaをダウンロードします。

curl -O http://downloads.lightbend.com/scala/2.11.8/scala-2.11.8.tgz

tgzファイルを解凍します。

tar xzf scala-2.11.8.tgz

scala-2.11.8のフォルダを/usr/local/src/scalaに移動します。

sudo mv scala-2.11.8 /usr/local/scala

.bash_profilePATHSCALA_HOMEを追加します。viで編集してください。

vi ~/.bash_profile

.bash_profileをviで開いたら下記を追加してください。 追加したらesc キーを押して :wq を入力して閉じてください。

.bash_profile

# scala
export PATH=$PATH:/usr/local/scala/bin
export SCALA_HOME=/usr/local/scala

.bash_profileの設定内容を反映させるには下記を実行します。

source ~/.bash_profile

下記のコマンドを実行してscalaのパスが出力されたらインストール完了です。

which scala
/usr/local/scala/bin/scala // <- パスが出力されればインストール完了

Typesafe Activatorインストール(Mac)

Play Frameworkを利用するためにはTypeface Activatorをインストールする必要があります。 ターミナルを開いて下記コマンドを実行してインストールしてください。

ターミナルで実行

cd ~/Documents/

curlでscalaをダウンロードします。

ターミナルで実行

curl -O https://downloads.typesafe.com/typesafe-activator/1.3.10/typesafe-activator-1.3.10-minimal.zip

tgzファイルを解凍します。

ターミナルで実行

unzip typesafe-activator-1.3.10-minimal.zip

scala-2.11.8のフォルダを/usr/local/src/scalaに移動します。

ターミナルで実行

sudo mv activator-1.3.10-minimal /usr/local/activator

.bash_profilePATHSCALA_HOMEを追加します。viで編集してください。

ターミナルで実行

vi ~/.bash_profile

.bash_profileをviで開いたら下記を追加してください。 追加したらesc キーを押して :wq を入力して閉じてください。

.bash_profile

# play framework
export PATH=$PATH:/usr/local/activator/bin

.bash_profileの設定内容を反映させるには下記を実行します。

source ~/.bash_profile

下記のコマンドを実行してscalaのパスが出力されたらインストール完了です。

which activator
/usr/local/activator/bin/activator <- パスが出力されればインストール完了

activatorを実行します。activator helpを実行してください。

ターミナルで実行

activator help

初期設定としてactivatorは様々なものをダウンロードします。少々待ちましょう。

これで環境構築(Macの方)は完了です。

環境構築(Windowsの方)

Windowsでハンズオンを参加される方の環境構築方法です。

Javaインストール(Windows)

下記よりJDK8をダウンロードします。

exeファイルがダウンロードされたらダブルクリックして通常通りインストールしてください。

Scalaインストール(Windows)

下記リンクよりscalaをダウンロードしてください。

http://www.scala-lang.org/download/

システム環境変数の追加(Windows)

スタートメニューの検索窓でシステム環境と入力して出て来るシステム環境変数の編集を選択してください。

環境変数ボタンをクリックします。

新規ボタンをクリックします。

変数名をPATH、変数値をC:\Program Files (x86)\scala\binにします。

コマンドプロンプトを開いてscala -versionを入力して下図のようにscalaのバージョン情報が表示されれば正常にインストールされています。 ※ バージョン情報が表示されない場合はPATHの設定が間違っている可能性がありますので確認してください。

Typesafe Activatorインストール(Windows)

Play Frameworkを利用するためにはTypeface Activatorをインストールする必要があります。 下記のURLよりTypeface Activatorをダウンロードしてください。

https://www.playframework.com/download

下記画面のOffline Distributionをクリックしてダウンロードしてください。

任意の場所に移動してください。(今回はドキュメントフォルダに移動する事にします。)

移動したら、activator-dist-x.x.xxフォルダのbinフォルダに移動してアドレスバーからパスをコピーします。

それを先程Scalaインストール時と同様の手順でPATHの環境変数に先程コピーしたパスを追加してください。

コマンドプロンプトを開いてactivator helpを実行して下図のようにヘルプ情報が表示されればインストール完了です。

これで環境構築(Windowsの方)は完了です。

IntelliJ IDEA(無償版)インストール(Mac、Windows共通)

Scala言語のインストールが完了したら、開発環境として InteliJ IDEA(Community) をインストールします。 ※InteliJ IDEA(Community)は無料でお使いいただけます。

下記リンクをクリックしてInteliJ IDEA(Community)をダウンロードします。 ※ 環境に合わせ(Mac or Windows)ダウンロードしてください。

https://www.jetbrains.com/idea/download/

IntelliJ IDEAの初期設定

Preferencesを開きます。MacとWindowsでPreferencesの開き方が異なりますので注意してください。

Macの場合のPreferencesの開き方

インストールが完了したら、起動させ画面右上のメニューからPreferences..をクリックします。

Windowsの場合のPreferencesの開き方

Windowsの方はFile -> Other Setting -> Default Settingsを選んでください。

Pluginsを選択し、Browse Repositories...のボタンをクリックします。

検索窓にscalaを入力し、下図のようにGoのプラグインを選択してInstallボタンをクリックします。

インストールできたら再起動しましょう。

これでIntelliJ IDEAの初期設定は完了です。

ScalaでHello World

最初にScalaのプログラムが動くかの確認としてHello Worldを出力しましょう。 ターミナルからscalaコマンドを実行するとScalaプログラムを実行できます。 plintln("Hello World!!")と入力してください。

scala
scala> println("Hello World!!")
Hello World!!

Play Frameworkプロジェクトの動作確認

Play Frameworkも動作確認としてプロジェクトを作成しておきましょう。 ターミナル(Mac)、コマンドプロンプト(Windows)を開いて下記コマンドを実行してください。

activator new hello-play play-scala

下図のようなメッセージが表示されればPlay Frameworkプロジェクトは作成されています。

<Mac>

<Windows>

プロジェクトが作成できたらPlay Frameworkプロジェクトを実行してみましょう。 プロジェクトフォルダに移動してactivator runコマンドを実行してみてください。

ターミナル(Mac)、コマンドプロンプト(Windows)で実行

cd hello-play
activator run

下記のように表示されれば9000ポートでplay frameworkのアプリケーションが動作しています。 ※ 初回はこの処理は時間がかかりますので待ちましょう。

[info] Loading project definition from /Users/imagepit/Dropbox/DEV/scala/play-scala-crud/project
[info] Updating {file:/Users/imagepit/Dropbox/DEV/scala/play-scala-crud/project/}play-scala-crud-build...
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[info] Done updating.
[info] Set current project to play-scala-4 (in build file:/Users/imagepit/Dropbox/DEV/scala/play-scala-crud/)
[info] Updating {file:/Users/imagepit/Dropbox/DEV/scala/play-scala-crud/}root...
[info] Resolving jline#jline;2.12.1 ...
[info] Done updating.

--- (Running the application, auto-reloading is enabled) ---

[info] p.c.s.NettyServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

(Server started, use Ctrl+D to stop and go back to the console...)

処理が完了したらブラウザで下記にアクセスしてみてください。

http://localhost:9000

下記の画面表示されればPlayFrameworkのプロジェクトが起動しています。

それではScalaの基本をおさえてからCRUDアプリを作っていきましょう!

すべての閲覧にはイベント参加・会員登録が必要です

すべてのコンテンツはセミナー開催後に掲載されます。
また、すべてをご覧になるには会員登録が必要です。



情報戦略テクノロジー