Devel::Bayside このページをアンテナに追加 RSSフィード

2007-05-11

Catalyst-Plugin-CRUD (1)

|  Catalyst-Plugin-CRUD (1)を含むブックマーク

これから数回にわけて Catalyst::Plugin::CRUD の紹介をしていきたいと思います。

概要

Catalyst::Plugin::CRUDCatalyst ベースフレームワーク(もどき)です。データベースを使ってデータを「新規作成・詳細参照・更新・削除・一覧参照」するアプリケーションを劇的な速さで作成することができます。CRUD は create, read, update, delete の略です。弊社の社内で使っているフレームワークのよいところを抜き出し、悪いところを改善させたオープンソースフレームワークで、私がメンテナンスしています。

弊社のフレームワークのよいところは

弊社のフレームワークから改善させたところは

結果として本当に必要なビジネスロジック部分だけに注力すればすむようになりました。

現在はこのフレームワークを使って段々大きなアプリケーションを作っている最中で、大きなアプリケーションを組むときに足りない機能を随時足していく、ボトムアップ開発をしています。

TODO

クラス

Catalyst::Plugin::CRUD は以下のような構成になっています。

注目してほしいのは、Catalyst::Plugin::CRUD::CDBICatalyst::Plugin::CRUD::DBIC 以外は継承ではなく、委譲を使っている点です。委譲を使うことで、使用するメモリー量を劇的に減らし、起動時間を劇的に短くします。コントローラが数個しかないときは何の問題もないのですが、エンタープライズアプリケーションコントローラが200個くらいに増えると劇的に違いが出てきます。