Perl日記

日々の知ったことのメモなどです。Perlは最近やってないです。

Mojoことはじめ

Mojoは軽量なのが特徴と聞いて、やってみた。
もしかしたら今後メインに使っていくかもしれない。
では参考サイトから。
サンプルコードによるPerl入門より。いつもお世話になっております。

gihyo.jpのMojo特集。

上のgihyo.jpで連載されていたid:charsbarさんのブログより。
Mojoを使ってみた - Charsbar::Note


ありがとうございます。
というわけでやってみた。
最初なのでMojoliciousじゃなくてMojoそのもの。
まずはインストール。

% sudo cpan
cpan[1]> install Mojo
% perl -MMojo -e 'print $Mojo::VERSION,"\n"'
0.999914

Catalystと同じように「mojo」コマンドが付属してくるので、それを使ってスケルトン作り。

% mojo generate app MyMojo::Web
  [mkdir] /................./my_mojo_web/script
  [write] /................./my_mojo_web/script/my_mojo_web
  [chmod] my_mojo_web/script/my_mojo_web 744
  [mkdir] /................./my_mojo_web/lib/MyMojo
  [write] /................./my_mojo_web/lib/MyMojo/Web.pm
  [mkdir] /................./my_mojo_web/t
  [write] /................./my_mojo_web/t/basic.t
  [mkdir] /................./my_mojo_web/log

mojo.cgiをmy_mojo_webと同ディレクトリにテスト的に作成。

% cat > mojo.cgi << \EOF
#!/usr/bin/perl
# mojo.cgi
use strict;
use warnings;
use Mojo::Server::CGI;
use lib "my_mojo_web/lib";

$ENV{MOJO_APP} = 'MyMojo::Web';

Mojo::Server::CGI->new->run;

__END__
EOF
% chmod 755 mojo.cgi

http://localhost/......./mojo.cgi」で「Hello, Mojo!」が表示される。
これは「lib/MyMojo/Web.pm」の中に'Hello, Mojo!'の文字列があるから。


やっぱりCatalystと似てるな。
後輩に、年末年始にMojo使って何か作るみたいな課題を出してるので、理解しとかないと。
今日はとりあえずここまでで。