A Life Less Ordinary

Webエンジニアのポエム

Play Framework勉強会 in Fukuoka

JavaのWebフレームワーク、Playの勉強会に行ってきたので備忘録。
何か間違ってたらご指摘下さい。


フルスタックのフレームワークです


JavaのwebフレームワークはStrutsSeasarぐらいしか知らなくて、Playはtwitter上で見かけるぐらいだった。
Railsを知っている自分としての感想は、限りなくRailsチックなフレームワーク



ノンブロッキングI/O

JBoss

Scalaにも対応


とのことだけど、Scalaをよく知らないからなぁ。マルチパラダイム言語らしいけど、Javaの環境"でも"動く言語という認識でいいんだろか。


環境構築


Macにおける構築は以下の通り。
Javaは入ってる想定。

http://www.playframework.org/
から最新ソースDL。

解凍し、フォルダをPATHに通す。

export PATH=${PATH}:{playへのPATH}
play new アプリ名

でRailsみたいにアプリが生成される。

play run

でアプリが起動する。


eclipseと高い親和性

play eclipsify

で、eclipseを使っての構築に最適化される。


Model生成


Modelの定義は、modelパッケージ内にクラスを作る。
Railsと違ってmigrateファイルが無く、使用するカラムを一つ一つ宣言する。
バリデーションはアノテーションを使って設定する。


ControllerとView


Controller内で使用した変数をViewで使用する場合は、render関数に突っ込む。

render(hoge, moge, boke);

で、View内で、3つの変数が使える。
Viewでの式言語は Groovy。


DB


Railsと違うのは、単に動かすのであれば、Railsでいう db:create とか db:migrate が要らない。
これは、設定でHSQLDBを使用できるから。




メモ書きとしてはこんなものでしょうか。
全体の感想としては、Railsだなぁ、と。
他言語も簡単にいけるしね。
テストケースも書けるしね。


あとは、やっぱRailsよりは早いのかな?
Apache連携はどうやるんだろうか?
has_manyとかhabtmとかどう書くんだろう?
プラグインは豊富なのかな?

などが調べたいところ。