DAOとO/Rマッピング、そしてオン・ザ・エッジ
DAO
最近、研究であるシステムを開発しているのですが、ビジネスロジック層とデータアクセス層の間の橋渡しをするDAO(Data Access Object)をPHPで組んでみることにしました。そう決心したのはWEB+DB PRESS vol.28でDAOが紹介されており、試してみたくなったからです。その記事ではJavaを対象にして書かれていますが、考え方はPHPにも十分応用できます。
実感としてはDAOはかなり良い感じです。プロトタイプシステムや小〜中規模システムで威力を発揮しそうです。最初からすべてを今流行のO/Rマッピングツールに頼って実装するのもありですが、まずはDAOから導入で十分な感じがします。それに、段階を踏んで実践する方が勉強になりますし。
O/Rマッピング
それで、今日はSixApartの宮川さんの「PerlStyle」第2回「PerlでEntity Bean !」(WEB+DB PRESS vol.8)を読みました。この記事はもう4回くらい読み直しています。(笑
この記事が載っている雑誌は2002年5月に発行されたようで、もう3年以上も前なんですね。しかし、3年以上昔でも立派なO/Rマッピングツールがあったのです。それはClass::DBIです。記事を読んでいても、かなり簡単にO/Rマッピングが実現されているのが読み取れます。
一方、PHPで有名なO/Rマッピングツール、DB_DataObjectはいまいちな印象を受けます。あくまで最近の雑誌で読んだ印象ですが。実際のところ、Class::DBIのようにスカッとO/Rマッピングしてくれるのでしょうか。DAOの勉強がひと段落したら、また自分で確かめてみようと思います。