Play 2.0の特徴について簡単に紹介します。Play 1.xからの変更点は多数あるのですが、主に下記のような特徴があります。それぞれを簡単に解説しましょう。
最近のWebアプリケーションでは、リアルタイムデータの並行処理を統合するようになってきており、フレームワークには非同期HTTPプログラミングモデルをサポートすることが求められています。
Play 2.0は並列度が高いシステムを実現するため、Actorベースモデルで、JavaとScala両方から使用可能な「Akka」をサポートしています。
静的言語を用いると、コンパイラがコードをチェックするので、実行前にエラーを発見できます。これは規模が大きいプロジェクトでも非常に有用だと思います。
Play 2.0では、コードのほとんどをコンパイル時にチェックさせる考え方を推し進めています。そのため、ViewでScalaベースのテンプレートエンジンが採用されました(Play 1.xでは、テンプレートシステムは式言語として「Groovy」を使用)。
詳細は、記事「Java開発者がScalaでPlay frameworkのビューを作るには」を参照してください。こちらの記事ではJavaベースで解説しています。併せて参照してみてください。
Play 1.xのときから、Play用モジュールを用いればScalaを使用して開発が可能でした。しかし、モジュールとしてScalaのサポートを行う形式では完全な統合が難しかったようです。そのため、Scalaのサポートをモジュール形式からPlay 2.0のコアへ移行してネイティブサポートするようにAPIも再設計されました。
Play 1.xでは、ビルドやデプロイなどのタスクすべてをPythonによるスクリプトで実現していましたが、これらのスクリプトは、完全な機能を持っているビルドシステムでなく、カスタマイズも容易ではありませんでした。
このため、Play独自の規約をサポートでき、JavaとScalaのプロジェクトをビルドできるだけの柔軟性を持ったツール、「sbt(Simple Build Tool)」を統合しました。Play用プロジェクトはsbtプロジェクトになるので、カスタマイズも可能ですし、いままでどおりnewやrunなどのPlay用コマンドも使えます(参考:始めるsbt)。
Play 2.0では特定のデータストア用ドライバやORM、データベースアクセス用ライブラリなど、特にフレームワークに統合することなく、簡単に利用できるようにしています。
ただ、フルスタックフレームワークという性質を保ち、特殊な要件を必要としないユーザーが一般的なRDBへアクセスするために、Ebean/JPA/AnormといったデフォルトのRDB用ツールをバンドルしています。
以上がPlay 1.xからの主な変更点です。これら変更点についての詳細は公式ドキュメントの「Play 2.0 の紹介」にあるので、ご確認ください。
Play 2.0をインストールしてみましょう。
Play 2.0の実行には、JDK 6以降が必要です。まだインストールされていない方は、記事「EclipseでScalaプログラミングを始めるための基礎知識」を参考にしてJDKをインストールしてください。
インストールが完了して環境変数PATHへ追加したら、コンソールでjavaおよびjavacコマンドを確認してみましょう。
% java -version java version "1.6.0_35" ・・・ % javac -version javac 1.6.0_5
次にPlay 2.0をインストールします。2012年9月30日記事執筆時での最新版、2.0.3をダウンロードサイトからダウンロードします。ダウンロードしたzipファイルを解凍し、こちらも環境変数PATHへ追加しておきましょう。
Macを使用している場合、上記の方法でもインストールできますが、Homebrew(Mac用のパッケージ管理システム)を使用すると、もっと簡単にPlay 2.0をインストールできます。
公式ページにある通りにHomebrewをインストールしたら、下記コマンドを入力してPlay 2.0をインストールしましょう。
% brew update % brew install play
環境変数PATHに追加したら、正しくインストールされているか確認してみましょう。コンソールで「play help」と入力してみてください。下記のような結果になればインストールは成功です。
%play help _ _ _ __ | | __ _ _ _| | | '_ \| |/ _' | || |_| | __/|_|\____|\__ (_) |_| |__/ play! 2.0.3, http://www.playframework.org Welcome to Play 2.0! These commands are available: ----------------------------- license Display licensing informations. new [directory] Create a new Play application in the specified directory. You can also browse the complete documentation at http://www.playframework.org.
インストールの詳細は「Play 2.0 のインストール」を参照してみてください。
Play 2.0ではテキストエディタがあれば開発は可能ですが、本連載ではEclipseを使用してPlay 2.0の開発を行っていきます。そのための準備として、Eclipse 3.7と「Scala IDE for Eclipse」をインストールしましょう。
これらのインストールについては、記事「EclipseでScalaプログラミングを始めるための基礎知識」を参考にしてみてください。
Copyright © ITmedia, Inc. All Rights Reserved.