Webでオブジェクト指向プログラミング (442レス)
上下前次1-新
317(1): 2007/02/14(水)02:12 ID:??? AAS
PHPでは、結局、カプセル化、抽象化できる部分をクラスにして、
手続き型の部分から呼び出す方法に落ち着いた
MVCでいうと
Mをクラスで、Cを手続き型で、Vをテンプレートエンジンでやるというのが
わかりやすくてよいと思った。
ポリモーフィズムって、PHPで実現するのが面倒だと思うけど、どう?
318: 2007/02/19(月)01:18 ID:??? AAS
djangoでいうMVTだな。
319(1): 2007/02/19(月)01:29 ID:??? AAS
>>314
>継承による拡張ばかり取り上げていて、カプセル化とか多態性の
>ことはあまり取り上げられてなかった希ガス。
そもそも4はメンバメソッド全てがパブリックなんで、
カプセル化の概念自体皆無。
説明しようにも、カプセル化の機能自体が無いので不可能。
320(1): 2007/02/19(月)03:34 ID:??? AAS
>>319
言いたいことはわかるけど、概念自体皆無とか不可能ってのは言い過ぎじゃね?
そもそもオブジェクト指向ってオブジェクト単位で独立した存在にするだろ。
だから、カプセル化=独立 であって カプセル化=隠蔽 ではないと思う。
PEARもPrivateメソッドやフィールドは先頭にアンダーバー(_)をつけるなど、
コーディング規約で決めてるわけだし。
もちろん、規約であって言語仕様じゃないから、
簡単にアクセスできて崩壊してしまうがの。
321(1): 2007/02/19(月)03:48 ID:??? AAS
カキコ後に読み直して
> カプセル化=隠蔽 ではない
は言い過ぎだったかな。
オブジェクトを独立させる為にカプセル化を行う。
隠蔽はカプセル化を厳密に行う手段(手法)ってことでどぉ。
322(1): 2007/02/20(火)05:29 ID:??? AAS
>>320
そんな規約定めてるPEAR自身、アンダーバーがついてるプライベートであるはずのメンバに
パブリックアクセスしてる件について
323: 2007/02/20(火)05:34 ID:??? AAS
>>321
4の解説書なんだから、コーディング規約のことまでいちいち面倒見る必要無いだろ。
概念として説明してもかえって紛らわしいだけ。
だからPHP5が生まれたわけで。
324(1): 2007/02/20(火)15:42 ID:??? AAS
>>317
PHPのような型無し言語はポリモーフィズムだらけです。
325: 2007/02/20(火)19:43 ID:??? AAS
>>324
型なしといわずに「動的型」といってあげて
326: 2007/02/20(火)21:40 ID:??? AAS
おk。次から挑戦してみる。
327(1): 2007/02/20(火)22:14 ID:??? AAS
それぞれの型クラス作ればいいんじゃね?
328: 2007/02/20(火)22:33 ID:??? AAS
と言いますと?
329: 2007/02/21(水)01:59 ID:??? AAS
>>327
それおもしろそうだな。
symfonyのsfMixer使ってやれば、
意外とそれなりにつかえるもんになりそう。
まぁ、ぐちゃぐちゃになりそうな気もしなくも無いけど…
330: 2007/02/21(水)02:19 ID:??? AAS
type hintingでstringとかintも使えるようにすりゃいいのにな
そんなに難しくもなさそうだし
331: 2007/02/21(水)02:53 ID:??? AAS
phpのtype hintingはでstringとかintも使えるようにって話は時々話題になるけど、もし導入するとしたら、
function hoge(string s) {・・・
っていう定義の関数をhoge(12);で呼び出した場合、エラーにすべき?例外投げるべき?暗黙的にキャストすべき?
332: 2007/02/21(水)05:54 ID:??? AAS
わざわざtype hintingに記述する=厳格な型を要求してる
と考えられるから
事前にstringにキャストされてたらok
int等ならfatal errorじゃない?
333: 2007/02/21(水)18:05 ID:??? AAS
オブジェクト指向よくわからんから
とりあえずpearのDB呼んでみる。
334(1): 2007/02/23(金)02:23 ID:??? AAS
>>322
stringとintの違いを意識しなくてもコードを書けるのが、ほとんど唯一のPHPの利点なのに・・・
335: 2007/03/09(金)05:51 ID:??? AAS
>>334
PHPの利点すくな!
336: 2007/03/26(月)00:50 ID:yFIZR+Qo(1/2) AAS
例えば掲示板投稿処理で
入力処理
画像処理
ログ処理
表示処理
とかにクラスが分かれている場合、それぞれでオブジェクトを作成するの?
337: 2007/03/26(月)02:17 ID:??? AAS
ま、まぁそうしたければそうすればいいんじゃない?
338: 2007/03/26(月)17:48 ID:yFIZR+Qo(2/2) AAS
なにその突き放したレス
339: 2007/03/27(火)11:03 ID:??? AAS
ままぁ、そうしたければそうすればいいんじゃない?
340: 2007/03/27(火)11:09 ID:??? AAS
ままままぁ、そそうしたければね
341: 2007/03/28(水)04:38 ID:??? AAS
オブジェクト指向っていうものは聞いて覚えるもんじゃない。
体で感じるんだ。
342: 2007/03/28(水)22:47 ID:??? AAS
2ch型掲示板を作る時はオブジェクト指向でやったなあ
343(3): 2007/04/23(月)00:54 ID:+2ZNQJB1(1/2) AAS
「PHPによるデザインパターン入門」を始めてみた。
いきなりTemplate Method ではまった。
本の通りに打ち込んでるのに、クライアント呼んでも
画面が空白のままだ。
試しにクライアントの中で文字列出力をしてみると、
スクリプトの先頭では出力できるけど、require_once
以降ではechoしても出力できない。
var_dumpでnewしたオブジェクトを表示させようとしても
空白だ。
何だこの現象は。
344: 2007/04/23(月)00:55 ID:+2ZNQJB1(2/2) AAS
ちなみに、読むだけなら5章まで進んでるけど、オブジェクト指向を
軽いノリで始めるにはPHP5は結構いい感じに思えた。
345(1): 2007/04/23(月)11:54 ID:??? AAS
>>343
エラーメッセージは表示される設定になってるのか?
ダウンロードしたソースを実行してるのか
自分で打ち込んで実行してるのか?
346: 2007/04/23(月)16:31 ID:LAYu+KhN(1) AAS
出来るならワンタッチで、しかも「情報起業」に特化した
ホームページ作成ソフトがあったらいいのに・・・。
もし、プロ並みにキレイなホームページが作成が出来たとしたら、
情報商材で一旗あげようと思っているあなたの人生は変りますか?
【早くも成功者続出!】起業サイトビルダー
外部リンク[php]:www.infotop.jp
上下前次1-新書関写板覧索設栞歴
あと 96 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.007s