人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPのクラスを公開しているサイトを探しています。

PHPでデータクラスとでもいうのでしょうか、そういうものって無いのでしょうか?
C言語でいうところのMFCやSTLのようなものです。

例えばURLの文字列を保持するクラスだったら、メンバー変数はURLの文字列だけ。
メンバー関数はGetter/SetterのほかにURLの文字列をドメイン部とディレクトリ部を分ける便利関数 etcを実装

他にはユーザー情報を保持するクラス。メンバー変数には氏名、生年月日、住所、電話番号、メールアドレスを実装
メンバー関数はGetter/Setterのほかに生年月日から年齢を算出する便利関数を実装。

このようなものは、Web開発をしていればいくらでも利用する機会がありそうなのですが、あまり見当たりません。
皆さんはどうしているのでしょうか? その都度要件にあわせて作成しているのでしょうか?

●質問者: mstkwb
●カテゴリ:インターネット ウェブ制作
✍キーワード:C言語 ETC mfc PHP STL
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● goog20090901
●27ポイント

>その都度要件にあわせて作成しているのでしょうか?

だいたいそうです。ただし仕様書から半自動作成をしています

>他にはユーザー情報を保持するクラス。メンバー変数には氏名、生年月日、住所、電話番号、メールアドレスを実装

>メンバー関数はGetter/Setterのほかに生年月日から年齢を算出する便利関数を実装。

上記もそうですが、なんらかのフレームワークを採用すると、データ保持クラスのようなものが実装しやすい

仕組みになってます。

http://q.hatena.ne.jp/answer

◎質問者からの返答

ありがとうございます。

仕様書から半自動生成なんてこともできるのですね。


2 ● chokobo
●27ポイント ベストアンサー

(1)個別のライブラリや拡張関数などをさがして使う

例:http://www.best-php-scripts.com/library_classes.htm

(2)PHPのPEARを使う

例:http://pear.php.net/manual/ja/

(3)フレームワークを使う

例:http://handsout.jp/slide/1011

この組み合わせですね。最近なら(3)をベースに(2)や(1)をケースに応じて

使うというかんじでしょうか。例に挙げられているURLの解析、分解や

データモデルの操作は上の(3)のスライドで紹介されている各フレームワーク(FW)

は形は違えども実装してます(というかそれをやるのが目的ですから)。

一度、(3)にあるFWのうちどれか、たとえばコードが軽いCodeIgniterとか

(紹介はされてませんが)CodeIgniter派生のKohana(http://www.kohanaphp.com/)

などをダウンロードして実感されるのがいいかと思います。

◎質問者からの返答

スライドの冒頭で「素のPHPコードが恥ずかしい」とあり、恥ずかしくなりました(笑

CakePHP/CodeIgniterあたりから試してみたいと思います。


3 ● ワテ
●26ポイント

>PHPのクラスを公開しているサイトを探しています。

両方とも英語サイトですが・・・

【Hotscript】

http://www.hotscripts.com/

【PHP classes】

http://www.phpclasses.org/

>皆さんはどうしているのでしょうか?

開発の規模などにもよりますが、

フレームワークを利用する場合は、フレームワークに任せてます。

ただ、フレームワークを利用できない場合や利用しない場合などは、

上記のURLを探して、微妙な部分を改変して使ってます。

どうしてもない場合は、よく利用しそうなものは、

設定をかえるだけで使いまわせるように汎用性を考慮して独自で作ってます。

◎質問者からの返答

ありがとうございます。

やはりフレームワーク以外では公開されているものの流用か自作になりますね。


4 ● RON
●10ポイント

もともと、PHPはオブジェクト指向というよりも、「素早く動的WEBサイトを作る」というところからスタートしました。Get/PostなどについてはPerlより洗練された方法を実現しています。

ちょっと便利なライブラリーということで、Pearプロジェクトが始まりました。しかし、これは必要なものだけとはいかないんですね。巨大な関数群といったほうがいいかも知れません。おっしゃる会員認証などに耐えられなかったり、中途半端な面もあります。

そうはいってもわかりやすい言語ですから、もっと大規模な開発に耐えられるようにとMVCモデルを実装した多くのフレームワークがあります。私はCakeしかよく知らないのですが、URL分解などはやってくれます。命名ルールが大事ですけどね。

http://cakephp.jp/

最近、コメントされてるようにこんなフレームワークがホットだしぃ

http://codeigniter.com/

フレームワークの習得は、いろいろあることと、バカにならない時間と手間が必要ですから、みんなに広まるかというと疑問に思ってます。おそらく開発現場で協力会社を使うとなると、あきらめることになるかも知れません。

本格的なオブジェクト指向はPHP5からといってもいいと思います。ですから豊富なクラスとはまだいかないようです。これからではないでしょうか。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