探検
MVVMについて語ろう
■ このスレッドは過去ログ倉庫に格納されています
2012/06/06(水) 11:03:33.21
WPF/Silverlight/WinRT開発の必須技術、MVVMについて語ろうではないか!
466デフォルトの名無しさん
2012/11/17(土) 12:38:05.90 >>465
WPF自体は様々な画面遷移のシナリオを実現するのに十分な機能を備えてるし、
IDEでどうするもんでもないだろう
Prismは画面遷移かなり頑張ってるぞ? というか画面遷移をまともに扱ってるのはPrismだけ。
WPF自体は様々な画面遷移のシナリオを実現するのに十分な機能を備えてるし、
IDEでどうするもんでもないだろう
Prismは画面遷移かなり頑張ってるぞ? というか画面遷移をまともに扱ってるのはPrismだけ。
467デフォルトの名無しさん
2012/11/17(土) 13:33:39.79 U氏に親殺されたやつ多すぎだろ
468デフォルトの名無しさん
2012/11/17(土) 14:04:28.46469デフォルトの名無しさん
2012/11/17(土) 14:08:17.71 画面遷移についてはMVVMと絡めてもっと真剣に議論されるべきだと思うぞ?
U氏関係なく。自称MVVMインフラではたいてい完全スルーされてるが(Livetでもおまけ程度)
どうしてもインフラ的なコードを書くことになる部分だし、MVVM使ってるなら画面遷移の設計も
それに強く影響されることになる。
U氏関係なく。自称MVVMインフラではたいてい完全スルーされてるが(Livetでもおまけ程度)
どうしてもインフラ的なコードを書くことになる部分だし、MVVM使ってるなら画面遷移の設計も
それに強く影響されることになる。
470デフォルトの名無しさん
2012/11/17(土) 14:08:19.65 >>466
> WPF自体は様々な画面遷移のシナリオを実現するのに十分な機能を備えてるし、
WPFの話じゃなくてMVVMな
> IDEでどうするもんでもないだろう
IDEにどれだけ恩恵受けてるかわかってないの?
MVVMだってフレームワークだけではどうにもならないことがある
> Prismは画面遷移かなり頑張ってるぞ? というか画面遷移をまともに扱ってるのはPrismだけ。
Prismがもっと使いやすく標準で.NET Fxに乗らないと無理ってこと
> WPF自体は様々な画面遷移のシナリオを実現するのに十分な機能を備えてるし、
WPFの話じゃなくてMVVMな
> IDEでどうするもんでもないだろう
IDEにどれだけ恩恵受けてるかわかってないの?
MVVMだってフレームワークだけではどうにもならないことがある
> Prismは画面遷移かなり頑張ってるぞ? というか画面遷移をまともに扱ってるのはPrismだけ。
Prismがもっと使いやすく標準で.NET Fxに乗らないと無理ってこと
471デフォルトの名無しさん
2012/11/17(土) 14:44:14.95 コードビハインド前提のMVVMフレームワークが出てきたら少しは前進すると思う。
Livetがダメなのは作者がコードビハインド完全否定してることと
>>458が言う通り、既存フレームワークの単なる2番煎じで
MVVMの問題点を克服するものではないから。
コードビハインドいいと思うんだけどな。
うがやのサイト見ていると分業とか書いてるが
Vをデザイナーに別注してるチームってあるのか。
デザイナーとデベロッパーの分業なんて幻想じゃないのかな。
XAMLをフルに理解してるデザイナーなんて一人もいないと思うよ。
Livetがダメなのは作者がコードビハインド完全否定してることと
>>458が言う通り、既存フレームワークの単なる2番煎じで
MVVMの問題点を克服するものではないから。
コードビハインドいいと思うんだけどな。
うがやのサイト見ていると分業とか書いてるが
Vをデザイナーに別注してるチームってあるのか。
デザイナーとデベロッパーの分業なんて幻想じゃないのかな。
XAMLをフルに理解してるデザイナーなんて一人もいないと思うよ。
472デフォルトの名無しさん
2012/11/17(土) 14:57:27.23 >>471
その点に関してはすでに奴は考え改めてコードビハインドの有無はどうでもよくなってるみたいだぞ
その点に関してはすでに奴は考え改めてコードビハインドの有無はどうでもよくなってるみたいだぞ
473デフォルトの名無しさん
2012/11/17(土) 15:03:53.77 VMの処理中にユーザの入力を求めたくなった場合とかかね画面遷移は
ぶっちゃけどのライブラリも何かあるたびにクラスやらインターフェイスやら増やさないとならなかったりして面倒だわ
MSはMVVMを推奨するんならASP.NET MVCくらい充実させるべき
ぶっちゃけどのライブラリも何かあるたびにクラスやらインターフェイスやら増やさないとならなかったりして面倒だわ
MSはMVVMを推奨するんならASP.NET MVCくらい充実させるべき
474デフォルトの名無しさん
2012/11/17(土) 16:41:52.99475デフォルトの名無しさん
2012/11/17(土) 17:27:45.79 具体的な例で言ってくれよ
476デフォルトの名無しさん
2012/11/17(土) 17:34:46.35 例も何も、無理にVMくつけなきゃ 一覧画面 <-> 編集画面 とか大概の画面遷移はVMごと遷移だろ
ダイアログベースならそんなに意識しないだろうけどさ
ダイアログベースならそんなに意識しないだろうけどさ
477デフォルトの名無しさん
2012/11/17(土) 17:43:10.77 それならDataContextにVM突っ込んでもらうだけでよくね
478デフォルトの名無しさん
2012/11/17(土) 17:54:24.04 そのコードをどこに書くのかとかいろいろ問題があるよ
本来、一覧画面VMで 画面遷移しろ("編集ビュー", selectedItemId); だけで済むはずで
一覧画面のVMやVが遷移先の画面のVやVMのクラスを知っている必要は全くないけど
そう書けるようにするためには結局インフラがいるんだよね
本来、一覧画面VMで 画面遷移しろ("編集ビュー", selectedItemId); だけで済むはずで
一覧画面のVMやVが遷移先の画面のVやVMのクラスを知っている必要は全くないけど
そう書けるようにするためには結局インフラがいるんだよね
479デフォルトの名無しさん
2012/11/17(土) 18:03:52.82 railsのscaffoldみたいにサクッとアプリを作れるようなインフラが欲しい・・・
480デフォルトの名無しさん
2012/11/17(土) 19:28:02.12481デフォルトの名無しさん
2012/11/17(土) 20:46:12.52 プロ粘着なら奴のツイッターも観察すべき
482デフォルトの名無しさん
2012/11/17(土) 23:51:38.42 >>481
前はフォローしてたんだけどね。
自分とちょっとでも意見が違うと噛みついて粘着のパターンが多すぎて
ずいぶん前にフォロー解除したよ。
あの人ちょっとアスペ入ってるよね。
ちょっとというかかなり。
高卒で会社員経験なし、ってとこで人間の底が知れるわ。
前はフォローしてたんだけどね。
自分とちょっとでも意見が違うと噛みついて粘着のパターンが多すぎて
ずいぶん前にフォロー解除したよ。
あの人ちょっとアスペ入ってるよね。
ちょっとというかかなり。
高卒で会社員経験なし、ってとこで人間の底が知れるわ。
483デフォルトの名無しさん
2012/11/18(日) 00:01:26.49 と2ちゃんねるで批判するガキwww
484デフォルトの名無しさん
2012/11/18(日) 00:03:44.32485デフォルトの名無しさん
2012/11/18(日) 00:09:01.67486デフォルトの名無しさん
2012/11/18(日) 00:11:32.55 ugayaは2chの煽りにtwitterやブログでキレまくってたけどなw
487デフォルトの名無しさん
2012/11/18(日) 00:17:22.53 >>486
いいから早く寝ろよ
いいから早く寝ろよ
488デフォルトの名無しさん
2012/11/18(日) 00:20:54.13 反応はしてたけど別にキレまくってたってほどじゃなかったろ
489デフォルトの名無しさん
2012/11/18(日) 00:24:44.54 MVPVMの(Uによる)煽りはひどかった
490デフォルトの名無しさん
2012/11/18(日) 01:06:10.42 お前ら本当に暇なんだな
文句があるなら一度でいいからGoogleの検索トップになってみろよ
U氏のサイトはMVVMで検索すると余裕でトップなんだが
文句があるなら一度でいいからGoogleの検索トップになってみろよ
U氏のサイトはMVVMで検索すると余裕でトップなんだが
491デフォルトの名無しさん
2012/11/18(日) 01:10:17.68 そんなんだと宗教に騙されるぞ
U氏も言ってるだろ? 「MVVMだからこうしなければならない」じゃなくて目的を考えろと
U氏も言ってるだろ? 「MVVMだからこうしなければならない」じゃなくて目的を考えろと
492デフォルトの名無しさん
2012/11/18(日) 01:14:55.07 >>491
自分の考えた最強の目的しか許さず
その目的を達成するにはこうするしかないと決めつける
そこから外れたツイートを見つけると相手が黙るまで粘着ツイート
相手が黙ると「都合が悪くなると無視かよ、これだからクズは困る」的なツイートで〆
尾上さんのそこにシビれる!あこがれるゥ!
自分の考えた最強の目的しか許さず
その目的を達成するにはこうするしかないと決めつける
そこから外れたツイートを見つけると相手が黙るまで粘着ツイート
相手が黙ると「都合が悪くなると無視かよ、これだからクズは困る」的なツイートで〆
尾上さんのそこにシビれる!あこがれるゥ!
493デフォルトの名無しさん
2012/11/18(日) 01:15:09.27 目的を考えろと言ってる本人が一番権威主義を煽ってる元凶という皮肉
494デフォルトの名無しさん
2012/11/18(日) 01:19:48.67 尾上を擁護してるのはいったい誰なの?
誰がどう見てもアスペルガーじゃん。
尾上にへこへこ媚び売って家畜に成り下がってる奴って
高野将かぐらばくぐらいなもんだろ?
誰がどう見てもアスペルガーじゃん。
尾上にへこへこ媚び売って家畜に成り下がってる奴って
高野将かぐらばくぐらいなもんだろ?
495デフォルトの名無しさん
2012/11/18(日) 01:40:50.56 相手を擁護と認定してしまえばどんな誇大を使って過激に叩いても正当化できて安心だもんな
496デフォルトの名無しさん
2012/11/18(日) 01:49:36.48 文句があるなら同じMVVMの土俵で反論すればいいじゃないか。
このスレに持論を垂れ流すだけでも人格攻撃よりはマシだしまともな議論なら歓迎だぞ。
考え方に関してはここはわりとU氏に反発してる人が多いみたいだし(俺もその一人だが)。
このスレに持論を垂れ流すだけでも人格攻撃よりはマシだしまともな議論なら歓迎だぞ。
考え方に関してはここはわりとU氏に反発してる人が多いみたいだし(俺もその一人だが)。
497デフォルトの名無しさん
2012/11/18(日) 07:01:25.21 MVVMの思想に関してはいい加減多少は理解したから、
そろそろMVVMの実装について語って欲しいなぁ、
そろそろMVVMの実装について語って欲しいなぁ、
498デフォルトの名無しさん
2012/11/18(日) 07:25:20.92 とりあえずインフラ使っとけっていう風潮?って
MVVMじゃなくてMVVMライブラリの使い方を憶える事になる
危険性高い気がするのよね。
MVVMインフラが解決しているであろう、
様々な問題を自力で解決できるように成らないと
ほんとうの意味でMVVMやXAML環境を理解したとは言わない気がする。
MVVMの啓蒙者ならそのぐらいまでやってくれないと片手落ちだろって思う。
ところでMVVMインフラってどんな問題を解決してるの?
MVVMじゃなくてMVVMライブラリの使い方を憶える事になる
危険性高い気がするのよね。
MVVMインフラが解決しているであろう、
様々な問題を自力で解決できるように成らないと
ほんとうの意味でMVVMやXAML環境を理解したとは言わない気がする。
MVVMの啓蒙者ならそのぐらいまでやってくれないと片手落ちだろって思う。
ところでMVVMインフラってどんな問題を解決してるの?
499デフォルトの名無しさん
2012/11/18(日) 13:25:29.40 コードビハインドのこともそうだしModelの責務の話もそうだけど
言ってることがコロッと変わるのはどうにかならないものなのか
なんか昨日もフォーカス制御をModelでとか唐突に言い始めるわけですよ
それが正しいかどうかは別として
ざんざん大声で他人を罵倒してまで言い続けてたことを
ちょこちょこ小出しでさりげなく路線変更してくる卑怯なところが俺が気に入らないところ
といういか、それがうがやが叩かれる原因じゃね?
言ってることがコロッと変わるのはどうにかならないものなのか
なんか昨日もフォーカス制御をModelでとか唐突に言い始めるわけですよ
それが正しいかどうかは別として
ざんざん大声で他人を罵倒してまで言い続けてたことを
ちょこちょこ小出しでさりげなく路線変更してくる卑怯なところが俺が気に入らないところ
といういか、それがうがやが叩かれる原因じゃね?
500デフォルトの名無しさん
2012/11/18(日) 15:58:45.35501デフォルトの名無しさん
2012/11/18(日) 16:01:06.83 お前アスぺの意味やその性質わからずに罵倒語として使ってるだけだろ
502デフォルトの名無しさん
2012/11/18(日) 16:06:22.21 人格の話は別の板でやれ。
503デフォルトの名無しさん
2012/11/18(日) 16:17:28.34 私怨ならヲチでやれ
504デフォルトの名無しさん
2012/11/18(日) 18:51:48.91 ここって元々WPFスレを正常化するための隔離スレッドだからいいんだよ。
便所の落書きスレッドで。
いやなら見るなw
by 岡村
便所の落書きスレッドで。
いやなら見るなw
by 岡村
505デフォルトの名無しさん
2012/11/18(日) 18:59:24.39 まあアスペには違いない
506デフォルトの名無しさん
2012/11/18(日) 20:26:20.24 尾上さんは
「日本でMVVMを正しく語れる人間は自分以外にいないッ!!」
って断言してたしスレ名を「尾上について語ろう」に修正してもよいと考えられる
「日本でMVVMを正しく語れる人間は自分以外にいないッ!!」
って断言してたしスレ名を「尾上について語ろう」に修正してもよいと考えられる
507デフォルトの名無しさん
2012/11/18(日) 20:52:02.11 ここMVVMやってる奴はキチガイだらけという見本のスレか
508デフォルトの名無しさん
2012/11/18(日) 20:58:34.33 そもそもMVVMって何だよ
ぐぐってもクソみてーなサンプルコード乗せただけの記事しか出てこないしまともに概念を解説してるやついねーのな
コマンド(笑)とか冗長すぎてもうね
ぐぐってもクソみてーなサンプルコード乗せただけの記事しか出てこないしまともに概念を解説してるやついねーのな
コマンド(笑)とか冗長すぎてもうね
509デフォルトの名無しさん
2012/11/18(日) 21:04:18.24510デフォルトの名無しさん
2012/11/18(日) 22:37:36.36511デフォルトの名無しさん
2012/11/18(日) 22:40:25.76 一応言っておくとPDSは一般的な用語じゃないから通じないと思うぞ。
512デフォルトの名無しさん
2012/11/18(日) 22:41:17.17 一般的にはフリーソフトで通じる
513デフォルトの名無しさん
2012/11/18(日) 23:36:11.21514デフォルトの名無しさん
2012/11/18(日) 23:39:05.83 Wikiにないから一般的じゃないと推定される
515デフォルトの名無しさん
2012/11/18(日) 23:40:30.50 どこのWikiだよ
516デフォルトの名無しさん
2012/11/18(日) 23:42:35.17 PDS
http://ja.wikipedia.org/wiki/PDS
パブリックドメインソフトウェア(Public domain software)
かつてのドイツの政党である民主社会党(Partei des Demokratischen Sozialismus)。合併し、現在は左翼党 (ドイツ)に。
FTTHにおけるネットワーク構成(ネットワークトポロジー)の一つ。(Passive Double Star)
毛利元貞が考案した護身術パーソナルディフェンスシステムの略。
テレビ番組の制作会社の名称。PDS (制作プロダクション)を参照。
先駆動システム(Pre Driving System)
プラン・ドゥー・シー(Plan Do See) PDCAサイクルを参照。
アップルが採用していた拡張スロット。(Processor Direct Slot)
http://ja.wikipedia.org/wiki/PDS
パブリックドメインソフトウェア(Public domain software)
かつてのドイツの政党である民主社会党(Partei des Demokratischen Sozialismus)。合併し、現在は左翼党 (ドイツ)に。
FTTHにおけるネットワーク構成(ネットワークトポロジー)の一つ。(Passive Double Star)
毛利元貞が考案した護身術パーソナルディフェンスシステムの略。
テレビ番組の制作会社の名称。PDS (制作プロダクション)を参照。
先駆動システム(Pre Driving System)
プラン・ドゥー・シー(Plan Do See) PDCAサイクルを参照。
アップルが採用していた拡張スロット。(Processor Direct Slot)
517デフォルトの名無しさん
2012/11/18(日) 23:44:53.19518デフォルトの名無しさん
2012/11/18(日) 23:48:19.69519デフォルトの名無しさん
2012/11/18(日) 23:51:14.50 で、そのPDSとMVVMに何の関係が?
520518
2012/11/18(日) 23:57:05.51 MVVMは、XAML系フレームワークにおけるP(resentation層)の問題を解決するもの
その前提としてPとD(omain層)の分離がある
その前提としてPとD(omain層)の分離がある
521518
2012/11/18(日) 23:59:12.80 とはいえこれはあくまでパターンであり、絶対の解法ではない
その証拠として、MicrosoftもXAML系コンポーネントベンダーもMVVMを推奨してないという事実がある
その証拠として、MicrosoftもXAML系コンポーネントベンダーもMVVMを推奨してないという事実がある
522518
2012/11/19(月) 00:02:35.76 WPF・Silverlight・RTの公式ドキュメントで、一ヶ所でもMVVM必須と謳っている箇所があるだろうか?
また国内だとGrapeCity・Infragistics等のベンダーがXAML系コンポーネントを販売している
これらベンダーのマニュアルにも、MVVMを必須・提唱しているドキュメントは全く見当たらない
また国内だとGrapeCity・Infragistics等のベンダーがXAML系コンポーネントを販売している
これらベンダーのマニュアルにも、MVVMを必須・提唱しているドキュメントは全く見当たらない
523デフォルトの名無しさん
2012/11/19(月) 00:07:49.16 MがちゃんとしててVMはぺらっぺらになるのがMVVMの設計としては理想だからな
Web MVCではいくらぺらっぺらでもC無しというわけにはいかないが
VMがぺらっぺらになっていき、ついに無くなるのは別に問題ない
微妙に矛盾したパターンだよ
Web MVCではいくらぺらっぺらでもC無しというわけにはいかないが
VMがぺらっぺらになっていき、ついに無くなるのは別に問題ない
微妙に矛盾したパターンだよ
524デフォルトの名無しさん
2012/11/19(月) 00:07:57.56 そりゃ必須なわけがない
MSDNマガジンやChannel9とかで適度に触れられている程度だな
あと「推奨していない」だと非推奨と主張しているように聞こえるから注意だ
「触れていない」あたりでいい
MSDNマガジンやChannel9とかで適度に触れられている程度だな
あと「推奨していない」だと非推奨と主張しているように聞こえるから注意だ
「触れていない」あたりでいい
525518
2012/11/19(月) 00:08:10.96 勘違いしてはいけないのは、パターンはあくまでパターンであり、絶対の解法ではないことだ
逆にパターンに振り回されてその本質を見失えば、返って障害が発生する場合もある
MVVMを使わずに開発できるのならそれでよし
逆にパターンに振り回されてその本質を見失えば、返って障害が発生する場合もある
MVVMを使わずに開発できるのならそれでよし
526デフォルトの名無しさん
2012/11/19(月) 00:09:31.95 VMとテスト
527デフォルトの名無しさん
2012/11/19(月) 00:11:53.87 >>526
MがちゃんとしててMのテストだけで済むならそれに越したことはない
MがちゃんとしててMのテストだけで済むならそれに越したことはない
528デフォルトの名無しさん
2012/11/19(月) 00:12:18.51 >>524
どうかな?
「MVVMが必須」という誤ったイメージが蔓延し過ぎて参入障壁が上がり過ぎると
Microsoftや周辺ベンダーしては返って喜ばしくない事態になると思う
・・・いやすでになっているな
「触れていない」というより、いまとなっては「触れたくない」が正解だと思う
どうかな?
「MVVMが必須」という誤ったイメージが蔓延し過ぎて参入障壁が上がり過ぎると
Microsoftや周辺ベンダーしては返って喜ばしくない事態になると思う
・・・いやすでになっているな
「触れていない」というより、いまとなっては「触れたくない」が正解だと思う
529518
2012/11/19(月) 00:15:52.43 かくいう私はどうかといえばMVVMは割と好きなパターンであるし、
実際これでかなり問題を解決できているのも事実だ
しかし、使えない、理解できない、開発速度が極端に落ちて苦痛に感じるくらいなら、
そこまで無理に使う必要もないと思う
実際これでかなり問題を解決できているのも事実だ
しかし、使えない、理解できない、開発速度が極端に落ちて苦痛に感じるくらいなら、
そこまで無理に使う必要もないと思う
530デフォルトの名無しさん
2012/11/19(月) 00:28:44.37 VMがわかりにくいのって、CとかPとかと違ってVMにはこれといって
Mとの間に役割の違いが無いことだよ
特定のVとバインドすることを意識して作ったMってだけだからな
Mとの間に役割の違いが無いことだよ
特定のVとバインドすることを意識して作ったMってだけだからな
531デフォルトの名無しさん
2012/11/19(月) 00:53:44.94 なにいってんだ?
ビューの状態を表すモデルデータという
役割があるだろ。
ビューの状態を表すモデルデータという
役割があるだろ。
532デフォルトの名無しさん
2012/11/19(月) 00:58:48.11 別に選択状態持つためのMを設けてもいいんだぜ?
533デフォルトの名無しさん
2012/11/19(月) 01:02:55.31 それはもはやMではない。
Mの役割としては、GUIアプリではなく
CUIアプリからでも普通に使えるようなものを
目指すべきだ。
そんなGUIに依存した機能を持たせるべきじゃない。
Mの役割としては、GUIアプリではなく
CUIアプリからでも普通に使えるようなものを
目指すべきだ。
そんなGUIに依存した機能を持たせるべきじゃない。
534デフォルトの名無しさん
2012/11/19(月) 01:04:56.93 その選択状態がGUIとしてあらわす際に必要となる選択状態なのか、
そのプログラムの動作自体を構成するにおいて存在する必然性のある選択状態なのかによるね
そのプログラムの動作自体を構成するにおいて存在する必然性のある選択状態なのかによるね
535デフォルトの名無しさん
2012/11/19(月) 01:19:56.04 画面ごとのVMはいいけど、モデルごとのVMはめんどい
536デフォルトの名無しさん
2012/11/19(月) 10:20:32.56 >>532
GUIの選択状態を維持するためのモデルをViewModelという
GUIの選択状態を維持するためのモデルをViewModelという
537デフォルトの名無しさん
2012/11/19(月) 22:03:23.29 グリッドのボタン付けるときとかの
行ごとにVM作る派と作らない派の比率が知りたい
行ごとにVM作る派と作らない派の比率が知りたい
538デフォルトの名無しさん
2012/11/19(月) 22:15:46.48 行って何の話だよ
539デフォルトの名無しさん
2012/11/19(月) 22:20:34.86 WPFでデータグリッド使ったら負けだろ
それならWinForms使うわ
WPFならテンプレートで作れ
それならWinForms使うわ
WPFならテンプレートで作れ
540デフォルトの名無しさん
2012/11/19(月) 22:29:30.62 普通コンボボックスの項目毎VM作るだろ
541デフォルトの名無しさん
2012/11/19(月) 23:23:02.89 グリッドって何かと思ったらDataGridのほうか
542デフォルトの名無しさん
2012/11/20(火) 13:30:22.35543デフォルトの名無しさん
2012/11/20(火) 13:54:25.91 HeaderedItemsControlとかをこねくり回すのは常套手段なのか
544デフォルトの名無しさん
2012/11/28(水) 11:11:37.09 考え増やしたいから、
MVVM の各レイヤーの具体的な責務を教えてください
以下、テンプレ
M:
V:
VM:
MVVM の各レイヤーの具体的な責務を教えてください
以下、テンプレ
M:
V:
VM:
545デフォルトの名無しさん
2012/11/28(水) 11:22:45.65 >>544
> M:
ビューに関係無いデータ構造など変更部分。いわゆるモデル。UIスレッドと分離されてる事が望ましい。
> V:
ビューの見た目。極力もらったデータを表示したりインプットを上にあげるだけで何もしない。
> VM:
その両者を繋ぐもの。そのビューに関係するコーディネーター。ユニットテストできること。スレッド間の調整をここで吸収。
> M:
ビューに関係無いデータ構造など変更部分。いわゆるモデル。UIスレッドと分離されてる事が望ましい。
> V:
ビューの見た目。極力もらったデータを表示したりインプットを上にあげるだけで何もしない。
> VM:
その両者を繋ぐもの。そのビューに関係するコーディネーター。ユニットテストできること。スレッド間の調整をここで吸収。
546デフォルトの名無しさん
2012/11/28(水) 11:22:46.45 Set-Location : ドライブが見つかりません。名前 'M' のドライブが存在しません。
547デフォルトの名無しさん
2012/11/28(水) 11:34:44.90 一番ありそうな間違いは、WebMVCの典型的な間違った使い方のように
M: データ
VM: ロジック
としてしまうことだな
注文画面のMは注文処理クラス。VMはあくまでインターフェイスの差を吸収するだけ。
M: データ
VM: ロジック
としてしまうことだな
注文画面のMは注文処理クラス。VMはあくまでインターフェイスの差を吸収するだけ。
549デフォルトの名無しさん
2012/11/28(水) 12:47:28.47 使う側ならそれでいい
550デフォルトの名無しさん
2012/11/28(水) 14:02:32.93 Mのビジネスロジックがバックエンドに移って
結果的にMがデータだけになることはあるだろうけど
VMから見たら特に関係ない話。VMにビジネスロジックを書いてるわけじゃない。
結果的にMがデータだけになることはあるだろうけど
VMから見たら特に関係ない話。VMにビジネスロジックを書いてるわけじゃない。
551デフォルトの名無しさん
2012/11/28(水) 21:50:02.31 プレゼンテーションに関わるものとしてVMに置いとくべきデータやロジックがあるって意見も耳にするけど
自分には区別が難しいので極力Mに持たせるわ。
自分には区別が難しいので極力Mに持たせるわ。
552544
2012/11/28(水) 22:50:19.03 永続化しないデータとか?
553デフォルトの名無しさん
2012/11/28(水) 23:14:06.28 MVVM界隈の話はVMが強調されすぎるきらいがあるよな。
本当はMの方が遥かに重要なのに。どちかか省くなら迷わずM。
VMはMVVMパターンのアイデンティティだから仕方がないけど。
本当はMの方が遥かに重要なのに。どちかか省くなら迷わずM。
VMはMVVMパターンのアイデンティティだから仕方がないけど。
554553
2012/11/28(水) 23:14:52.00 間違えた省くならVM
555デフォルトの名無しさん
2012/11/29(木) 00:02:45.23 プレゼンテーションにかかわるものはVに書くんじゃないのか
556デフォルトの名無しさん
2012/11/30(金) 06:22:26.73 VMは、抽象的な、表示する「ための」データだな
例えば、VでItemsSourceにバインドして表示する一連のデータのコレクションとか
特定のデータを、手段は特定しないからとにかく強調表示しろ、ということを示すプロパティとか
Vは、具体的な、表示「の仕方」だな
同じVMからでも、同じコレクションを表示させる方法はListBoxだったりDataGridだったり単なるテキストだったり
どんな形で表示するのかはVが決めることでVMは手を出せない
また、強調表示の仕方にしても、単なる色変化だったり太字だったり、その部分だけ無意味にアニメーションさせたり
表示の仕方もVに任せられててVMは手を出せない
例えば、VでItemsSourceにバインドして表示する一連のデータのコレクションとか
特定のデータを、手段は特定しないからとにかく強調表示しろ、ということを示すプロパティとか
Vは、具体的な、表示「の仕方」だな
同じVMからでも、同じコレクションを表示させる方法はListBoxだったりDataGridだったり単なるテキストだったり
どんな形で表示するのかはVが決めることでVMは手を出せない
また、強調表示の仕方にしても、単なる色変化だったり太字だったり、その部分だけ無意味にアニメーションさせたり
表示の仕方もVに任せられててVMは手を出せない
557デフォルトの名無しさん
2012/12/11(火) 16:23:56.96 VBでペタポトプログラミングしか経験ない奴にパターン教えても一向に概念理解してくれない
ましてMVVMなんか到底無理無理
ましてMVVMなんか到底無理無理
558デフォルトの名無しさん
2012/12/11(火) 18:18:42.11 そんな動けばいいという考えの奴に何をいってもダメだ。
平気でModel部分にフォームやコントロール(UI)のインスタンスを食わそうとしたりするからな。
平気でModel部分にフォームやコントロール(UI)のインスタンスを食わそうとしたりするからな。
559デフォルトの名無しさん
2013/01/16(水) 20:12:33.47 MVVMって従来のASP.NETやWindowsフォームに慣れた人に説明するなら、
V Aspxファイル/フォーム
VM コードビハインドのcs
M 業務ロジック
と対応してて、従来のASP.NETやWindowsフォームとの大きな違いは、
ViewとViewModelがバインディングを介すると言う制約があるので分離しやすい、
と言う理解なんだけど大体合ってるかな?
V Aspxファイル/フォーム
VM コードビハインドのcs
M 業務ロジック
と対応してて、従来のASP.NETやWindowsフォームとの大きな違いは、
ViewとViewModelがバインディングを介すると言う制約があるので分離しやすい、
と言う理解なんだけど大体合ってるかな?
560デフォルトの名無しさん
2013/01/16(水) 22:46:55.45 全然
561デフォルトの名無しさん
2013/01/17(木) 23:06:47.49 大体合ってるみたいですね。
VB6脳なPGとJava/Struts脳なPG、どっちがMVVM覚えるのに向いてますかね?
VB6脳なPGとJava/Struts脳なPG、どっちがMVVM覚えるのに向いてますかね?
562デフォルトの名無しさん
2013/01/18(金) 08:37:02.03 >>561
全然違うと言われてんだろ
概念がそもそも違うがそれが分からない人間でも
・コードビハインドは画面と同一クラスだがVMは別クラス
・コードビハインドとViewは一対一だが、View:VMは1:n
・VSでコントロールをダブルクリックしてもコマンドが作られて自動的にバインドされたりしない
・そもそもコードビハインドはコードビハインドで存在するだろ
と、上げ出したらきりが無い
MVVM使うならちゃんとMVVMの概論くらいは理解させないとあとで自分が地獄行きだぞ
全然違うと言われてんだろ
概念がそもそも違うがそれが分からない人間でも
・コードビハインドは画面と同一クラスだがVMは別クラス
・コードビハインドとViewは一対一だが、View:VMは1:n
・VSでコントロールをダブルクリックしてもコマンドが作られて自動的にバインドされたりしない
・そもそもコードビハインドはコードビハインドで存在するだろ
と、上げ出したらきりが無い
MVVM使うならちゃんとMVVMの概論くらいは理解させないとあとで自分が地獄行きだぞ
563デフォルトの名無しさん
2013/01/18(金) 09:03:18.93 的外れな回答()キター
564デフォルトの名無しさん
2013/01/18(金) 14:28:02.15 いまだにVB6脳なんて他のこと何も向いてないだろ
565デフォルトの名無しさん
2013/01/18(金) 14:46:29.63 違うって言われてるのに合ってると受け取っちゃうのはどこにも向いてないな。
566デフォルトの名無しさん
2013/01/18(金) 17:07:06.64 全然合ってるかもしれない
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★8 [蚤の市★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★2 [蚤の市★]
- 最新版Z級クソ映画ランキングが決定! [牛丼★]
- 【食】「シャウエッセンは焼くべからず」暗黙のルールを破り売上高過去最高…日本ハム社員たちが「夜味」にかけた情熱 [ぐれ★]
- 公用車カーナビのNHK受信料「全額免除を」 千葉市議会、国に制度創設求める意見書可決 [少考さん★]
- 【音楽】松山千春、女性っぽい名前に親恨んだ「名簿には必ず女の方に入ってる。情けなかったりもしたけどね」 [湛然★]
- どこだ?強ええええバキぼんやは????
- ( ´・ω・` )どいてもらえます?
- 【画像】沖縄風蒸しパン
- 【埼玉】34歳無職、置き配📦を盗みまくる!その数、400点!😱 [718678614]
- 福井県民に頭おかしくされて悔しいからスレ立て
- なあ、「石破さんにもう一回やって頂く」って選択肢って…ないか? [976717553]
