- 1 名前:デフォルトの名無しさん mailto:sage [2022/04/11(月) 05:10:34.19 ID:LqBiqZMV.net]
- WPF(Windows Presentation Foundation)について語るスレ。
前スレ WPF(.NET, WinUI) GUIプログラミング Part28 https://mevius.5ch.net/test/read.cgi/tech/1642624840/ 関連スレ Windows 10 UWPアプリ開発Part 3 https://mevius.5ch.net/test/read.cgi/tech/1627556967/ コードを貼る場合は以下のサイトの利用をお勧め。 https://ideone.com/
- 799 名前:デフォルトの名無しさん [2022/10/19(水) 19:38:31.73 ID:gHfHnf27.net]
- 暇だったんでXAMLやってみた。gridが基本らしいのでテキトーにサイトから
コピペで張り付けて実験。一応何とかできるようになった。 開発の方に戻るかも知れないのでアンチWPFだったけど再挑戦してみようかなと、 思って。意外とWFPの仕事があるらしいな。 最初はデータバインディングで諦めたがwinforms風の作り方もできるらしいし。 (WPFはデータバインディングが必須だと勘違いしてた) で、みんなはバリバリ、データバインディングしてんの? 凄いわ〜。
- 800 名前:デフォルトの名無しさん mailto:sage [2022/10/19(水) 19:48:19.28 ID:hmhTQwmw.net]
- 逆にWPFのデータバインディングがわからないって知能を疑うレベルなんだが
何がわからないのかがさっぱりわからん INotifyPropertyChangedを実装したオブジェクトをペタッと貼り付けるだけだろ コマンドとデータバインディング縛りが面倒でどうしてそんなことしなきゃいけないのかわからんと言うならまだ理解できる
- 801 名前:デフォルトの名無しさん [2022/10/19(水) 19:51:24.12 ID:CSq9FDVE.net]
- 思い込みだけでアンチに走ってるやつたくさんいるよな
- 802 名前:デフォルトの名無しさん mailto:sage [2022/10/19(水) 19:52:34.04 ID:PkgPUfpm.net]
- 面倒なだけだもんな
- 803 名前:デフォルトの名無しさん [2022/10/19(水) 19:54:17.30 ID:gHfHnf27.net]
- >>800
プリズムというのを使わないとやってられん、 と聞いたけどどうなん?
- 804 名前:デフォルトの名無しさん mailto:sage [2022/10/19(水) 19:59:29.50 ID:hmhTQwmw.net]
- >>803
それは誰かの気のせい Prismは無駄に複雑だからそれがわからないのはわからんでもない CommunityToolkit使えばいい
- 805 名前:デフォルトの名無しさん [2022/10/19(水) 20:30:50.69 ID:gHfHnf27.net]
- >>804
そうなんだ。 自力で習得したの? 周りに聞くとしたらここ位しかないわ〜。
- 806 名前:デフォルトの名無しさん mailto:sage [2022/10/19(水) 21:11:06.79 ID:fx6wlbL4.net]
- 最初はなんかだめんどうだなこれとか思ってたけど
いつのまにやらバインドないとダメな体へ
- 807 名前:デフォルトの名無しさん mailto:sage [2022/10/19(水) 22:52:15.49 ID:MjHpqF4H.net]
- >>803
Prismはオワコン
- 808 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 08:31:41.48 ID:Jn5DzN+i.net]
- Prism 懐かしい言葉。
PrismLibralyのぞいてみたら、更新止まっているようだね。 まぁ 他のエクステンションが充実して、もう不要だけれど、リージョンにはちょっと魅力あるな。
- 809 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 08:56:39.10 ID:fA9BY5Dh.net]
- ReactivePropertyが流行ったのもPrismが重厚すぎるせいだったんだろうな
今全然使うことないや そもそもView層にロジック置いてリアクティブスパゲッティとか茹でたらテストめっちゃめんどいし結局INotifyPropertyCanged作らなきゃメモリリークするし
- 810 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 09:06:41.37 ID:Jn5DzN+i.net]
- >>809
まぁ 今や、View,Domain,Infrastructure分離の時代。 ViewやViewModelにロジック入れるとは思えないけどw メモリリークは対策したんじゃなかったっけ? かずきが言っていたような・・・
- 811 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 09:14:02.00 ID:fA9BY5Dh.net]
- >>810
> まぁ 今や、View,Domain,Infrastructure分離の時代。 いつの話をしてるんだw それはMVVMとはまた別の話 というかもう少し原始的な話
- 812 名前:ニューノーマルの名無しさん mailto:sage [2022/10/20(木) 09:17:17.47 ID:Jn5DzN+i.net]
- >>811
分離していないのか?
- 813 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 09:17:56.01 ID:Sw/y3Njc.net]
- DDDだろ?
話のレイヤーが違う
- 814 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 09:53:01.29 ID:vhdcBzgB.net]
- >>810
ReactivePropertyはそれを入れるんだよ まあ少々なら入ってもいいんだが調子に乗ってスパゲッティ茹でるやつ多すぎ問題が発生してな
- 815 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 11:46:42.17 ID:1rcGbOTK.net]
- PrismでもBidableBaseを使う程度だとコレ以上ないシンプルな実装なので
遅くなるなんてあり得ないんだけどね 嘘だと言うならソースを見ればいい 評判悪かったのはDIの実装だが、DryIocを取り込んた後は悪くなかったんだがね
- 816 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 11:50:25.85 ID:1rcGbOTK.net]
- BindableBaseのソース
https://github.com/PrismLibrary/Prism/blob/master/src/Prism.Core/Mvvm/BindableBase.cs
- 817 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 11:56:34.23 ID:k5cX4DSs.net]
- DIって何だっけ?
シングルトンでええやんって奴か
- 818 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 12:32:08.36 ID:EjoMYd4Y.net]
- BindableBaseだけならオレオレ実装で十分だから
- 819 名前:デフォルトの名無しさん mailto:sage [2022/10/20(木) 20:22:28.34 ID:4NfigoYb.net]
- >>814
いろいろ繋げると玄人になった気分が味わえるからな ピタゴラスイッチみたいなもんよ
- 820 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 08:38:15.01 ID:7kH42VO8.net]
- >ViewやViewModelにロジック入れるとは思えないけどw
ビジネスロジックじゃなくてプレゼンテーションロジックは普通に入れるだろ。
- 821 名前:デフォルトの名無しさん [2022/10/21(金) 18:37:34.29 ID:/3dSptxz.net]
- >>807
危うく手出すところだった。
- 822 名前:デフォルトの名無しさん [2022/10/21(金) 19:51:23.73 ID:/3dSptxz.net]
- 質問なんだが、コントロールとのデータのやり取りは全てデータバィンディングに
するの? テキストボックスくらいならまだしもコモンコントロールでいうListViewも データバィンディング? 大変そうなんだが。
- 823 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 20:12:20.19 ID:fkhZIfDj.net]
- アイテムテンプレートという各アイテムのビジュアル表現をxamlで一度定義すれば後は勝手にアイテムの数だけコントロール作ってくれる
ViewModelはアイテムを表すオブジェクトのListを保持してりゃいいだけ
- 824 名前:デフォルトの名無しさん [2022/10/21(金) 20:16:17.14 ID:fkhZIfDj.net]
- ListViewの話ね
最初の質問に関してはデータバインディング使いたくなきゃ使わなくてもいいが その場合、自分でコントロールの中身を手動で更新 これがめんどくなければ使わなくてもいいんじゃないか
- 825 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 20:44:00.37 ID:dr0clczO.net]
- そのうちバインディングでないと面倒くさくなるよ
- 826 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 20:59:53.80 ID:PtHJlLEa.net]
- 素でバインディングじゃ無理な場合はビヘイビアというのでイベントをVMに通知したりする
それでも無理ならサービスクラスをViewからVMにインジェクションするんだが コレは結構インチキ臭い(MVVMとして) でもScrollIntoViewなんかを実行するならサービスクラスでやるしか無いんだよな
- 827 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 21:01:42.97 ID:5OVp+/fG.net]
- >>826
普通にコードビハインドでいいしビヘイビアでもできるだろ
- 828 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 21:06:09.93 ID:l9aLYoss.net]
- >>822
バインディングした方が楽な時だけすればいい。 コントロールに名前つけてプロパティに値設定してやるオーソドックスなやり方の方が 結局メンテもしやすくコードもすっきりする事も多い。
- 829 名前:デフォルトの名無しさん [2022/10/21(金) 21:13:29.65 ID:/3dSptxz.net]
- いろいろ助かる。
素人すぎてどういうときにバインディングすればいいかわからんな。 ま、いろいろ試すしかないな。 >>自分でコントロールの中身を手動で更新 今までそうしてたから苦ではないけどな。
- 830 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 21:18:16.45 ID:PtHJlLEa.net]
- >>827
ScrollIntoViewのビヘイビアは作ってみたが、一度表示したアイテムがユーザーのスクロールで範囲外になった時 それを再び表示するとなると、一度nullを入れてからアイテムをセットしないと動かない 美しくないからボツにしてサービスクラスにしました
- 831 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 21:59:58.51 ID:SIBduJ8N.net]
- ユーザーコントロール作るの大変なのどうにかしてほしいわ
添付プロパティとかなんであんな実装大変なんや
- 832 名前:デフォルトの名無しさん mailto:sage [2022/10/21(金) 22:46:07.26 ID:5OVp+/fG.net]
- >>831
俺もそこは気に入らんけどコードスニペットや拡張メソッド使えばそこまで大変ではないし添付プロパティなんか滅多に実装することないだろ
- 833 名前:デフォルトの名無しさん mailto:1342 [2022/10/22(土) 12:06:28.89 ID:hKX+QcZc.net]
- とにかく面倒くさいという事がよくわかる
いやーー早期にReactに移っといて良かったわーー
- 834 名前:デフォルトの名無しさん mailto:sage [2022/10/22(土) 12:08:49.73 ID:LN75Th25.net]
- MAUI HighSchoolは芸風変えたのか
- 835 名前:デフォルトの名無しさん [2022/10/23(日) 11:28:55.52 ID:a+gf5qbq.net]
- データバィンディングについて良いHPあったら紹介を求む!
- 836 名前:デフォルトの名無しさん mailto:sage [2022/10/23(日) 12:50:54.71 ID:PeJMt3DI.net]
- おかずきさんのブログ見ればいいじゃん
- 837 名前:デフォルトの名無しさん [2022/10/23(日) 15:15:46.33 ID:a+gf5qbq.net]
- >>836
そのブログではプリズム使うみたいですね。 止めときます。。
- 838 名前:デフォルトの名無しさん mailto:sage [2022/10/23(日) 22:19:07.90 ID:QAzLw4mz.net]
- バインドするだけなら、nugetにあるReactiveProperty使ったらどう?
あれが1番簡単そうに見えたけど
- 839 名前:デフォルトの名無しさん mailto:sage [2022/10/23(日) 23:16:12.48 ID:UYu25ZB7.net]
- データバインディングの勉強目的なら最初は何も使わずにINotifyChangedPropertyぐらい自前実装でいいだろ
10行未満なんだし
- 840 名前:デフォルトの名無しさん [2022/10/24(月) 05:52:10.08 ID:KSxIdWu8.net]
- バィンディングっていろいろ手法があるみたいでその辺も混乱の元ですね!
- 841 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 08:24:55.30 ID:faJr3BKh.net]
- INotifyChangedPropertyの実装に関しては、prismもmicrosoft.toolkitもほぼ同じもの
Xaml側は全く同じだからどのHPを見ても何も問題ないんだけどね prismで勉強して、些末な違いをMSのドキュメントで補完すればいいんじゃないかな
- 842 名前:デフォルトの名無しさん mailto:1342 [2022/10/24(月) 09:19:40.79 ID:1MyEkAqJ.net]
- React界隈じゃ
不用なのものを徹底的に排除して突き詰めてるのに、 XAML界隈は ライブラリー!ライブラリー!ライブラリー! ドヤ顔ライブラリー房のこの違い...
- 843 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 10:44:59.17 ID:chiatfyX.net]
- Reactに対応するのはXAMLじゃなくBlazorなので
- 844 名前:デフォルトの名無しさん [2022/10/24(月) 14:16:41.10 ID:qez9jhSx.net]
- x:Bindのない環境には戻れなくなったな
- 845 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 14:22:42.94 ID:4Vi8uVIi.net]
- >>844
残念ながらUWPとUnoでしか使えないx:Bindはオワコンだ
- 846 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 16:39:17.71 ID:TU0Y+jHJ.net]
- x:bind最新のWinUI 3で使えないんだっけ?
- 847 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 18:22:08.47 ID:tdhvInBd.net]
- >>842
これ何の話してんの?
- 848 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 18:23:57.86 ID:D4BkPogX.net]
- やってみた。
x:BindはWinUI3もMAUIも使えるよ。 安心しな。
- 849 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 18:38:10.90 ID:ahW9XqJY.net]
- いやWinUIでも使えるわx:Bind
- 850 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 18:46:31.31 ID:DN4O5MAE.net]
- UWP作ってないしx:bind使ったこと無かったわ
その使い心地を見せて貰おうかっ
- 851 名前:デフォルトの名無しさん [2022/10/24(月) 20:07:56.89 ID:KSxIdWu8.net]
- >>838
今日入れてみた。試してみる。 いろいろフレームワーク大すぎ。 MSが良いもの出さないからか。 こっちでの開発ではプリズム、 異動先ではReactiveProperty使用とか。 難儀やなぁ。
- 852 名前:デフォルトの名無しさん mailto:sage [2022/10/24(月) 20:38:47.05 ID:TU0Y+jHJ.net]
- x:bindはUWPでコンパイル時バインドで速いという触れ込みがあったから使ったみたが速度差体感できずコンパイル時の型チェックもうざいので俺はbindindに戻ったけど
- 853 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 00:26:50.52 ID:YzZqh/Jo.net]
- コマンドに使用可否だけじゃなくて、表示非表示も持ってほしいよな
- 854 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 17:32:19.08 ID:ZIbwJZxR.net]
- それは同意
- 855 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 17:39:08.19 ID:qnnhkHib.net]
- VisibleとEnabledを自己バインドすればいいだけじゃね
- 856 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 18:12:35.24 ID:ZpBlkdg7.net]
- x:Bindはイベントがバインド出来てFormsのやり方MVVMででコーディングできるんだっけど
そこらへんをアピールするつもりはないようだね ビヘイビアが難しいわけじゃないけど冗長だから使わずに済むのも大きいね
- 857 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 18:52:32.57 ID:ZIbwJZxR.net]
- >>855
それじゃ足りないケースがあると思う
- 858 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 18:58:07.50 ID:tQ39k2n1.net]
- どういうケースを想定してるのかわからんわ
disabledの時に消せばいいんじゃないのか?
- 859 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 19:22:02.07 ID:ZIbwJZxR.net]
- そもそも表示しない
表示するが無効 表示するが有効 この3通りをやりたい時がある
- 860 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 19:28:01.21 ID:E0pz5hZT.net]
- get -> そもそも ? hidden : 表示する ? visible : hiddem;
- 861 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 19:30:03.09 ID:tQ39k2n1.net]
- そんなことしたいと思ったことないからわからんけどコマンドとのバインディングでしなきゃいけないなら継承するしかないな
俺ならViewModelのプロパティを使うが
- 862 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 19:33:01.57 ID:ZIbwJZxR.net]
- 例えば、ログイン機能があるアプリとかでログインしてなきゃ更新ボタンをそもそも表示しない
で、ログインして更新ボタンを押して更新中になったら一時的に無効に切り替えてとか たまに、表示/非表示と有効/無効を別に扱いたいときがある
- 863 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 19:38:27.55 ID:FKrq6Yl8.net]
- 単純にコードビハインドでやれば良くね? 頭悪いの?
- 864 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 19:39:39.54 ID:qnnhkHib.net]
- それログインボタン以外の管理用機能が必要になった時どうすんの
管理者フラグをVMに用意して管理者用コントロールパネルごと消すべきだろ 個々のコマンドじゃなく
- 865 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 19:46:40.08 ID:ZIbwJZxR.net]
- 例えが悪いなら謝るが
別にボタンの他に、メニューにバインドされる可能性だってあるし 俺が昔必要に思った時のケースは思い出せねぇわ
- 866 名前:デフォルトの名無しさん [2022/10/25(火) 20:07:37.74 ID:IkY374Tt.net]
- MVVM? 初心者だがやはり有用性が理解できんw
- 867 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 20:12:35.43 ID:qnnhkHib.net]
- そりゃ初心者は理解できんかもな
大きく複雑なプログラムを作る時に威力を発揮するものだから
- 868 名前:デフォルトの名無しさん [2022/10/25(火) 20:16:47.78 ID:IkY374Tt.net]
- >>867
らしいね。 みんなもそうな大きく複雑なもの作ってるんだ?
- 869 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 21:19:57.69 ID:YzZqh/Jo.net]
- そもそも世の中に転がってるシステムに疎結合なんて不要な気がするわ
設計に時間かけれる人は自己満足でやってもいいかもしれないけど
- 870 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 21:36:23.84 ID:Z3XSYrgl.net]
- 保守せずに作り逃げするならいいかもね
- 871 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 21:43:21.12 ID:M72P4hA2.net]
- WPFの主用途はゴリゴリの業務アプリだから、複雑なのはUIではなく業務フローなんだよね
ただ画面数が多いだけだ
- 872 名前:デフォルトの名無しさん [2022/10/25(火) 21:46:12.07 ID:IkY374Tt.net]
- バレない程度にどんなもん作ってんだい?
- 873 名前:デフォルトの名無しさん [2022/10/25(火) 22:04:24.76 ID:IkY374Tt.net]
- >>869
UIとロジックは疎結合にしろ、てもう聞き飽きた。 そんなに大事なんかね。
- 874 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 22:37:19.01 ID:YzZqh/Jo.net]
- >>873
VMが出てきたせいで、コードビハインドは悪、画面に関わるコードはすべてVMに書くべきってイメージが出来ちゃったのがなぁ
- 875 名前:デフォルトの名無しさん mailto:sage [2022/10/25(火) 22:39:03.01 ID:xY6yVmpD.net]
- それ狂信者が勝手に言ってるだけだぞ
マイクロソフトはむしろコードビハインドを推奨してる
- 876 名前:デフォルトの名無しさん mailto:1342 [2022/10/25(火) 23:21:20.95 ID:vN3+STZB.net]
- >>875
まじ? 聞いた事ないけど
- 877 名前:デフォルトの名無しさん [2022/10/26(水) 05:51:47.91 ID:s6MGFJdq.net]
- >>871
しかも業務アプリって見栄えはあまり 重視せず、使い勝手や速度が優先されるからな。 ボタンが回転したりそんなのどうでもいいわ。 今まで通り非MVVM?のイベントドリブンだとボタンを 押したときの挙動はそのイベントハンドラ(だけ)に記載 されるているのは間違いない訳でソースも追いやすいし、修正、 機能追加もし易い。 自分は知識としてMVVM? 学習してるけど使うことはなさそうだなぁ。
- 878 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 14:31:05.80 ID:PkKdzRr+.net]
- 極論かもしれないが、MV*って結局ユニットテストを作成するかどうかだと思っている。
ユニットテストが要らないような規模のプロジェクトなら好きにすればいいのではないかと。
- 879 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 14:44:53.94 ID:JLiTjZTy.net]
- 規模といっても色々あるからね
大抵の業務アプリでは全体としてどれほど大規模で複雑なシステムでもただ画面数が多いだけで個々の画面に対する要件はシンプルなので、 UIに関するロジックのユニットテストは手動ポチポチテストと一緒にやっちゃう、でも問題なくスケールする
- 880 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 15:16:34.54 ID:Do8Z1/L1.net]
- Excelのあの膨大なコマンド全部手動テストすんの?
- 881 名前:デフォルトの名無しさん mailto:1342 [2022/10/26(水) 15:27:00.02 ID:SDTA9bMp.net]
- MVVMじゃないとテストコード書けないと思ってる○○www
- 882 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 15:29:46.56 ID:Do8Z1/L1.net]
- 書けるけどさあ
結合テストだけって結局バグ取り切れないから意味ないんだよね
- 883 名前:デフォルトの名無しさん mailto:1342 [2022/10/26(水) 15:37:15.22 ID:SDTA9bMp.net]
- テストコード書くためにMVVM選択するつうのは余りにもセンスがない
- 884 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 15:47:49.54 ID:Do8Z1/L1.net]
- 知らんのか?
今の開発はテスト最優先だぞ しつこくXAML推しして他の言語disってたやつがBlazor知ったらすぐそれかい
- 885 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 16:08:44.17 ID:kkDIWaCi.net]
- 手動テストするって言っておきながら
テストコード書くと言われても突然前提ひっくり返すなよ
- 886 名前:デフォルトの名無しさん [2022/10/26(水) 16:08:54.14 ID:V1iY34//.net]
- MVVMだと昔自分が書いたコード見てもシンプルで理解しやすいな
- 887 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 16:51:05.25 ID:If5hDlW1.net]
- >>885
もしかしてロジック全部VMに書いてるの?だとしたらその方が問題だろう 普通はビュー(MVVMならVVM)とモデルの分離は大前提で、少なくともモデルはテスト書くでしょ その上でビューのロジックの単体テストまで自動でやるかどうかというだけの話なわけだけど、なんか根本的なところを勘違いしてないかな
- 888 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 16:56:01.50 ID:Do8Z1/L1.net]
- VMをテストすればVのテストは要らんわけだがこれを分離しないならVでバグる可能性もあって面倒だぞ
MAUIとかスマホでテストすんのか
- 889 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 17:03:18.84 ID:If5hDlW1.net]
- いやMVVM使おうが画面と繋いで最終的な手動テストはさすがにやるだろう。
モデルの単体テスト、UIの手動テスト、そしてそれに加えてVMの単体テストを仮にやるなら、VMの単体テストで確認すべきは当然VM固有のロジックのみだ。 まあVMのロジックに対する網羅的なテストをUI経由で毎回やらなくていいから継続的な開発の効率化には寄与するだろう。 ただ、まともな組み方をしてれば一般的にはVMのロジックはかなり少ないはずで、そこまで大きな差にはならない。まともな組み方をしてればね。
- 890 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 17:07:13.67 ID:kkDIWaCi.net]
- >>889
スレの流れ読めよ...
- 891 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 17:16:08.73 ID:7O9MyaKx.net]
- だろおじさん登場
- 892 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 19:10:37.06 ID:CC/Wl8Nq.net]
- うちの会社はテストコードなんて書かないぞ
- 893 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 19:39:25.80 ID:r7FL/086.net]
- ロジックっつーか、どのコマンドを発したらどのプロパティがどう変わるかくらい単体テストでできるだろ
これ手作業でやんのかよw
- 894 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 19:44:42.44 ID:uG7XKevD.net]
- テスターに任せればいいだろテストなんて
- 895 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 19:51:49.32 ID:r7FL/086.net]
- 人件費使うんかい
- 896 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 20:10:49.17 ID:fUqihkJz.net]
- なんかエラーでたけど報告面倒やしOKにしとこ。
- 897 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 20:12:09.59 ID:fUqihkJz.net]
- テスト終わりました。特に問題ありませんでした。
- 898 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 20:15:01.87 ID:7O9MyaKx.net]
- テスト結果を口頭報告する世界
- 899 名前:デフォルトの名無しさん mailto:sage [2022/10/26(水) 20:16:09.97 ID:LaQM1xmg.net]
- >>874
あくまでイメージなだけで初心者がそれを信じてしまってるのがなぁ
|
|