【待望】PerlユーザのためのPHP入門 (601レス)
1-

96: 03/03/02 23:31 ID:??? AAS
見づらいんだよ。でした。すまん。
俺は「俺様」じゃないです。
97
(4): 03/03/03 04:20 ID:??? AAS
普通に見てる人もいるんで、煽ってるやつらマジでどっかいって。
98
(4): 03/03/03 08:39 ID:??? AAS
>>97
普通にウザがってる人もいるんで自分のサイトでやるように説得してください。
99: 俺様 03/03/03 10:08 ID:gt/b6+qo(1/11) AAS
煽りでもレスが付かないよりは大歓迎だ!
>>98
需要も少しはあるようだからまあ、多めに見てもいいじゃないか。
WebProg板ってスレ保持数に比べて活性化しているスレ数が非常に少ないから
他のスレがdat落ちして困るとかも無いしな。ウザかったら見なければ(・∀・)イイ!
2chブラウザ使ってこのスレごとあぼーんだ。
100: 俺様 03/03/03 10:33 ID:gt/b6+qo(2/11) AAS
今日はオブジェクト指向について書いておこう。
PHPもPerlもJavaやC++に代表されるオブジェクト指向言語である。

Perlのオブジェクト指向についてあまり知らないんですが、
Javaに比べるとPHPのオブジェクト指向に関する仕様は
             ショボイ!!!!
今年中に出る予定のPHP5で大幅に機能がアップするらしいので
それに期待しましょう。
101: 俺様 03/03/03 10:48 ID:gt/b6+qo(3/11) AAS
まず、誰でも最初に疑問に思うのが
オブジェクト指向を用いるメリットは何か?
ということだ。

再利用ができる?
そんなのオブジェクト指向じゃなくてもしてるじゃないか。
我々はprintという出力命令を何度も利用している。
printの命令が内部でどういう仕組みになっているか調べたことのある人は極少数だろう。
102
(1): 俺様 03/03/03 11:12 ID:gt/b6+qo(4/11) AAS
まあ、オブジェクト指向をうまく使えば
再利用『しやすく』はなるだろう。

まず、カプセル化(データ隠蔽)というものがある。
人間というオブジェクトの例で考えてみよう。
人間は体重というデータを持っているが
我々は外見から見ただけでは体重を正確には知れない。
例えば、彼に『体重計に乗れ』ってメッセージを送れば
正確な体重を得ることが出来る。
同様に体重に『直接』アクセスして値を変えることは出来ない。
彼に『〜を食べろ』ってメッセージを送れば
省5
103: 俺様 03/03/03 11:35 ID:gt/b6+qo(5/11) AAS
再利用のためのもう一つの便利な機能は『継承』だろう。
既存のクラスのフィールド(データ)やメソッド(機能)を引き継いで、
その上で既存の機能を修正したり新たに追加したりできるようになる。
まあ、言い方を変えれば『継ぎはぎ』みたいなものだ。

PHPでは多重継承が存在しない。
つまり、あるクラスに対して1つの親クラスからしか
フィールドやメソッドを引き継げないということだ。
同じく多重継承が禁じられているJavaではこのようなことがしたければ
interfaceで代替が可能だが、
PHPではその代替案すら用意されていない。
省3
104: 俺様 03/03/03 12:07 ID:gt/b6+qo(6/11) AAS
1つぐらいサンプルを書いてみよう。
因みに、このように変数に日本語使っても大丈夫だ。
(普段はお奨めしない。)

