新しいblogに移行しました

新ブログ "All Yout Bugs Are Belong To Ass" に移行しました!

2009-12-24

[Perl]せっかくだから、俺はこのData::Modelを選ぶぜ!

ちょうど、「オレオレなO/Rマッパーを作るべきか。諦めてDBICの軍門に降るべきか・・・」などとボヤいていた矢先、yappoさんのエントリ http://blog.yappo.jp/yappo/archives/000703.html を読んで、試してみました。
もともとCDBIもDBICも肌に合わなくて、DBIx::SimpleというモジュールをMouseで拡張したりして使っていたんですが(そのせいで若干O/Rマッパーアレルギー気味だった)、今やすっかりData::Model厨となりつつあります。

何が良かったのか。完全に一人称視点で列挙してみます。

・テーブルごとにSchemaクラスを分けなくてよい。
CDBIもDBICもテーブルごとにクラス分けをするのが前提のようですが、そもそもそこまでする必要の無いことが殆どです。
Data::Model::SchemaはDSL的な記述でSchemaを定義できます。
そもそもCDBIもDBICもSchemaの定義がちっともエレガントとは思えない。オイラがこれまでO/Rマッパーを毛嫌いしていたのは、この辺に原因があります。

・Memcachedドライバがある。
今ブームのKVSをデータドライバとして扱えます。
Cache::Mamcached::Fastを食わせれば、"Memcached"もさることながら"Tokyo Tyrant"にだってデータを格納できるわけです。

・Q4Mドライバがある。
まだオイラはQ4M自体を本格的に触っていないものの、他のO/Rマッパーではおそらくサポートしていないであろうと思われる機能です。
これによって透過的にQ4Mを利用できるものと思われます。

どうでもいいけど、

>そんな手垢のついたものばっかり使ってるから君は世界三位の位置にいつまでたってもつけないんだよ。

と言っても、ちっとも嫌味に聞こえないのがすげえ。

0 件のコメント: