[PHP-users 22933]Re: クラスのメンバ変数の定義
Fujiwara, Takashi
tks @ vesta.dti.ne.jp
2004年 8月 2日 (月) 22:08:54 JST
こんばんは、ふじわらです。
どれをメンバ変数にするべきかどうかという問題は
悩んでもなかなか答えがでないとおもいます。
自分もOOPを勉強し始めたときにそこでつまずきました。
私からのアドバイス
「取り敢えずどれでもいいから採用してしまいましょう」
はじめからスマートなクラス設計なんてできるはずがないし、
そもそもセオリーなんてありません。
このような問題はやりながら失敗して覚えていくしか
ないような気がしています。
あとでそのクラスを使ってみてこうした方が便利だった〜
と思ったときにコードを変更していけばよいと思います。
泥臭い作業ですがそれが一番の近道だと思っています。
頭より先に手をうごかしましょう。
----- Original Message -----
From: <hogehoge77 @ excite.co.jp>
To: <php-users @ php.gr.jp>
Sent: Monday, August 02, 2004 4:21 PM
Subject: [PHP-users 22926]Re: クラスのメンバ変数の定義
> 吉村です。
> yoshiさん、ご教授頂き、ありがとうございました。
> $this->hogehoge をメンバ変数とみなしていたわけですか。
> 試しに以下のように変えてみたところ、$valueが外れました。
>
> function printPulldown()
> {
> $this->printSelect();
>
> foreach ($this->array as $key => $value) {
> print "<option value=\"$key\"";
> if ($this->selected) {
> if ($key == $this->selected) {
> print " selected";
> }
> }
> print ">$value</option>\n"; /* ここは渡す配列でコントロールするだ
けなので、別メソッドにするはやめました。
> }
> print "</select>\n";
> }
>
> メンバ変数って、こんな単純な取り決め(上記コメント部分)でコロコロ変わってし
まっていいのでしょうか。。。
> (きっと駄目なんだろうなあ。)
> よく理解できていないようですね。。。
>
> ちなみに以下のようにしてもメンバ変数は一緒ですよね。
> どれがいけてて、どれがいけてないのかが良く分かっていないです。。。
>
> function printPulldown()
> {
> $this->printSelect();
>
> foreach ($this->array as $key => $value) {
> print "<option value=\"$key\"";
> if ($this->selected) {
> if ($key == $this->selected) {
> print " selected";
> }
> }
> print ">";
> $this->printValue($value);
> print "</option>\n";
> }
> print "</select>\n";
> }
>
> function printSelect()
> {
> print "<select name=\"$this->name\">\n";
> }
>
> function printSelect($value)
> {
> print "$value";
> }
>
> ・・・もっと色々文献などをあさって勉強します。
> _______________________________________________
> PHP-users mailing list PHP-users @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3
>
PHP-users メーリングリストの案内