MVVMについて語ろう

■ このスレッドは過去ログ倉庫に格納されています
2012/06/06(水) 11:03:33.21
WPF/Silverlight/WinRT開発の必須技術、MVVMについて語ろうではないか!
800デフォルトの名無しさん
垢版 |
2019/02/16(土) 20:37:11.87ID:9K5d8FVn
>>799
ん?それほかのUIフレームなら出来るん?
2019/02/16(土) 20:48:59.47ID:mveZudXk
アプリケーションのテストとしてはVM-M間で十分だと思うがな。
V-VM間はデータバインディングが意図通りか確認する程度だし。
少なくともFormsよりだいぶUIに近いところまで自動テストできるようになった。
802デフォルトの名無しさん
垢版 |
2019/02/17(日) 03:18:26.01ID:xGFF6jRx
>>799
ViewはMVの状態をそのまま表示するだけってのが理想だからね
セレニウムだっけ?WEBでのUIテスト出来る奴とかあるかもだけど、自動テストでそこまでの工数かけるのちときつくね?
VMのテストならプログラム的にしやすいからまだわかる
803デフォルトの名無しさん
垢版 |
2019/03/17(日) 03:07:47.90ID:ZfsC9V3u
>>698
バカには使えないありがたいアーキテクチャなので
普及とかはどうでもいい話だった
2019/03/17(日) 08:02:38.52ID:F89k9A+v
VisualWorksのPluggable MVCとどう違うのだろうか?
2019/03/17(日) 18:31:05.56ID:drnV2zGh
Pluggable MVCとはだいぶちがうだろう
Application Modelの間違い?
2019/03/17(日) 22:43:26.65ID:F89k9A+v
>>805
ValueHolder、AspectAdaptor、PluggaleAdaptorとか
2019/03/17(日) 22:56:42.27ID:drnV2zGh
ああ、そういうことか
もっと古典的でプリミティブなものを指しているのかと思った
http://aokilab.kyoto-su.ac.jp/documents/MVC/page4.html
2019/03/17(日) 23:43:40.49ID:F89k9A+v
結局、ビュー寄りのモデルを作るという発想は90年代初頭にVisualWorksで提唱されていたんじゃないかと。
2019/03/18(月) 01:01:31.84ID:Y1evCyMB
まあその結論で合っているんだけど

ただValueHolderとかのアダプターはあくまで
ApplicationModelのプロパティでデータバインドを実現するための道具に過ぎないので
https://matarillo.com/general/uipatterns.php#p3

MVVMとの類似性に言及するのであれば
Pluggable MVCではなく「ApplicationModelアーキテクチャ」と表現する方が誤解が無くてよいと思う
http://wiki.c2.com/?ModelModelViewController
810デフォルトの名無しさん
垢版 |
2019/03/18(月) 01:37:38.06ID:QCOM2t0u
もともとMVCとかでごちゃごちゃしてきたところにMVVMってことなんだろうな
デスクトップアプリに当てはめるのは微妙だったよ
2019/03/18(月) 07:19:28.89ID:Y1evCyMB
いやそういう基本的な理解の欠如ではない
812デフォルトの名無しさん
垢版 |
2019/03/18(月) 09:45:01.81ID:npgehNDX
デスクトップに当てはめるのが微妙ってのは何だ?仮想Dom的なものがあればおさまる話?

あとMVVMはMVCを改良したってよりもXAMLのバインディング気候に合わせたって側面の方が強いと思うがな
それを改良と言えばそうだけど
2019/03/18(月) 11:53:25.70ID:sCXVSnIM
もしや810はMVCとMVC2を混同してるとか?
814デフォルトの名無しさん
垢版 |
2019/03/19(火) 03:35:07.74ID:3jNcVOgT
実装者の能力不足が問題になるということは設計パターンが悪いんだろ
本当に理解してるか確認するが難しいようなのもダメだ
2019/03/19(火) 21:56:18.31ID:RkrxeYqz
バインディングで楽が出来れば、それで満足よ
816デフォルトの名無しさん
垢版 |
2019/03/19(火) 22:06:06.31ID:+Ccy7x/V
>>815
楽できるかどうかじゃなくて、
画面を直接触らずに済むかどうかの問題だろ。
817デフォルトの名無しさん
垢版 |
2019/03/22(金) 00:42:05.87ID:piAmWzDj
こりゃ天才ですわ
https://qiita.com/hiki_neet_p/items/e381c687b0644c0e4978
2019/05/30(木) 12:04:36.21ID:v6SxCCrX
暇だから数年ぶりにWPFでも触ってみようかなと思ってるけど、
乱立してた結局MVVMライブラリって結局何かに統一された?
Livetは死んでしまったみたいだねw
個人的には応援してだけど
2019/05/30(木) 19:49:16.08ID:YQby5rNV
>>818
統一されたかどうかは分からんが、

