PHPでOOP (894レス)
1-

283: 2008/02/08(金)08:52 ID:??? AAS
phpDocumentorにソース読み込ませて吐かせただけです。
外部リンク[zip]:proxy.f3.ymdb.yahoofs.jp
フォルダ内のindex.htmlです、荒いですがご容赦を。

とりあえずトライアルなんでまだリファクタ出来そうだけど・・

[コントローラの処理]
_form_onLoad
_buttonHoge_onClick

[モデルの処理]
_onSelect
_onInsert
省9
284: 2008/02/08(金)09:26 ID:??? AAS
ファイルが見れん・・・
285
(1): 2008/02/08(金)11:03 ID:??? AAS
OOP FW ソース
外部リンク[zip]:proxy.f3.ymdb.yahoofs.jp
OOP FW ドキュメント
外部リンク[zip]:proxy.f3.ymdb.yahoofs.jp

すいません再アップしました、ドキュメントにControlが反映されてませんでした。
286: 2008/02/08(金)11:20 ID:??? AAS
サンクス
287
(1): 2008/02/08(金)11:51 ID:??? AAS
全体構成の把握はまだ出来てないけれど、只今、ソース解析中・・・
いちゃもんつけるつもりじゃないけれど、気になった点を2つ。

Control.phpのPOSTされたSubmitボタン名取得のところは
クラス化されてないのはどうしてなのでしょうか?
さらに非常にクラスが多くなって面倒になるから?

class Control extends Base
var \$_view_calss;
このメンバはあえてclassにしてない理由はあるのでしょうか。
288: 2008/02/08(金)12:39 ID:??? AAS
>>287
POSTされたサブミットボタン名取得部分は説明の通りです・・
今その部分をC#でのデリゲートで実装しようと思ってます。

Viewクラスexecuteのところもこのままでは$eパラメータが
コントローラから任意に渡せないので検討中です。

オブジェクトにexecute以外のパブリックメソッドを
実装しないのが目標です・・(※アクセサ以外)
289: 2008/02/08(金)13:12 ID:??? AAS
クラスの継承関係が結構複雑になってますね。
Documentsいただいても、追いかけていって、全体構造を把握するのが結構大変。
例えば、SampleInsertModelからその元を追っていくと、以下のような継承構造。
Base - Model - DataModel - InsertModel - SampleInsertModel

俺のメモとして、SampleInsertModelを追いかけていった様子をまとめておく。

■Base(抽象)クラス[fw/framework/Base.php]
●パブリックメソッド
& execute(&$param, $e) →アプリのログを記録する。_onExecute(&$param, $e)を実行
●プロテクテッドメソッド
_onExecute(&$param, $e) →サブクラスでオーバーライドして使用。
省4
290: 2008/02/08(金)13:15 ID:??? AAS
■DataModel(抽象)クラス[fw/abstract/models/DataModel.php]
●フィールド
$_items; // コントロール値のハッシュを保存
●パブリックメソッド
setItem($key, $value) // コントロール値を受け取り、$_itemsに代入
getItem($key) // $_itemsの値を返す。

■InsertModel(抽象)クラス[fw/abstract/models/InsertDataModel.php]
●シールドメソッド
& _onExecute(&$sender, $e) →onInsert(&$sender, $e)
●プロテクテッドメソッド
省6
291
(1): 2008/02/08(金)13:32 ID:??? AAS
こうやってみてみると、クラスを継承する際の設計思想が見えてくるな。
どの段階で実装を替えるかを考えた場合、どのクラスを置き換えれば良いかも分かる。

しかし、俺はこれまでフレームワークの構成などをじっくり読んだりしたことが無いので、
つい、ここまでクラスを継承させるメリットがあるのかなとか思ってしまう。
なんか、1つのメソッドを実装するのに、1回継承してるって感じだよね。

例えば、Model(抽象)クラスの $src_file_name を別のものにする場合、
それ以降のクラスが全部影響するかの確認が必要なわけだから、
Model(抽象)クラス以降のものをすべて一つのクラスにまとめて書いても
同じなんじゃないかと思えてしまう。
こういうのとは別な場面で、継承しているメリットがあるってことかな?
292: 2008/02/08(金)13:51 ID:??? AAS
ちょっと紹介しておきますね。

フレームワークを使った開発のメリット、デメリットを教えてください
外部リンク:q.hatena.ne.jp

特集:第1回 フレームワーク「Struts」の基礎を知る (3/8)
フレームワークのメリットとデメリット
外部リンク[html]:www.itmedia.co.jp
293
(1): 2008/02/08(金)15:31 ID:??? AAS
Control の & _onExecute(&\$param, \$e) で
\$this->_view_calss = \$view_calss;
というコードがあるけれど、右辺の \$view_calss って、
何処でも定義されてないですよね?
このまま動かすと、nullが入るだけのように思えるんだけど。
294: 2008/02/08(金)16:04 ID:??? AAS
Viewクラスの継承関係で、かいつまんだ一覧を書いておきます。
個別にはDocに書いてはあるけれど、こういう書き方みると分かりやすくない?

Base - View - RenderView - IndexView

■Base(抽象)クラス[fw/framework/Base.php]
(省略)

■View(抽象)クラス[fw/framework/View.php]
●プロパティ
$post_file; // POSTするファイル名

■RenderView(抽象)クラス[fw/abstract/views/RenderView.php]
●プロテクテッドメソッド
省8
295: 2008/02/08(金)16:20 ID:??? AAS
>>293
1行上のフックハンドラ実行の結果を渡している。
296: 2008/02/08(金)16:41 ID:??? AAS
ロードメソッド[MainControl::_form_onLoad(&$sender, $e)]が(POSTパラメータが
無い場合に呼ばれるメソッド)呼ばれるまでの経緯をたどってみたが、非常に複雑だ。。。

[fw/index.php]が実行される。
Mainクラスのインスタンスが生成され、execute(&$app, $e)が実行される。
Base:: & execute(&$param, $e) にて、 Base:: & _onExecute(&$param, $e)が実行される。
これは、Main::execute(&$app, $e)にてオーバーライドされている。
Controlクラスのインスタンスが生成され、execute(&$app, $e)が実行される。
Base:: & execute(&$param, $e) にて、 Base:: & _onExecute(&$param, $e)が実行される。
これはControl:: & _ onExecute(&$param, $e)にてオーバーライドされている。
Control:: & _onExecute(&$param, \$e) にて、Control::_hookedUpControler(&\$sender, \$e)を呼び出す。
省6
297: 2008/02/08(金)17:33 ID:??? AAS
リンク

symfony入門(1):symfonyで始めるPHPフレームワーク
外部リンク[aspx]:codezine.jp

Zend Framework入門(1):フレームワークの全体像とインストール
外部リンク[aspx]:codezine.jp
298
(2): に ◆lKs5QMUHoA 2008/02/08(金)18:46 ID:??? AAS
>>285のファイルが落とせない・・・
299: 2008/02/08(金)19:33 ID:??? AAS
>>298 見れるはずですが・・以下はどうですか?
Eclipceでのデバッグ画面です
画像リンク[jpg]:proxy.f3.ymdb.yahoofs.jp
300
(2): 2008/02/08(金)22:21 ID:??? AAS
>>298どうでしょうか?
外部リンク:briefcase.yahoo.co.jp
301: 2008/02/08(金)22:24 ID:??? AAS
なんでPHP4文法でやってんの?
302: に ◆lKs5QMUHoA 2008/02/08(金)23:53 ID:??? AAS
>>300でいけました。サンクスです。
1-
あと 592 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.012s