あばばばばCatalyst

やっべ、放置しすぎ。最近Perlあんまり触ってなかったから滞ってました。


とりあえず今の課題を従来のASP+VB以外でやっていいという許可をセンセからいただいたのでレッツCatalyst、と行って見たいかと。


もはや「いまさら知ってるよ!」的な備忘録を。環境はとりあえずWindowsで。

インストール

パス。(ぇ
とりあえずcharsbarさんとこのtcoolのリポジトリ

ppm rep add tcool http://ppm.tcool.org/server/ppmserver.cgi?urn:PPMServer

してppm install Task::Catalystでなんとかなるはずです。足りなかったらあとで継ぎ足そう。

ヘルパーでスケルトンを作る

便利なヘルパースクリプト群。
雛形を作ってくれるってすばらしい。あぁすばらしい。
シンプルなBBSでも作ってみようと思います。catalystコマンドで

Z:\>catalyst TestBBS
#以下ズラーっと何か作ってる

-shortを加えるとModel/View/Controllerのモジュール名をM/V/Cにしてくれるみたいです。TestBBS::Model::LogがTestBBS::M::Logの様になるみたいです。でも今回は長いほうで行こう。
-forceを加えるとスケルトンの古いヘルパースクリプトを上書きしてくれるみたいです。

わーいできたー

アプリケーションできたよ!
というのは冗談でとりあえず何か出来たら動かしたくなるもの&ヘルパーの凄さを確認するため。
scriptディレクトリに移動してperl testbbs_server.plです。
Z:\
おー動いたー(棒読

-rと加えるとモジュールを書き換えたときに勝手にリロードしてくれるみたいです。たとえば

#lib/TestBBS/Controller/Root.pm
sub default : Private {
    my ( $self, $c ) = @_;

    # Hello World
    $c->response->body( "foobar" );
}

なんて適当に変えてみても

File(s) "Z:\TestBBS\lib\TestBBS\Controller\Root.pm" modified, restarting

なんて出て勝手にrestartしてくれます。すげー。


とりあえずスケルトン作成までを。新しい機能いっぱいついててオレ進化してねー&Catalyst進化早すぎーと思った。