GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
DBIx::Skinny::Manual::JA(3) User Contributed Perl Documentation DBIx::Skinny::Manual::JA(3)

DBIx::Skinny::Manual::JA - DBIx::Skinnyの設計思想など

DBIx::Skinnyをなぜ作る事にしたのか、 また作るにあたっての設計思想など。

Please translate and read the person in the sphere in English.

PerlのORマッパーは色々あります

Class::DBI, DBIx::Class, Data::ObjectDriber, Data::Model, etc...

ここにあげたORマッパーは基本的には利用者が設定したtable構成を基にSQLを組み立ててdatabaseにクエリを投げます。

そしてその結果を各種オブジェクトにしています。

私はいままでClass::DBIやDBIx::Classを色々使ってきました。

特にDBIx::ClassはとてもパワフルなORマッパーだと思います。

DBICはパワフルが由縁にとてもヘビーなORマッパーです。

とても複雑なSQLをPerlのデータ構造を基に組み立てる事ができるようにできていますが、 複雑なSQLを組み立てる場合、複雑なPerlのデータ構造を必要とします。

もちろん、dbhを普通に触ることもできるので、任意のSQLを実行させる事もできます。 ただ、任意のSQLを実行した場合、その結果はDBIを直接さわっているのとなんら変わりがありませんでした。

inflateもしてくれない、utf8周りの処理もしてくれない。 してくれないものだから、自前でその部分の処理を行う必要があります。 それではORマッパーの存在意義が薄くなってしまうと感じました。

せっかくDBICに色々なコンポーネントを追加しても任意のSQLを実行する場合その恩恵にあずかることができないのです。

また、DBICには色々な機能があるため、処理速度も重い方だと私はおもいます。 HotSpotな部分でパフォーマンスが求められる部分にはDBICを使わずにDBIを直接使う事もしばしばありました。

Skinnyの大きな目的としては

1:生のSQLを発行した時にinflateとかutf8-flagを処理してくれる

2:update,insert,deleteはDBICというかよくあるORマッパーみたいにできる

3:簡単なselectもよくあるORマッパーみたいにできる

4:小さなオブジェクト群で構成されており、デバッグが行いやすい

です。

貧弱だったりバギーだったりするかもしれませんがどうぞよろしく:)

DBIx::Skinnyのfeedbackをしたいと思う人は #perl-casual@irc.freenode.netもしくは#dbix-skinny@irc.perl.orgまたはメールでお願いします。
2010-11-08 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.