https://github.com/XamSome/awesome-xamarin/blob/master/README.md#mvvm

によると、ReavtiveUI, MVVVCross, Prismあたりが人気らしい
2019/05/30(木) 19:50:47.36ID:YQby5rNV
>>819
typo
x MVVVCross
o MVVMCross
821デフォルトの名無しさん
垢版 |
2019/06/19(水) 05:03:53.74ID:tVNS+22r
【出資】松本卓朗 人工知能詐欺【注意】
https://rio2016.5ch.net/test/read.cgi/rikei/1560859403/
2019/07/27(土) 02:26:32.72ID:0sBDs5f5
むっちゃ初歩的なところの質問になってしまうのですが、
WPF + Prismの環境で、画像ファイル(png)をウインドウ内にタイル状に並べたいのですが、
単体でパスをSourceに指定して、Converterを通して表示、までは出来たのですが、
これをListView上でおこなおうとすると、ListviewにBindingしているObservableCollectionにAddしても、
画像が表示されません。
何かわかりやすいサンプルや、チュートリアルなどありませんでしょうか?
823デフォルトの名無しさん
垢版 |
2019/07/27(土) 03:17:09.73ID:l8PDbbg2
>>822
チュートリアルは知らんが、リストにテキストやボタンは表示できるの?
出来るなら今単体でコレクションの要素とビューテワやってる関係を同じようにするだけだけど
2019/07/27(土) 10:04:07.36ID:0p0d4tKK
>>822
ListViewのTemplateをGridViewとしDataTemplate使うんじゃなかった? よく知らんけど。
825デフォルトの名無しさん
垢版 |
2019/11/01(金) 18:07:00.51ID:hqW7WiA1
>>822
どんな見た目作りたいの?
826デフォルトの名無しさん
垢版 |
2020/07/02(木) 15:07:15.93ID:WhLcbIiC
MMVMで言語を作る!
827デフォルトの名無しさん
垢版 |
2020/07/02(木) 17:47:32.50ID:WhLcbIiC
LLVMと勘違いした
828デフォルトの名無しさん
垢版 |
2021/01/27(水) 11:51:54.98ID:cJSBZXf9
てす
2021/01/27(水) 23:40:32.54ID:7/w7pDgL
Win Formsでやってる人いますか?
datagridviewで値によってセルの色を変える場合、どのようにしてますか?
2021/01/28(木) 01:44:53.83ID:aQj0oWVr
>>829
BindingListへの追加・変更・削除がイベントで拾えるので、
そのイベントハンドラで状態に応じてセル変更すればいいんじゃね?

汎用化するのであれば、BindingListを[M]、Gridを[V]とみなし、
その間を取り持つPresenterに移譲させるMVPパターンにするとかか

めんどくさがりやなので、前者でお茶を濁すかなぁ
2021/01/29(金) 20:29:07.30ID:czxZDJRE
MVVMはバインディングを活用するために考案されたパターンなので、WinFormsでは実践できません
2021/02/02(火) 19:09:08.24ID:LnwudBv/
ユーザーメリットなしのオナニー
2021/02/02(火) 21:40:04.70ID:WEqR7ZrT
ユーザーってのがアプリユーザならその通り
開発者は恩恵受けてるよ
834デフォルトの名無しさん
垢版 |
2021/04/06(火) 11:03:35.23ID:A0Gb+cSU
MVVM おっそ。
イベント発生元からトンネル経由しない前に捕まえて、View->ViewModelのイベントデリゲート呼ぶのが一番速い。
Commnad Bindingなんか使ってられない。 遅くて・・・
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況