トップページphp
1001コメント310KB

【PHP】フレームワークについて語るスレ9【総合】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/12/11(火) 23:37:20ID:???
前スレ
http://pc11.2ch.net/test/read.cgi/php/1192604501/
0200nobodyさん2007/12/18(火) 19:40:23ID:???
まあModelかと。
逆にみんなそこまでは判ってて、それだけ考えてピンとこなくなってる奴いるんじゃないかなー
モデル化すべき部品が数えるほどしかない場合って、MVCに拘っても特に嬉しい事ないのよね

M:金全般の定義と、基本的な処理の実装
 ・価値クラス
  ・価値クラスを継承した「動産」
  ・価値クラスを継承した「不動産」
  ・価値クラスを継承した「貨幣」
V:金扱う場所や事例
 ・不動産屋
 ・コンビニのレジ
 ・自動販売機
C:制御部分
 ・不動産屋がModel扱う場合の処理
 ・レジのバイトの応対、帳簿の付け方
 ・自動販売機に入った貨幣の形状認識、押された商品と釣り銭の出力

続く
0201nobodyさん2007/12/18(火) 19:41:23ID:???
>>200>>197宛でした。

続き

>>200の例で、分離による嬉しい事の例:
・法律が変わって資産計上の仕方が変わった場合に、モデルが分離していれば
 基本的な処理の段階に修正を加えて全体の整合性を保てる。
・コンビニがポイント制導入したとしても「コンビニのポイントモデル」を
 追加してコンビニのView/Controller変えることで、「他の事例への影響」を
 完全に切り離せる。
・貨幣偽装事件が相次いで貨幣の形が変わった場合、自動販売機の制御部分を
 変えるだけで済む。他の概念には影響しない。

こういう全体像の場合、モデルを「貨幣」として実装しても組み上げる事は可能。
でも変更対応性は損なわれるし、そもそも証券やら信用やら扱うと「貨幣」を
継承するのは無理があるし、等価的に扱えない。
特にコントローラー側が泣く。
上記の例でも、動産/不動産の価値と実貨幣価値を、「常に整合性が保たれる
ように変換」する作業が必要になってしまう。
で、貨幣ではなく「価値」という概念でモデルを抽象化しとく、と。

冗長になったなぁ。判りやすくはねえな。
人に教える時に悩むのが、実際に何かシステムを作らなくちゃいけないときに
上記の例でいう「価値をくくりだせばいいんだ」という着想をどうやって行う
べきかって話なんだよね。MVCってOOADが要る、っていうかOOADしっかり
考えられる奴はMVC必要なかったりするしな

PHP関係なくてすまん
0202nobodyさん2007/12/18(火) 19:47:31ID:???
>>201
>等価的に扱えない。
「透過的に」の変換ミスです失敬
■ このスレッドは過去ログ倉庫に格納されています