<?php
class 人{ //クラス名
var $体重; //フィールド
function 人($値){ //コンストラクタ(初期化)
$this->体重=$値; //値をフィールドへ代入
}
function 体重計に乗る(){ return $this->体重;} //体重を出力するメソッド
省9
105: 俺様 03/03/03 12:10 ID:gt/b6+qo(7/11) AAS
クラス内で自分自身のフィールドにアクセスするのにも
$this->体重
このように$thisとかいうものが必要なのだ。
(Javaの場合は省略可能)
これは長いコードを書こうとするとわかるが面倒すぎ。
106
(1): 俺様 03/03/03 12:16 ID:gt/b6+qo(8/11) AAS
ここで>>102で指摘した問題が起きる。
<?php
class 人{
var $体重;
function 人($値){
$this->体重=$値;
}
function 体重計に乗る(){ return $this->体重;}
function 食べる($量){ $this->体重+=$量;}
}
省8
107: 俺様 03/03/03 12:26 ID:gt/b6+qo(9/11) AAS
コンストラクタと言うのは結構便利なんだがな。
<?php
class 人
{
var $体重;
function 人($値){
if($値<0) print "( ´,_ゝ`)プ";
else $this->体重=$値;
}
}
省6
108: 俺様 03/03/03 12:30 ID:gt/b6+qo(10/11) AAS
というわけで長くなったが
PHPのオブジェクト指向は
現在の仕様では大したことがないということで
積極的に使う必要は無いだろう。
機能をグループ化したい人とか、
『何となくかっこいいことしたい人とか』
(ただし、使い方を誤ると逆にかっこ悪くなる)
にはしても損は無い程度だろうか。

いずれにしてもPHP5に期待。
109: 俺様 03/03/03 12:33 ID:gt/b6+qo(11/11) AAS
否定的なことばかり書いてたが
最近の本とか見るとメリットしか書いてなくて
オブジェクト指向マンセーになる奴が多すぎる気がするから
敢えて逆行して書いただけで、
メリットをもっと強調するのなら実際は
そこまでひどいわけでもないがな。
110: 03/03/03 23:34 ID:??? AAS
98 名前:nobodyさん 投稿日:2003/03/03(月) 08:39 ID:???
>>97
普通にウザがってる人もいるんで自分のサイトでやるように説得してください。

99 名前:俺様 投稿日:2003/03/03(月) 10:08 ID:gt/b6+qo
煽りでもレスが付かないよりは大歓迎だ!
>>98
需要も少しはあるようだからまあ、多めに見てもいいじゃないか。
WebProg板ってスレ保持数に比べて活性化しているスレ数が非常に少ないから
他のスレがdat落ちして困るとかも無いしな。ウザかったら見なければ(・∀・)イイ!
省11
111: 03/03/03 23:34 ID:??? AAS
98 名前:nobodyさん 投稿日:2003/03/03(月) 08:39 ID:???
>>97
普通にウザがってる人もいるんで自分のサイトでやるように説得してください。

99 名前:俺様 投稿日:2003/03/03(月) 10:08 ID:gt/b6+qo
煽りでもレスが付かないよりは大歓迎だ!
>>98
需要も少しはあるようだからまあ、多めに見てもいいじゃないか。
WebProg板ってスレ保持数に比べて活性化しているスレ数が非常に少ないから
他のスレがdat落ちして困るとかも無いしな。ウザかったら見なければ(・∀・)イイ!
省12
112: 03/03/03 23:34 ID:??? AAS
98 名前:nobodyさん 投稿日:2003/03/03(月) 08:39 ID:???
>>97
普通にウザがってる人もいるんで自分のサイトでやるように説得してください。

99 名前:俺様 投稿日:2003/03/03(月) 10:08 ID:gt/b6+qo
煽りでもレスが付かないよりは大歓迎だ!
>>98
需要も少しはあるようだからまあ、多めに見てもいいじゃないか。
WebProg板ってスレ保持数に比べて活性化しているスレ数が非常に少ないから
他のスレがdat落ちして困るとかも無いしな。ウザかったら見なければ(・∀・)イイ!
省12
113
(2): 03/03/04 02:34 ID:??? AAS
あんまり資源無駄に使ってるとアク禁食らっちゃうよー
114
(2): 03/03/04 05:05 ID:??? AAS
このスレすごく良いです。頑張ってください。
115
(1): 03/03/04 07:56 ID:6TNNfPas(1) AAS
>>113
同意。>>1は反省しる。

>>114
自作自演晒しage
1-
あと 486 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.010s