[PHP-users 31285] Re: オーバーライドでのメソッドの拡張方法

Shindo shindo @ atsystem.jp
2007年 1月 19日 (金) 13:04:58 JST


らむじぃ 様

はじめまして。進藤です。

>自分の思いこみに通りになっていないことにだだこねてるように見えますが…
そうかもしれません。
ただ、私にとっては現状に違和感があるのでお尋ねしています。
だからと言ってPHP4の仕様を変えたいとか変えようとか言っているのではありま
せん。
「PHP5でも同じ仕様ですか?」に力点があります。

>
>> >parentを呼ぶ時点で、呼び先のメソッドの内容は知っておく必要
>> >がありますよね?
>> そのメソッドの外部仕様のみ知っていれば良いのではないでしょうか。
>> クラス外からメソッドを呼び出す時に知っていれば良いことと同じで十分だと思
>> います。
>APIだけ知って、何をやってくれるものか知る必要はないということですか?
>「どういう実装か」は知る必要はありませんが、「どういう処理をするか」は知
>らなければ使うことすらできないと思いますけど?
「外部仕様」という言葉を間違って使っているのであれば、ごめんなさい。
私にとっては、そのメソッドが何をやってくれるか、その為に何を渡せばよいか、
実行後の副作用を含めての影響などが「外部仕様」です。

>
>> >スーパーマーケットの店員が独自に処理を行ないたければ、parent
>> >を呼ばずに処理を書けば良いだけです。
>> はい。そうなのですが、処理の99%が八百屋クラスと同じだとしたら、八百屋
>> クラスの店員メソッドを使いたいと思いませんか。
>八百屋に任せられるものか事前に判断してparent呼ぶか呼ばないか判断するコー
>ドにすれば良いんじゃないんですか?
八百屋の機能を100%使った上での拡張であれば判断は不要だと思っています。
実際には、同じクラス内で呼ぶ時には必ずクラス内のメソッドが呼ばれる様にし
ましたので問題は無いです。

># もう少し、オブジェクト指向とは何か勉強されては如何でしょうか。
はい。精進いたします。


_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 進藤寿則@アットシステム   _/_/
 e-mail shindo@atsystem.jp     _/



PHP-users メーリングリストの案内