MVVMについて語ろう
■ このスレッドは過去ログ倉庫に格納されています
2012/06/06(水) 11:03:33.21
WPF/Silverlight/WinRT開発の必須技術、MVVMについて語ろうではないか!
402デフォルトの名無しさん
2012/11/09(金) 11:31:24.11 コーディング段階は結構変わるがな
403デフォルトの名無しさん
2012/11/09(金) 22:45:20.26404デフォルトの名無しさん
2012/11/11(日) 00:32:37.19 すいません、よかったら教えてください
MVVM Light Toolkitで遊んでるんですが、テンプレートから作成されるModelの
IDataServiceのメソッドがActionを渡して結果をコールバックさせる形になっています
普通に戻り値や例外を返せばいいと思うのですが、あえてコールバックさせているのはなぜなんでしょう?
考えても理由がちっとも思いつかないので、もしわかったらお教えください
よろしくお願いします
MVVM Light Toolkitで遊んでるんですが、テンプレートから作成されるModelの
IDataServiceのメソッドがActionを渡して結果をコールバックさせる形になっています
普通に戻り値や例外を返せばいいと思うのですが、あえてコールバックさせているのはなぜなんでしょう?
考えても理由がちっとも思いつかないので、もしわかったらお教えください
よろしくお願いします
405デフォルトの名無しさん
2012/11/11(日) 00:36:08.24 >>401
MVVM以前からMVVM的な物が存在していたということ?
MVVM以前からMVVM的な物が存在していたということ?
406デフォルトの名無しさん
2012/11/11(日) 00:40:40.06 >>404
処理に時間がかかる場合にGUIが固まるのを防ぐためだろ
Webからデータを取ってくるような場合は言うまでもないが、
ローカルなファイルやデータベースからちょっと取ってくるくらいでも結構固まる
処理に時間がかかる場合にGUIが固まるのを防ぐためだろ
Webからデータを取ってくるような場合は言うまでもないが、
ローカルなファイルやデータベースからちょっと取ってくるくらいでも結構固まる
407デフォルトの名無しさん
2012/11/11(日) 00:53:11.62 >>406
それはasync、awaitの非同期処理はModel内部で行ってServiceのメソッドをasync宣言しない方がよい
ということでしょうか?
Serviceのメソッド自体が非同期メソッドであれば画面が固まったりしないですよね?
そこら辺も初めてさわったのでトンチンカンなこと言ってたらすいません
それはasync、awaitの非同期処理はModel内部で行ってServiceのメソッドをasync宣言しない方がよい
ということでしょうか?
Serviceのメソッド自体が非同期メソッドであれば画面が固まったりしないですよね?
そこら辺も初めてさわったのでトンチンカンなこと言ってたらすいません
408406
2012/11/11(日) 00:56:51.28 あ、MVVM Light Toolkitは別にasync、awaitのサポート環境を限定してないからかな?
逆にいうとasync、awaitが使える環境ならば別にコールバックさせる必要はないってことでいいんでしょうか??
逆にいうとasync、awaitが使える環境ならば別にコールバックさせる必要はないってことでいいんでしょうか??
409デフォルトの名無しさん
2012/11/11(日) 00:57:16.17 >>407
いやMVVM Light Toolkitは結構昔からあって、当時はasyncが無かっただけ
U氏はasyncは内部で使うものであってインターフェイスに使うなとか
思い込みだけで頓珍漢なことを言ってたが
今からasync前提で作るなら普通に使っていいよ
いやMVVM Light Toolkitは結構昔からあって、当時はasyncが無かっただけ
U氏はasyncは内部で使うものであってインターフェイスに使うなとか
思い込みだけで頓珍漢なことを言ってたが
今からasync前提で作るなら普通に使っていいよ
410406
2012/11/11(日) 01:01:22.02411デフォルトの名無しさん
2012/11/12(月) 00:22:58.42412デフォルトの名無しさん
2012/11/12(月) 20:04:14.60 MVVMでユーザコントロール使う場合のお作法?で質問があります
Page内に異なるユーザコントロールが2種類AとBがあります
Aはリストを表示するコントロールでBはその明細を表示するコントロールです
AとBにはそれぞれ専用のVMを作ってバインドしています
この時、A内のリストで選択されたものをBに渡したいのですがどう実装するのがスマートなんでしょうか?
現在は、PageのVMの中にAVMとBVMを保持していて、AVMのPropertyChangedイベント
をPageのVMの中で拾ってBVMのプロパティに設定しています
が・・・なんかいまいち感が
他にいいアイディアってあるのでしょうか?
Page内に異なるユーザコントロールが2種類AとBがあります
Aはリストを表示するコントロールでBはその明細を表示するコントロールです
AとBにはそれぞれ専用のVMを作ってバインドしています
この時、A内のリストで選択されたものをBに渡したいのですがどう実装するのがスマートなんでしょうか?
現在は、PageのVMの中にAVMとBVMを保持していて、AVMのPropertyChangedイベント
をPageのVMの中で拾ってBVMのプロパティに設定しています
が・・・なんかいまいち感が
他にいいアイディアってあるのでしょうか?
413デフォルトの名無しさん
2012/11/12(月) 20:12:25.87 ListBoxのItemsSourceにVMたくさん入ったコレクションセットして
ContentControlのContentか任意のViewコントロールのDataContextにListBoxのSelectedItemをバインドするのが楽じゃね
ContentControlのContentか任意のViewコントロールのDataContextにListBoxのSelectedItemをバインドするのが楽じゃね
414デフォルトの名無しさん
2012/11/12(月) 21:01:20.01 あぁそっか、そういうやり方があるんですね
勉強になります
ありがとうございました
もしよかったらもう一つ教えてください
実はAで選択されたItemをまた別のコントロールに今度は単一を設定するのではなくて
どんどん追加もしたいんですが・・・
そういう場合はどうするのが良いのでしょうか?
一つ一つの機能は徐々にわかってきたんですが、合わせ技になると発想がついてこないっす
勉強になります
ありがとうございました
もしよかったらもう一つ教えてください
実はAで選択されたItemをまた別のコントロールに今度は単一を設定するのではなくて
どんどん追加もしたいんですが・・・
そういう場合はどうするのが良いのでしょうか?
一つ一つの機能は徐々にわかってきたんですが、合わせ技になると発想がついてこないっす
415デフォルトの名無しさん
2012/11/12(月) 21:01:56.33 SelectedItemは同意だけど、VM自体はPage用1つだけでいいと思う
「AB両方の表示用を子プロパティとして持つクラス」のコレクションを
VMがプロパティとして公開して、Aがそれにバインド、
BがAのSelectedItemにバインド、が一番すっきりかな
「AB両方の表示用を子プロパティとして持つクラス」のコレクションを
VMがプロパティとして公開して、Aがそれにバインド、
BがAのSelectedItemにバインド、が一番すっきりかな
416デフォルトの名無しさん
2012/11/12(月) 21:14:21.92 >>415
なるほど、そういうやり方もあるのか
そこで一つ疑問が出てきてしまったんですが・・・
WebでMVVMのユーザコントロールのサンプルをいくつか見たところ
たまたま?すべてのサンプルがユーザコントロール毎に定義されていて
それを鵜呑みにしてたんですが・・・
親になるビューだけがVMを持つのとコントロールも独自にVMを持つケース
どういった感じで使い分けたらいいのでしょうか?
ちなみに今回の場合、AもBも表示するだけではなくて、それなりに個々の
コントロールに機能を持っています
Aはソート順を変えたり絞り込んだり、Bは詳細を編集したりなどです
なるほど、そういうやり方もあるのか
そこで一つ疑問が出てきてしまったんですが・・・
WebでMVVMのユーザコントロールのサンプルをいくつか見たところ
たまたま?すべてのサンプルがユーザコントロール毎に定義されていて
それを鵜呑みにしてたんですが・・・
親になるビューだけがVMを持つのとコントロールも独自にVMを持つケース
どういった感じで使い分けたらいいのでしょうか?
ちなみに今回の場合、AもBも表示するだけではなくて、それなりに個々の
コントロールに機能を持っています
Aはソート順を変えたり絞り込んだり、Bは詳細を編集したりなどです
417デフォルトの名無しさん
2012/11/12(月) 23:25:58.38 >>416
俺は複数のWindowでControl使いまわしてるから、Controlに専用のViewModel持たせてるよ
俺は複数のWindowでControl使いまわしてるから、Controlに専用のViewModel持たせてるよ
418デフォルトの名無しさん
2012/11/13(火) 00:54:12.58 Model側でコレクションを持つ場合、そのVMも子ModelのVMのコレクションを持つようにしてるかな
この場合Model側もObservableCollection的な通知機能付コレクションを使うことになるが
子ModelがVM持つほどの意義がない場合は親Modelのコレクションそのまま使ったりもする
この場合Model側もObservableCollection的な通知機能付コレクションを使うことになるが
子ModelがVM持つほどの意義がない場合は親Modelのコレクションそのまま使ったりもする
419デフォルトの名無しさん
2012/11/13(火) 04:42:27.67 414は単純に、「別のコントロール」側のItemsSourceになってるコレクションに
Addしてやればいいだけだと思う…
単純過ぎるので質問の意味取り違えてるかも知れないけど
416についてはケースバイケース
どうするのが、開発や保守しやすいか。それ次第でしょう
Addしてやればいいだけだと思う…
単純過ぎるので質問の意味取り違えてるかも知れないけど
416についてはケースバイケース
どうするのが、開発や保守しやすいか。それ次第でしょう
420414
2012/11/13(火) 20:36:52.73421デフォルトの名無しさん
2012/11/13(火) 20:43:05.86 >>419
1. ItemSourceになっているコレクションに誰が値を入れるべきか?
2. ItemSourceは誰が持つべきか?
の2点で悩んでいました
Page AとBを持っている親Window
A 全てのオブジェクトをリスト表示するコントロール
B Aで選択されたものを1つずつ追加してリストに表示するコントロール
となっています。
ABはそれぞれ再利用を考えているため、個別のVMを持ち、子のVMは親のVMが持つ事としようと考えています
なので2.についてはBで持つ事にしようと思います
まだ悩んでいるのは1.でして、今のところの実装は
1) AのListのSelectedItemをAVMのプロパティにバインド
2) PageVMでAVMのPropertyChangedイベントをハンドリング
3) PageVM内のロジックでBVMで定義したAddItem(自作)を呼び出す
4) BVMのAddItemメソッドないでObservableCollectionに追加
としています。
この中の2)の部分が特にしっくりこなくて気持ち悪いというのが、質問させていただいた経緯です
1. ItemSourceになっているコレクションに誰が値を入れるべきか?
2. ItemSourceは誰が持つべきか?
の2点で悩んでいました
Page AとBを持っている親Window
A 全てのオブジェクトをリスト表示するコントロール
B Aで選択されたものを1つずつ追加してリストに表示するコントロール
となっています。
ABはそれぞれ再利用を考えているため、個別のVMを持ち、子のVMは親のVMが持つ事としようと考えています
なので2.についてはBで持つ事にしようと思います
まだ悩んでいるのは1.でして、今のところの実装は
1) AのListのSelectedItemをAVMのプロパティにバインド
2) PageVMでAVMのPropertyChangedイベントをハンドリング
3) PageVM内のロジックでBVMで定義したAddItem(自作)を呼び出す
4) BVMのAddItemメソッドないでObservableCollectionに追加
としています。
この中の2)の部分が特にしっくりこなくて気持ち悪いというのが、質問させていただいた経緯です
422デフォルトの名無しさん
2012/11/13(火) 21:27:06.52 >>421
あまり参考にならないかもですけど、
もし俺が、そういうPage,A,Bの3つのVMでやるとしたら
Aのコンストラクタの引数で、デリゲートを受け取れるようにしておく
AではPropertyChangedのハンドラで、その受け取ったデリゲート呼ぶようにしておく
PageからA,Bをインスタンス化する際に、
BのAddItemを呼び出す処理や、Pageでやるべき処理もあればまとめて、
Aのコンストラクタに全部、ラムダ式で渡す
これで後は、AのPropertyChanged内だけで、PageやBの処理も全て完結
って感じにするかな…。
あまり参考にならないかもですけど、
もし俺が、そういうPage,A,Bの3つのVMでやるとしたら
Aのコンストラクタの引数で、デリゲートを受け取れるようにしておく
AではPropertyChangedのハンドラで、その受け取ったデリゲート呼ぶようにしておく
PageからA,Bをインスタンス化する際に、
BのAddItemを呼び出す処理や、Pageでやるべき処理もあればまとめて、
Aのコンストラクタに全部、ラムダ式で渡す
これで後は、AのPropertyChanged内だけで、PageやBの処理も全て完結
って感じにするかな…。
423デフォルトの名無しさん
2012/11/13(火) 21:40:19.58 >>422
ふむふむ、なるほど
レス読ませてもらって考えているうちに思ったんですが、AVMにItemが選択された
ことを通知するイベントを定義して、そこにラムダ式突っ込んであげれば良いのかな?
って気がしてきました
何が気持ち悪かったって、AVMにはほかにプロパティもあるわけで、PropertyChangedを
ハンドルしていると、別にPageには興味がないプロパティも飛んでくるわ
プロパティの名前をAVMで定数定義してAVMからもPageVMからも参照しようとすると、
MVVM Light ToolkitでVMのインスタンスを生成するときにエラーで落ちちゃって
プロパティ名をAとPageの双方に文字列で指定してた所なんで、一番キモイ所は解決された気がします
ただなんか手法が古臭いような気がしないでもないですがw
XAMLでこう書いてああ書いてすればサクっとできちゃうよ!的な解決策はさすがにないですよね?w
ふむふむ、なるほど
レス読ませてもらって考えているうちに思ったんですが、AVMにItemが選択された
ことを通知するイベントを定義して、そこにラムダ式突っ込んであげれば良いのかな?
って気がしてきました
何が気持ち悪かったって、AVMにはほかにプロパティもあるわけで、PropertyChangedを
ハンドルしていると、別にPageには興味がないプロパティも飛んでくるわ
プロパティの名前をAVMで定数定義してAVMからもPageVMからも参照しようとすると、
MVVM Light ToolkitでVMのインスタンスを生成するときにエラーで落ちちゃって
プロパティ名をAとPageの双方に文字列で指定してた所なんで、一番キモイ所は解決された気がします
ただなんか手法が古臭いような気がしないでもないですがw
XAMLでこう書いてああ書いてすればサクっとできちゃうよ!的な解決策はさすがにないですよね?w
424デフォルトの名無しさん
2012/11/13(火) 23:15:36.04 @ugaya40: 難しいとかいってる人はコードビハインドでMVVMしましょ
コイツ、MVVMでコードビハインド使うのはMVVMを理解していない無能のすること とか散々ほざいてたくせしてなに言っちゃってんのって感じなんだが。
「難しいとか言ってる人」とかつけ加えてて誤魔化してんじゃねーよ。
難しいとか難度の問題じゃないってわかんねーのかな?
コイツ、MVVMでコードビハインド使うのはMVVMを理解していない無能のすること とか散々ほざいてたくせしてなに言っちゃってんのって感じなんだが。
「難しいとか言ってる人」とかつけ加えてて誤魔化してんじゃねーよ。
難しいとか難度の問題じゃないってわかんねーのかな?
425デフォルトの名無しさん
2012/11/13(火) 23:18:09.19 コードビハインドを使用したものは神の怒りに触れ
永久にメモリリークの責め苦を受けるんじゃなかったのかw
永久にメモリリークの責め苦を受けるんじゃなかったのかw
426デフォルトの名無しさん
2012/11/13(火) 23:23:22.77 テンプレートにハンドラつけた場合じゃねそれ
427デフォルトの名無しさん
2012/11/13(火) 23:28:45.74 自作のライブラリーをコードビハインドに対応させるって言ってたし完全に方向転換したんじゃないのかな?
それ自体はいい事だとは思うけどね
ただ、間違った持論でMVVMの概念をめちゃくちゃにした罪は大きいよね
きちんと間違ってたことを認めればいいけど、あの歪んだ性格じゃ無理だろうな…
それ自体はいい事だとは思うけどね
ただ、間違った持論でMVVMの概念をめちゃくちゃにした罪は大きいよね
きちんと間違ってたことを認めればいいけど、あの歪んだ性格じゃ無理だろうな…
428デフォルトの名無しさん
2012/11/13(火) 23:33:30.98 必死にPSDって略語を流行らせようとしてるのに誰も使ってないのが泣ける、というか笑えるw
429デフォルトの名無しさん
2012/11/13(火) 23:39:32.37 PDS言ってるのは知ってるがPSDは知らんな
430デフォルトの名無しさん
2012/11/13(火) 23:40:55.84 DPSならしってる。全部知ってる。DPS全部
431デフォルトの名無しさん
2012/11/13(火) 23:43:51.07 社内ではよく使うがネットで使う機会が無い
432デフォルトの名無しさん
2012/11/13(火) 23:45:32.47 本人もあれだけど最近はアンチのがウザいな
直接煽られたことある人はそうなるのか
直接煽られたことある人はそうなるのか
433デフォルトの名無しさん
2012/11/13(火) 23:50:31.04 面白がってアンチに乗じてアンチごっこしてるやつが一番うざいし役に立たない
434デフォルトの名無しさん
2012/11/14(水) 00:37:00.22 MSの将来が不安なのでAndroidのMVVM環境教えてください
435デフォルトの名無しさん
2012/11/14(水) 00:42:27.62 JavaScriptでよければ
KnockoutがMVVMのフレームワークだよ
KnockoutがMVVMのフレームワークだよ
436デフォルトの名無しさん
2012/11/14(水) 00:47:11.25 Androidでバインディングは無理だと思う
コントロールがそれぞれ独自にXML読むクソ設計なんだぜ?w
コントロールがそれぞれ独自にXML読むクソ設計なんだぜ?w
437デフォルトの名無しさん
2012/11/14(水) 00:59:28.17 AndroidのフレームワークでバインディングやるならActivityのコード側でsetBindingみたいなメソッド呼んで
実装はリフレクションで頑張るしかないだろうけど
そんなことするくらいならPassive Viewの方がいいと思う
実装はリフレクションで頑張るしかないだろうけど
そんなことするくらいならPassive Viewの方がいいと思う
438デフォルトの名無しさん
2012/11/14(水) 01:13:42.40 さすがに今年中にBlend出してくれんとしんどいわMSさん
439デフォルトの名無しさん
2012/11/14(水) 01:24:18.30 Expression Studio 5まだー?
440デフォルトの名無しさん
2012/11/14(水) 02:03:13.02 android binding があるでしょ
441デフォルトの名無しさん
2012/11/14(水) 21:26:33.41 @ugaya40: 俺はWin8デスクトップにはスタートメニューが必要だと思うけど、シノフスキーさんの辞任と現時点で結びつけたりするわけもなく。ただその反対意見もまた極端なのが散見してるな。どっちもアホじゃないですか。
散々、極端なことを言ってたのはお前だろ?w
自分で自分がアホって自覚がちゃんとあるんだな。
散々、極端なことを言ってたのはお前だろ?w
自分で自分がアホって自覚がちゃんとあるんだな。
442デフォルトの名無しさん
2012/11/14(水) 21:27:50.23443デフォルトの名無しさん
2012/11/14(水) 21:49:40.33 >>441
お前さん、うがやのこと大好きなんだな
お前さん、うがやのこと大好きなんだな
444デフォルトの名無しさん
2012/11/14(水) 22:08:23.42 そのうちVSスレのキチみたいに発狂しちゃうんだろうな
445デフォルトの名無しさん
2012/11/14(水) 22:12:55.52 さすがに粘着が過ぎる
446デフォルトの名無しさん
2012/11/14(水) 23:17:24.64 まぁ、こういう個人攻撃はネットウォッチ板でやるもんだな
447デフォルトの名無しさん
2012/11/15(木) 10:53:44.15 >>442
そんなことでリークするわけない。動的に生成された要素は、XAMLでイベントハンドラが登録されたままでも
ツリーから外れた時点でGC対象になる。XAMLではなくコードビハインドなどから追加した場合は当然
WPF管理外のため、イベントハンドラによる強参照が当然残るのでそれがマズい場合があるだけ。
つまりWPF自身の問題などでは決してなく、あくまで愚かな人間によるミス。
例の宗教はあえてそのあたりをぼかす(信者の多くはそもそも理解してないまま復唱してるだけだろうが)
ことによって恣意的なイメージ操作を行っている。
そんなことでリークするわけない。動的に生成された要素は、XAMLでイベントハンドラが登録されたままでも
ツリーから外れた時点でGC対象になる。XAMLではなくコードビハインドなどから追加した場合は当然
WPF管理外のため、イベントハンドラによる強参照が当然残るのでそれがマズい場合があるだけ。
つまりWPF自身の問題などでは決してなく、あくまで愚かな人間によるミス。
例の宗教はあえてそのあたりをぼかす(信者の多くはそもそも理解してないまま復唱してるだけだろうが)
ことによって恣意的なイメージ操作を行っている。
448デフォルトの名無しさん
2012/11/15(木) 10:57:08.02 そもそもWindow自体を解放する手段ないだろ
449447
2012/11/15(木) 11:01:14.57 ItemsTemplate/DataTemplateの中のコントロールのイベントに対して
コードビハインドのイベントハンドラを登録したときの話な
試してみたら分かるが、要素を削除した後にGCが走れば
ちゃんとコントロールのファイナライザが呼び出される。
コードビハインドのイベントハンドラを登録したときの話な
試してみたら分かるが、要素を削除した後にGCが走れば
ちゃんとコントロールのファイナライザが呼び出される。
450デフォルトの名無しさん
2012/11/15(木) 11:25:23.41 メッセージに応答してダイアログを開いたりする汎用的なビヘイビアって本当に必要?
VMからダイアログ開きたいんだったら、IoCでVMからIOpenFileDialogServiceのような
インターフェイスを通してメソッドを呼び出せばいいだけの話だと思うんだけど。
わざわざメッセージ投げてVで処理するなんて複雑だしXAMLも無駄に汚れるしタイプセーフじゃないし。
特定のビューでしか使わないようなサービスにするまでもない処理ならメッセージもアリだと思うけど
その場合ビヘイビアにする意味はなく(再利用しないんだから)、コードビハインドで受けて処理すればいい話だよな。
VMからダイアログ開きたいんだったら、IoCでVMからIOpenFileDialogServiceのような
インターフェイスを通してメソッドを呼び出せばいいだけの話だと思うんだけど。
わざわざメッセージ投げてVで処理するなんて複雑だしXAMLも無駄に汚れるしタイプセーフじゃないし。
特定のビューでしか使わないようなサービスにするまでもない処理ならメッセージもアリだと思うけど
その場合ビヘイビアにする意味はなく(再利用しないんだから)、コードビハインドで受けて処理すればいい話だよな。
451デフォルトの名無しさん
2012/11/15(木) 17:05:54.35 テスト
452デフォルトの名無しさん
2012/11/15(木) 20:05:32.67 行き過ぎたBlend主義。
俺もサービスにするかな。
俺もサービスにするかな。
453デフォルトの名無しさん
2012/11/15(木) 22:36:46.09 VMからのメッセージでアニメーションを開始させたいときなんかにはビヘイビアが便利かも
と思ったけどそんなビューの細かいことをVMで意識するのも本末転倒な気がするな
そこはメッセージとXAMLは直接繋がないと割り切った方がいいのかも
と思ったけどそんなビューの細かいことをVMで意識するのも本末転倒な気がするな
そこはメッセージとXAMLは直接繋がないと割り切った方がいいのかも
454デフォルトの名無しさん
2012/11/15(木) 22:46:23.39 俺はビヘイビアで済ませたほうが楽かな
455デフォルトの名無しさん
2012/11/15(木) 22:52:24.24 Livet教のMVVM…ドカタMVVM
IoC使うPrism系のMVVM…JavaっぽいMVVM
IoC使うPrism系のMVVM…JavaっぽいMVVM
456デフォルトの名無しさん
2012/11/15(木) 23:15:07.41 MVVM Light…光のMVVM
457デフォルトの名無しさん
2012/11/17(土) 00:05:50.69 よく話にでるlivetってライブラリ落としてみたけどクラス名にまでlivetって入ってんのね。
ダサすぎる。
ダサすぎる。
458デフォルトの名無しさん
2012/11/17(土) 00:08:09.15 てゆーか、9割以上がPrismとMVVM light toolkitのパクリコードってのはどうなの?
Ugayaはずいぶんえらそーなことを言ってたがただのパクリライブラリじゃんか。
Ugayaはずいぶんえらそーなことを言ってたがただのパクリライブラリじゃんか。
459デフォルトの名無しさん
2012/11/17(土) 06:32:58.08 そうだなC#はJavaのパクリだもんな
つーかソース見たことはないが本当にパクリなら大問題だしそれならここで言ってないで大々的に批判すればいいんじゃないか
つーかソース見たことはないが本当にパクリなら大問題だしそれならここで言ってないで大々的に批判すればいいんじゃないか
460デフォルトの名無しさん
2012/11/17(土) 09:52:41.30 >>459
見ればわかるがおおざっぱに言えばLivetの独自部分でメソッドキャッシュとT4コンバーターぐらいじゃね?
C#っつーか.NET Frameworkだろ
1.0のころはパクリだったんじゃないの?
実際Javaがなければ今と同じ1.0は生まれてなかった
見ればわかるがおおざっぱに言えばLivetの独自部分でメソッドキャッシュとT4コンバーターぐらいじゃね?
C#っつーか.NET Frameworkだろ
1.0のころはパクリだったんじゃないの?
実際Javaがなければ今と同じ1.0は生まれてなかった
461デフォルトの名無しさん
2012/11/17(土) 10:11:39.47 なんだコード盗用とかじゃなくて概念の話だったのか
462デフォルトの名無しさん
2012/11/17(土) 11:07:14.48463デフォルトの名無しさん
2012/11/17(土) 12:09:36.74 >>461
綺麗に言えば、車輪の再発明?
ぱくりライブラリと言われても仕方がない代物ではある
何を目的にやってるのか分からないところもあるし
インフラを乱立させたって混乱するだけだし
ドキュメントやサンプル充実させて裾野を広げるってわけでもないし
尾上が自身の狂った思想から少しでもずれてる意見を発見すると
死ぬまで粘着されるしな
尾上は自分が日本での唯一のMVVM啓蒙者になるために
他人がおいそれと語れないようにしてるだけ
完全に癌でしかない
綺麗に言えば、車輪の再発明?
ぱくりライブラリと言われても仕方がない代物ではある
何を目的にやってるのか分からないところもあるし
インフラを乱立させたって混乱するだけだし
ドキュメントやサンプル充実させて裾野を広げるってわけでもないし
尾上が自身の狂った思想から少しでもずれてる意見を発見すると
死ぬまで粘着されるしな
尾上は自分が日本での唯一のMVVM啓蒙者になるために
他人がおいそれと語れないようにしてるだけ
完全に癌でしかない
464デフォルトの名無しさん
2012/11/17(土) 12:14:26.42 MVVMの土台として画面遷移は極めて重要だと思うが、そこがいい加減なのはいただけない
同期ダイアログによる遷移のみってWinFormsかよw WinRTじゃそんなもん使えないぞ?
同期ダイアログによる遷移のみってWinFormsかよw WinRTじゃそんなもん使えないぞ?
465デフォルトの名無しさん
2012/11/17(土) 12:30:02.96466デフォルトの名無しさん
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 人格の話は別の板でやれ。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 最新版Z級クソ映画ランキングが決定! [牛丼★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★2 [蚤の市★]
- 【食】「シャウエッセンは焼くべからず」暗黙のルールを破り売上高過去最高…日本ハム社員たちが「夜味」にかけた情熱 [ぐれ★]
- 公用車カーナビのNHK受信料「全額免除を」 千葉市議会、国に制度創設求める意見書可決 [少考さん★]
- 神田沙也加さん元恋人で元俳優の前山剛久 六本木のメンズラウンジ勤務を報告「真叶(まなと)です。よろしく」 [muffin★]
- 地震 [Hitzeschleier★]
- 変な人「俺は正しい!お前らは間違っている!」←大体こいつのほうが迷惑で間違ってる件について
- 理想「VTuberは声も良くて声優並みの演技ができる」→現実「一般人ババアのような声な上に演技も素人でした」
- ココアさん好き好き大好き
- 【朗報】南鳥島のレアアース、中国産の「20倍の純度」青山繁晴氏「日本は資源大国」日本復活のファンファーレが鳴り響く! [673057929]
- 「妨」という字が女へんという事実…
- (´・ω・`)おはよ
