PHPでOOP (894レス)
1-

336
(4): 2008/02/12(火)04:15 ID:E8FcAvF5(1) AAS
そもそも起動したら即終了するようなPHPプログラミングにOOを使う必要性が感じられない。
337
(1): 2008/02/12(火)09:16 ID:??? AAS
ここは必要性を語るスレじゃないですよ
338: 2008/02/12(火)10:36 ID:??? AAS
>>336
なんで実行時間とOOの必要性に関連があるの?

>>337
それは了見が狭すぎでしょ。
339: 2008/02/12(火)11:35 ID:??? AAS
>>336じゃないけど、オブジェクトは状態を保存しておくものだから。
複雑なデータを持つオブジェクトを作っても、mod_phpはリクエストの度にプロセス生成・終了するわけで、そのオブジェクトも消える。
そもそもウェブアプリはユーザからのリクエストを受けて処理が発生しする構造だから、オブジェクトを永続化しておくことにあまり意味はない。
オブジェクト指向に興味があるなら、GUIのあるアプリケーションとか、ゲームとかを作ってみるとよいよ。
340: 2008/02/12(火)12:57 ID:??? AAS
永続化されていないオブジェクトには意味がほとんどないという主張ならば、どうだろうね。

Booch先生も、「永続性」に対して、「有用ではあるがオブジェクトモデルにとって
なくてはならない要素というわけではない」 って言ってるし。
(もう絶版だけど、Booch法第2版 2.2節より)
341
(2): 2008/02/12(火)13:17 ID:??? AAS
>>336だけどphpはプロセスを生成してから破棄するまでに処理を1度しか行わない関数?が多いし、
イベントが非同期で発生したりするわけでもないからOOを使うのはどうかなー?って気がする。
だいたいフローチャートで処理書けちゃうしね。

あとデータベースなりファイルなりからデータを読み込んでそれをオブジェクトの形に整形して・・・・
って処理が無駄な気がする。
実際に行う処理よりもその整形処理が長かったりするとなんか本末転倒なような。
342: 2008/02/12(火)13:23 ID:??? AAS
>>341
>あとデータベースなりファイルなりからデータを読み込んでそれをオブジェクトの形に整形して・・・・
>って処理が無駄な気がする。

なるほど、それはそうだね。
いわゆるロジック的なものがほとんどない Webアプリってのは存在するし。(っていうか大半かも)

フレームワークでもなんでも、整理してるつもりで回りくどいだけってのは多い気がする。
話に付き合ってくれて、どうもありがと。
343
(1): 2008/02/12(火)14:28 ID:??? AAS
> いわゆるロジック的なものがほとんどない Webアプリってのは存在するし。(っていうか大半かも)
どう考えても少数だろw

ロジック無しで何が作れるというんだ?w
344
(1): 2008/02/12(火)14:34 ID:??? AAS
> そもそもウェブアプリはユーザからのリクエストを受けて処理が発生しする構造だから、オブジェクトを永続化しておくことにあまり意味はない。
その理屈だと、PHPに限らず、JavaでもRubyでもオブジェクト指向は要らないということになるな。
それにアプリでも終了すると消えるわけで、結局はウェブアプリと同じ。

そもそもデータベースやファイルにデータを保存するのも
オブジェクトの保存・永続化なわけだが?

> あとデータベースなりファイルなりからデータを読み込んでそれをオブジェクトの形に整形して・・・・
> って処理が無駄な気がする。
> 実際に行う処理よりもその整形処理が長かったりするとなんか本末転倒なような。
だからフレームワーク使うんじゃん。
345
(1): 2008/02/12(火)14:42 ID:??? AAS
>>343
単純に、SQLにパラメータ設定して、実行して、検索結果をエスケープしてHTML/XMLのタグつけて
返してるだけで出来てるWebアプリって多そうだけどな。ロジックというほどのもんでもないでしょ。

>>344
ムダなのは実装時間じゃなくて、CPU時間でしょ。
フレームワークで解決する問題じゃないと思うが。
346: 2008/02/12(火)14:50 ID:??? AAS
>>345 訂正
「本末転倒」って言葉からすると、実装量なのかな。
取り消します。
347: に ◆lKs5QMUHoA 2008/02/12(火)18:36 ID:??? AAS
>>341
> あとデータベースなりファイルなりからデータを読み込んでそれをオブジェクトの形に整形して・・・・
> って処理が無駄な気がする。
> 実際に行う処理よりもその整形処理が長かったりするとなんか本末転倒なような。
これはもともとOOPの特性じゃない?
再利用性や保守性を高めるために、他の処理とを完全に切り分ける代わりに、
構造化指向よりも、コード量が多く、動作が重くなるというのは。
これは、個人で組む小規模プログラムでは無駄でしかないが、チームで組んだり、
改変がある場合には威力を発揮する、という類のことでしょ。
348: に ◆lKs5QMUHoA 2008/02/12(火)18:50 ID:??? AAS
確かに私もWebアプリの世界ではOOPの意味は少ないと思う。
指摘にあるように、フローチャートがかけるような処理しかしていないので、
主にPerlやPHPで構造化指向でコーディングするスタイルが流行っているのだと思う。
(PerlやPHPのOOP対応は未だに不十分なところがある)
また、ネットにあるサンプルアプリは構造化指向のものが非常に多い事からも、
構造化指向で十分に組めることを意味しているのだと感じる。

通常だと、「だったら、WebアプリをOOPで組む必要ないよね。」となるわけだが、
私がそれでもあえてOOPをやっているのは、その有用性などを自分で体感する形で
確認したいからだ。
大規模なアプリとなると、WebアプリでもOOPを活用して組むことが多いと聞くが、
省3
349
(3): 2008/02/12(火)19:23 ID:??? AAS
> 確かに私もWebアプリの世界ではOOPの意味は少ないと思う。
> 指摘にあるように、フローチャートがかけるような処理しかしていないので、

OOPの意味が少ないの理由がおかしい。
フローチャートがかけるような処理しか”貴方が”していないから
必要ないといっているだけであって、そうではないものはOOPの意味がある。

「Webアプリはフローチャートがかけるような処理」という前提がそもそもおかしい。

> 大規模なアプリとなると、WebアプリでもOOPを活用して組むことが多いと聞くが、
> それは具体的にどのような場面で、どのような有用性があるからなのか。それらを確認したい。

OOPの有効性、そのものがわかってないだけじゃないか?
省4
350: 2008/02/12(火)19:40 ID:??? AAS
>>349
別にOO的なモデリングをしなくても複雑さが増大しないのであれば、OOを選択するのは技術的な理由ではないでしょ。
前提がおかしいと主張するなら、どうおかしいのか言わないと、それこそ意味がない。
351: 2008/02/12(火)19:58 ID:??? AAS
>>349
じゃあ貴方がOOPを教えてあげたら?
352: 2008/02/12(火)20:39 ID:??? AAS
>>349
どういう利点があんの?
353: 2008/02/12(火)22:43 ID:??? AAS
クラスを使ってるだけで、オブジェクト指向でも何でもないよ。ウェブフレームワークは。
オブジェクト指向を謳うなら、オブジェクトをシリアライズしてDBやセッションに保存するくらいはしないと。
そんなフレームワークがどれだけある?
354: 2008/02/12(火)22:58 ID:??? AAS
なんで永続性に拘るんだろ。
355: 2008/02/12(火)23:01 ID:??? AAS
なんでオブジェクトに拘るのかってこと。
1-
あと 539 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.019s