2012-07-04
MVCモデルとMOVEモデルについて~望まれなかった子?~
いつもお世話になってるはてブのITカテゴリに気になる記事が上がってました。「[翻訳]MVCは死んだ。MOVEするときがきた」そしてこんな記事も「MOVEは望まれなかった子」
Ruby、PHPを触っている身からすれば当然のごとく気になってしまい記事を開きさらにのめりこんだ次第です。詳しいところまでの理解が足りないことを自覚しつつこの記事について書いてみようと。ただし「MVCとはこうだ!」とか「MOVEってのはこういうやつなんだよ!」「( ー`дー´)キリッ」というつもりは毛頭ありません。
MVCモデルのcontrollerって肥大化しているのか
MVCモデルの問題点として挙げられている「MVCではControllerが肥大化する」という視点ですが私としてはMOVEモデルでも「operationが肥大化するんじゃ・・・」と感じました。
MOVEには申し訳ないのですがMVCはまだ古い技術に分類されるものではないと感じていますし、Webアプリ開発のスタンダードとさえ感じます。ただ問題を挙げるとすれば正しく理解している人が少ないのかなと。私もそうなのですが組み込もうとしてるコードがcontrollerなのかmodelなのかで悩みますし、それこそサンプル触ったばかりのころは「controllerは橋渡し!( ー`дー´)キリッ」とか思ってました。
しかしそんな考えも自身で開発をやってたりすると違うんだなぁと思う今日この頃。そして上記の記事を読んでさらに。。。
私の中のMVC
[view]
いわずもがな。
画面です。
[controller]
情報を集める場所と認識しています。橋渡しはもちろんですが、DBや外部APIなどから値を取得して計算するとこへお渡しする。という認識です。
ここで処理とかせずただ単にDBの一覧を表示するだけであればもうここでviewに値を渡してユーザへ表示しちゃいます。
[model]
なにかしら処理をする場所という認識です。controllerから渡された値をつかい自分にまかされた処理を一生懸命行うのです。そして出た結果をviewに渡してユーザに表示します。(viewへの通知です)
ユーザ⇒controller⇒model(あったりなかったり)⇒view⇒ユーザ
という流れが私の頭の中です。ただよく見かけるのはmodelとviewの間にcontrollerがはさんであってホントに橋渡ししてるソースばかり見受けます。私自身、このmodelからviewへの通知は知識が浅いためあやふやなままそのプロジェクトの文化に従うと都合のいい手法をとってます。。。
ではMOVEモデルってどうでしょう
正直にMOVEモデルはただMVCモデルを鞍替えしただけのような気がします。ちょっとそれぞれのオブジェクトの間にevent入りました~的な感じです。私はその程度の解釈なので上記にあるようにMVCモデルのcontrollerの肥大化はMOVEモデルのoperationで似たような現象が起きるのではないかと思うのです。おそらくMOVEモデルももっと深く理解すれば、議論をすればMVCよりも優れた手法!となるのかもしれませんが、中途半端な理解の人ばかりかなと思いますし、今現在の情報ではわざわざMOVEモデルを採用するか。。。。ということに疑問符が付きます。
と、大した知識を持ち合わせずつらつらと書いてみましたが私からはまだまだMVCモデルで行きましょう!って感じでMOVEモデルは望まない子なのかもしれません。ただ、もっと資料有りますだったりここの見解間違ってるというのがあればぜひお聞かせ願います。
登録:
コメントの投稿
(
Atom
)
0 件のコメント :
コメントを投稿