本日は Catalyst Conference #1 です
今日は仕事を早めに切り上げて参加します。
http://coderepos.org/share/wiki/CatalystCon1
以下おおざっぱなメモです。資料のリンクがあるものは資料をみたほうが早いと思います・・。
Catalyst と MVC (id:dann)
http://www.slideshare.net/techmemo/catalyst-367905/
- WAF (Web Application Framework) における MVC の関係
- Catalys::Model::* は Catalyst に依存してしまう
- MVC の M は PoPo (Plain Old Perl Object) で
- テスト性の向上
- テストの実行速度向上
- CLI (Command Line Interface), WebAPI でも使える
エンタープライズ アプリケーションアーキテクチャパターン (Object Oriented SELECTION)
- 作者: マーチン・ファウラー,長瀬嘉秀,株式会社テクノロジックアート
- 出版社/メーカー: 翔泳社
- 発売日: 2005/04/21
- メディア: 大型本
- 購入: 10人 クリック: 635回
- この商品を含むブログ (143件) を見る
- Domain Model + Service Layer がよさそう
- Service Layer はアプリケーションロジックやワークフローを書く
- Domain Model は主なロジックを書く
以下はアークテクチャ例:
- View (Catalyst)
- Controller (Catalyst)
- Plugin (Catalyst)
- Model
- PoPo Service (Service Layer)
- PoPo Model (Domain Model)
- DI コンテナ (PoPo Service と PoPo Model を結びつける)
PoPo モデルは DI コンテナのラッパーとして Plugin を用意して以下のような感じで呼ぶ。
$c->pmodel('Hoge')->hello();
Catalyst::Controller::Resouces (id:ikasam_a)
http://svn.coderepos.org/share/docs/masaki/catalystcon1/roa_and_catalyst.html
$c <3 C (id:charsbar)
http://www.tcool.org/talks/catalyst_conf1.pdf
- Catalyst::Plugin は sri の暴走なのでイマドキは使わない
- Catalyst::Component::ACCEPT_CONTEXT を使う
- Catalyst::View::TT と Catalyst::Model::CDBI は時代遅れ
- View::TT::D? が google で探しても見つからないよ・・
- あった http://search.cpan.org/~jrockway/Catalyst-View-Templated-0.02/
- Catalyst ベースだけど $c に依存しないフレームワークが最近はある
- Reaction? が google で探しても見つからないよ・・
- あった http://search.cpan.org/~mstrout/Reaction-0.001000_001/
typo しないための 10 の 方法 (id:typester)
http://coderepos.org/share/browser/docs/typester/catalystcon1
- Catalyst::Helper の活用
- 独自ヘルパー(catstarter)
- 独自ベースコントローラー
- Catalyst::Component::ACCEPT_CONTEXT を使う
- 独自アクションクラス
- emacs で yasnippet を使う
あとは忘れました。
Catalyst::Model::Adaptor (id:hidek)
http://www.slideshare.net/hidek/catalystmodeladaptor/
以下のようにして作れます。
./myapp_create.pl model foo Adaptor
PoPo なモデルを Catalyst::Model にしてくれる魔法のモジュール。
2924 (id:yappo)
http://svn.coderepos.org/share/docs/yappo/20080422-catalystcon1/catalystcon.pl
- Cisco の Catalyst から始まる(全くウケてない・・)
- HTTP::Service::Wrapper
- Catalyst::Engine から必要そうなものだけ取り出して作った
- Class::Component を使っている