- ベストアンサー
CPANを使うことによるオーバーヘッドはありますか?
PHP版のCPANであるPEARは、PHPスクリプトの固まりなので、データベース抽象化ライブラリ(PEAR::DB)などを利用するとオーバーヘッドが発生してしまいます。そのためPHP5のPDOが期待されている訳なのですが。。。 CPANも結局オーバーヘッドが発生してしまうものなのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> CPANも結局オーバーヘッドが発生してしまうものなのでしょうか? 一般論としては、そうであるとも言えるし、そんなことはないとも言えます。 CPAN として登録されているモジュールは、できる限り多くの場面で使えるよう、汎用性・安全性等を考慮して作られているものが多いので、特定用途向けに最適化されたモジュールに比べれば、その分オーバーヘッドは増えるかも知れません。 しかし一方、CPAN は世界中の天才プログラマーが知恵を絞って構築してきた財産なので、生半可な素人がコーディングするより、はるかにうまいやり方で作られている場合が多いので、その観点からはオーバーヘッドは(自分で作るより)少ない可能性もある、と考えられます。 私の今までの経験上は、後者のケースの方が多い(つまり、CPAN を使った方が結局は得)と言えますね。
その他の回答 (1)
- k_o_r_o_c_h_a_n
- ベストアンサー率55% (526/942)
誤解があるようですが.. CPANは、perlのリソース倉庫であって、そこで保持しているモノは 単純なモノから、高度なモノまで、様々です。 という理解もと、 >データベース抽象化ライブラリ(PEAR::DB)などを利用するとオーバーヘッドが発生してしまいます。 >CPANも結局オーバーヘッドが発生してしまうものなのでしょうか? データベースアクセスを例にとると、perlの場合、DBI/DBDがメジャーですが、 決してオーバーヘッドの大きいモノではありません。 データベースアクセスの場合、DBMS側の負担が多いので、気にならないという表現が 適切なのかも知れませんが。
お礼
ありがとうございます。だんだんわかってきました。 .pmのものはコンパイル済みのものなのかと思っていたのですが、違うみたいですね。 いろいろ試しつつ調べてみたいと思います。
お礼
回答ありがとうございました。 やはり、信頼性の高いモジュールが豊富にそろっているのがPerlの強力な利点ですね。