PHPでOOP (894レス)
PHPでOOP http://medaka.5ch.net/test/read.cgi/php/1172205352/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
311: nobodyさん [sage] 2008/02/09(土) 12:20:07 ID:??? 書いてみた、とかって適当かつ無責任な http://medaka.5ch.net/test/read.cgi/php/1172205352/311
312: nobodyさん [sage] 2008/02/09(土) 12:23:25 ID:??? 完璧な文章がいきなりかけるわけないんだから修正しながらでいいと思う。 適当だの無責任だのいうのなら、このスレに来なくて良いと思う。 http://medaka.5ch.net/test/read.cgi/php/1172205352/312
313: nobodyさん [sage] 2008/02/09(土) 12:32:04 ID:??? ひょっとして、つられた? http://medaka.5ch.net/test/read.cgi/php/1172205352/313
314: nobodyさん [sage] 2008/02/09(土) 15:20:46 ID:??? つんでれた http://medaka.5ch.net/test/read.cgi/php/1172205352/314
315: nobodyさん [sage] 2008/02/09(土) 15:25:19 ID:??? >>308 > Q:フレームワークがあまり向かない場合は? > ・そのアプリの全体構成をすみずみまで把握しておきたい場合 全体構成を隅々まで把握してなんの意味があるのだろうか? どうせ数日たったら忘れるんだし。 > ・サーバの移植を想定しなければならないなど、環境があまり固定出来ない場合 > このような状況の場合は、クラスライブラリの使用を検討すると良い。 PHP4、PHP5両対応のフレームワークもあるし、 いろんなデータベースに対応している場合もある。 フレームワークの開発というのは、そもそもが環境が固定されていないので そういう場合にはなおさらフレームワークを使ったほうが良い。 http://medaka.5ch.net/test/read.cgi/php/1172205352/315
316: nobodyさん [sage] 2008/02/09(土) 15:29:20 ID:??? 理解と記憶は別物だと思うけどな。 http://medaka.5ch.net/test/read.cgi/php/1172205352/316
317: nobodyさん [sage] 2008/02/09(土) 16:52:42 ID:??? >>315 > 全体構成を隅々まで把握してなんの意味があるのだろうか? > どうせ数日たったら忘れるんだし。 じゃ、この項目は消しておきます。 > PHP4、PHP5両対応のフレームワークもあるし、 > いろんなデータベースに対応している場合もある。 > フレームワークの開発というのは、そもそもが環境が固定されていないので > そういう場合にはなおさらフレームワークを使ったほうが良い。 PHPスレで言うのもなんだけど、ASP.NETなども含めた総論という考えだったんだけどね。 Windowsサーバなのかなどを気にするとか、PHP5のみ対応のフレームワークで 開発していて、PHP4しか対応していないサーバで動かすことになる場合を という意味で、環境が固定されない書きました。 http://medaka.5ch.net/test/read.cgi/php/1172205352/317
318: nobodyさん [sage] 2008/02/09(土) 17:04:40 ID:??? 修正案 Q:どんな時にフレームワークを使った方がいいの? ・短期間で仕上げなければならない時(この場合はフレームワークの使い方を把握しているのが前提) ・チームで分担してシステムを組む時 ・バージョンアップや不具合修正など、納品後もメンテナンスが想定される時 Q:フレームワークがあまり向かない場合は? ・個人で小規模アプリを組む時。(一度組んで終わりの場合など) ・サーバの移植を想定しなければならないなど、環境があまり固定出来ない場合 このような状況の場合は、クラスライブラリの使用を検討すると良い。 http://medaka.5ch.net/test/read.cgi/php/1172205352/318
319: nobodyさん [sage] 2008/02/09(土) 22:32:17 ID:??? あえてPHP4の構文でやってるのは、PHP4との互換性を保つため? PHP5でやっちゃうと、PHP4の環境で動かなくなるから。 http://medaka.5ch.net/test/read.cgi/php/1172205352/319
320: に ◆lKs5QMUHoA [sage] 2008/02/10(日) 03:19:14 ID:??? ChStrクラスの件を再開しようかな。 http://medaka.5ch.net/test/read.cgi/php/1172205352/320
321: 1 ◆SWtzLesEmM [age] 2008/02/10(日) 18:45:04 ID:??? >>300 >ttp://briefcase.yahoo.co.jp/bc/oopfw ソースコードを見てビックリ!(・∀・) コメントが丁寧に書いてあり、OOPを学習する上でとても助かります! 貴重なサンプルを提供していただき、どうもありがとうございました。m(_~_)m 現時点で、バージョンがOOP_FW_02とOOP_FW_03の2つあるみたいですが、とりあえずOOP_FW_02の方をまとめページに掲載させていただきました。 http://ssurl.net/8vyv >>281 http://ssurl.net/cp7a ちょっとずつ読んでますが、全部はまだ理解できないです。(´;ω;`) レスも参考にしてみます。 (=分からないことでも、検索で調べるときのヒント・手掛かりになるので) http://medaka.5ch.net/test/read.cgi/php/1172205352/321
322: nobodyさん [sage] 2008/02/10(日) 22:19:07 ID:??? >>321 乙です。m(_ _)m >>306ですが今後は ・認証の仕組み ・ロギングの仕組み ・エラーハンドリングの仕組み ・バリデイトの仕組み ・トークンの仕組み ・リダイレクトの仕組み ・入力→確認→完了の仕組み ・コアオブジェクトの実行権限の仕組み など実装していく予定です・・ でも、こればっかりやってるわけにいかないので 気長に見守ってやって下さい。 http://medaka.5ch.net/test/read.cgi/php/1172205352/322
323: に ◆lKs5QMUHoA [sage] 2008/02/11(月) 02:31:35 ID:??? >>321 乙です。分かりやすくまとまっていますね。 私も少しずつ読んでいって理解しようと思っています。 他のものに比べ、コメントが多いのが助かりますよね。 >>322 読むほうも時間がかかると思いますので、 一気にやらなくていいと思います。(^^; http://medaka.5ch.net/test/read.cgi/php/1172205352/323
324: に ◆lKs5QMUHoA [sage] 2008/02/11(月) 02:35:18 ID:??? MVCフレームワークを作っていただいてる流れとはおもいっきり違う事をいうけれど。 >>1さんのOOPで掲示板を作るところは、もう少しクラスを分けたほうが いいと思ったので、自分なりに作ってみました。 index.phpに、いろいろと処理を詰め込んでいるような感があったので、 それを分ける考え方です。 しかし、DBはテキストベースにしているとか、書き込み欄と表示欄を 同じページにしているなど、基本構成から大幅に変えています。(^^; http://www.geocities.jp/narutobakijp2/ OOPの勉強として、簡易なBBSを作ってみました。 BBS Version1(2008.2.11) http://medaka.5ch.net/test/read.cgi/php/1172205352/324
325: に ◆lKs5QMUHoA [sage] 2008/02/11(月) 08:27:05 ID:??? クラス間のデータのやり取りにおいて、Listクラスを使う設計にしたけれど、 PHPの場合はハッシュでよかったような気がする件。 まだまだ未熟だな・・・ 今後は、これを構造化指向へ変換したプログラムを作り、うpする予定です。 この両方のプログラムを見比べてみることで、OOPのメリットとデメリットが 見えてくるかもしれません。 http://medaka.5ch.net/test/read.cgi/php/1172205352/325
326: nobodyさん [sage] 2008/02/11(月) 10:26:11 ID:??? OOPの継承やポリモーフィズムについての概念やそのコードの書き方に ついては分かったけれど、その設計方法のノウハウの文章はぐぐっても なかなか見当たらない。 「設計というのはそれぞれで目的次第」といってしまえばそうだけど、 hiroxpepeさんのソースや、.NET Framework や java の各クラスの 継承関係の設計を見ていると、何か共通したものを感じる。 その具体的な方針と、それを取る理由がはっきりとは分からない・・・ 何か良い文章を見かけた、もしくは知っている方は、お願いします。 http://medaka.5ch.net/test/read.cgi/php/1172205352/326
327: nobodyさん [sage] 2008/02/11(月) 10:50:14 ID:??? ◎「メンテナンスを行う場合」の比較 【構造化指向の場合】 ソースコードに書かれている関数とグローバル変数が、どういう階層で組まれているか (どの関数でどの関数が使われているか。また、どのグローバル変数を使っているのか) は、その関数の処理内容と、その関係などを把握してからでないと、手をつけられない。 新しくグローバル変数や、関数を追加する場合。また、ローカル変数を宣言する場合は、 その名前がソースコード内で使われているかを都度チェックしなければならないので、 面倒である。 【オブジェクト指向の場合】 ソースコードそのものがクラス単位で分けられているため、手をつける場所がすぐに 分かる。他のクラスに影響するのは、そのクラスとのインターフェースを変更した場合のみ。 新しくメンバやメソッドを追加する場合は、そのクラスの中で使われているメンバや メソッドを確認するだけなので、対象となる範囲が狭く、チェックが楽。 また、プログラムそのものがクラスで部品化されるため、チームを組んで、分担作業で プログラミングがやり易い。 【注意】 構造化プログラミングであっても、関数やグローバル変数の名前の付け方を工夫すれば、 もちろん対応は可能である。そのため、メンテナンスを想定する場合は、 オブジェクト指向でなければならないわけでもない。 オブジェクト指向は、構造化指向に比べて特別に「これが出来る」というものではなく、 構造化指向で不便に感じる部分の便利機能である。 http://medaka.5ch.net/test/read.cgi/php/1172205352/327
328: nobodyさん [sage] 2008/02/11(月) 10:57:47 ID:??? >>324,325 なかなか参考になりました、ありがとう。 326さんのおっしゃる通り、"設計"は経験なんかも必要になってくるので、 考えるよりも手を動かして、簡単なスクリプトを組んでみるのが最良でしょうか。 http://medaka.5ch.net/test/read.cgi/php/1172205352/328
329: nobodyさん [sage] 2008/02/11(月) 12:43:38 ID:??? >>326 ・リファクタリング―プログラムの体質改善テクニック マーチン ファウラー著 高いけどOOPに興味のある方には絶対お勧めですよ。 ポリモーフィズム適用の具体例がコードで解説されていますよ。 構造化プログラミングではGOTO構文を使うのはNGだけど 同様にOOPではswitch構文を使用しません。 ここの部分をポリモーフィズムで実装するのです。 あなたのプログラムにswitch構文がありますか? その部分はポリモーフィズムで置き換えられますよ。 http://medaka.5ch.net/test/read.cgi/php/1172205352/329
330: nobodyさん [sage] 2008/02/11(月) 12:53:28 ID:??? >同様にOOPではswitch構文を使用しません。 >ここの部分をポリモーフィズムで実装するのです。 これは言いすぎ。 OOの基本はモデリングであって、コーディングのスタイルじゃない。 http://medaka.5ch.net/test/read.cgi/php/1172205352/330
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 564 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.007s