WPF(Windows Presentation Foundation)について語るスレ。
前スレ
WPF(.NET, WinUI) GUIプログラミング Part30
https://mevius.5ch.net/test/read.cgi/tech/1667010874/
関連スレ
Windows 10 UWPアプリ開発Part 3
https://mevius.5ch.net/test/read.cgi/tech/1627556967/
コードを貼る場合は以下のサイトの利用をお勧め。
https://ideone.com/
探検
WPF(.NET, WinUI) GUIプログラミング Part31
■ このスレッドは過去ログ倉庫に格納されています
2023/01/22(日) 05:53:16.97ID:oY263ilm
795デフォルトの名無しさん
2023/08/19(土) 08:57:39.75ID:+QDwvDWv 作りたいなら手を付ければいいのにな
モックなりプロトタイプなり、人によっては基本設計なりスケッチなり、
やりたいアイデアがあるなら端からやってみればいい
モックなりプロトタイプなり、人によっては基本設計なりスケッチなり、
やりたいアイデアがあるなら端からやってみればいい
796デフォルトの名無しさん
2023/08/19(土) 10:14:20.56ID:xxLsZdb0797デフォルトの名無しさん
2023/08/19(土) 11:39:14.41ID:Wl/qjPve そういや、DATアクセスは8月まではフリーアクセスどうこう言ってるけど
運営は8月移行はどうなるかわからんとか言ったん?
運営は8月移行はどうなるかわからんとか言ったん?
798デフォルトの名無しさん
2023/08/19(土) 14:14:58.58ID:Wl/qjPve うんこWinUI 3の最新版リリースされたやん
Version 1.4 Preview 2
次がStableか
つかさ、新しいItemsViewコントロールとか
最初
ListView/GridView
で
ItemsRepeater
で
ItemsView
Version 1.4 Preview 2
次がStableか
つかさ、新しいItemsViewコントロールとか
最初
ListView/GridView
で
ItemsRepeater
で
ItemsView
799デフォルトの名無しさん
2023/08/19(土) 14:19:30.21ID:Wl/qjPve The new ItemsView control displays a data collection. ItemsView is similar to the ListView and GridView controls, but is built using the ItemsRepeater, ScrollView, ItemContainer and ItemCollectionTransitionProvider components. It offers the unique ability to plug in custom Layout or ItemCollectionTransitionProvider implementations
なんだItemsViewはItemsRepeaterなどの合体コントロールか
で新しいレイアウトのLinedFlowLayoutと
AnnotatedScrollBarか
なんだItemsViewはItemsRepeaterなどの合体コントロールか
で新しいレイアウトのLinedFlowLayoutと
AnnotatedScrollBarか
800デフォルトの名無しさん
2023/08/19(土) 14:33:48.82ID:Wl/qjPve ItemsRepeaterの問題は選択機能がなく、自前で実装(見た目とかも)しなきゃいけなく
億劫だったが
ItemsViewはそこら辺もListView/GridView見たくやってくれるようなったんだよね?
億劫だったが
ItemsViewはそこら辺もListView/GridView見たくやってくれるようなったんだよね?
801デフォルトの名無しさん
2023/08/20(日) 20:28:42.15ID:N/OxtUO+ ちゃんと手を動かして形にしてるだけ偉いと思うんだ
夏休みダラダラしてた俺とは天と地ほど差がある
夏休みダラダラしてた俺とは天と地ほど差がある
802デフォルトの名無しさん
2023/08/20(日) 20:43:28.47ID:yJmfO0+S 今はさすがに休もうよ
秋はコーディングの季節だ!
秋はコーディングの季節だ!
803デフォルトの名無しさん
2023/08/20(日) 21:50:19.57ID:m38bh0Ky 近頃は秋なんかほとんどないけどね。
804デフォルトの名無しさん
2023/08/21(月) 10:28:12.08ID:ol1P3YlW805デフォルトの名無しさん
2023/08/22(火) 22:27:09.72ID:gdIlDAxT Vmという接頭辞がついているのにviewmodelじゃなかったり、過去の使われなくなったコードが全部残ってたり、1クラスが1万行超えてたりetcetc
おまけにそもそも設計のドキュメントは一切無い。外部向けの資料のみ。ひどい会社に来てしまった……
おまけにそもそも設計のドキュメントは一切無い。外部向けの資料のみ。ひどい会社に来てしまった……
806デフォルトの名無しさん
2023/08/22(火) 23:11:38.63ID:6gJfdiDb JTCあるある
807デフォルトの名無しさん
2023/08/23(水) 00:06:39.19ID:nS+GPZ+c808デフォルトの名無しさん
2023/08/24(木) 01:54:01.54ID:9YaJu4I5 >>751
datのフリーアクセスって8月いっぱいなの?
datのフリーアクセスって8月いっぱいなの?
810デフォルトの名無しさん
2023/08/24(木) 20:56:22.03ID:U1/Wc6cv812デフォルトの名無しさん
2023/08/24(木) 22:13:47.33ID:Tz9EhHoC がんばれ!
813デフォルトの名無しさん
2023/08/24(木) 23:13:10.10ID:ypVJRmCU >>811
あのコードは何人で書いたんだ?
あのコードは何人で書いたんだ?
814デフォルトの名無しさん
2023/08/24(木) 23:34:26.49ID:Ax2+ubkj どう見ても一人だろ
815デフォルトの名無しさん
2023/08/26(土) 11:36:32.15ID:UpJ7Bk8S 初心者じゃないんだから、5chブラウザつくるとしても
少し挑戦的な事してここの視聴者楽しませてよ
少し挑戦的な事してここの視聴者楽しませてよ
816デフォルトの名無しさん
2023/08/26(土) 12:52:15.75ID:d6TpiO9T ツマンネ。もっと気の利いたこと書き込めよ
817デフォルトの名無しさん
2023/08/26(土) 14:29:43.74ID:QKHGYPpz コード見るとわかるけど違和感しか感じない
C++?とか
C++?とか
818デフォルトの名無しさん
2023/08/26(土) 14:37:18.36ID:QKHGYPpz ともかくいろいろとちぐはぐしてる
人に見られることを前提とした普通に自分で組むには不要なコメントとか
大きなサービスとか…
人に見られることを前提とした普通に自分で組むには不要なコメントとか
大きなサービスとか…
819デフォルトの名無しさん
2023/08/26(土) 15:09:41.41ID:hcnbZQTk なんだそのふわっとした具体性のない指摘は
無理にケチ付けることないのに
無理にケチ付けることないのに
820デフォルトの名無しさん
2023/08/26(土) 15:24:12.70ID:QKHGYPpz コードを見ればわかるよ
821デフォルトの名無しさん
2023/08/26(土) 15:35:06.57ID:QKHGYPpz もともとc++などを含めた他の言語で野良コードを書いてた人が
ビジネス向けの専門学校みたいなところでC#を学んでDIとか色々知識があるような印象
そして丁寧にコードを書いてるけどまだC#が血肉にはなってないので元の癖が出る
それか仲間の先生に当たる人が乱雑だったので変な癖が残っているか
誰か別の人間がところどころコードを書いたのかコピペしたのか
ビジネス向けの専門学校みたいなところでC#を学んでDIとか色々知識があるような印象
そして丁寧にコードを書いてるけどまだC#が血肉にはなってないので元の癖が出る
それか仲間の先生に当たる人が乱雑だったので変な癖が残っているか
誰か別の人間がところどころコードを書いたのかコピペしたのか
822デフォルトの名無しさん
2023/08/26(土) 15:44:44.01ID:FILnRN1t 本当に具体性のない空っぽな指摘だな
こういうのが上司につくと辛い
こういうのが上司につくと辛い
823デフォルトの名無しさん
2023/08/26(土) 17:09:36.31ID:UpJ7Bk8S824デフォルトの名無しさん
2023/08/26(土) 17:15:40.72ID:lyifkqna825デフォルトの名無しさん
2023/08/26(土) 17:15:42.20ID:QKHGYPpz826デフォルトの名無しさん
2023/08/26(土) 17:28:24.81ID:QKHGYPpz このスレの他の人はオリジナリティの話をしてる
昔からあるドラマや漫画で出てくるような芸術作品や演奏に対する指摘のようなもので
君の作品には情熱が感じられない教科書通りでつまらないみたいな話
いまだとばらかもんが丁度似た様な話をしてる
自分は今現在はそこまでの話をする段階にないと思う
適当なところで切り上げて色々デザインして経験してみたほうがいい気がする
その後に作ったものが自分が楽しんで使ってることに喜びを感じるレベルになれば人からもそういった面で良い評価を貰えると思う
昔からあるドラマや漫画で出てくるような芸術作品や演奏に対する指摘のようなもので
君の作品には情熱が感じられない教科書通りでつまらないみたいな話
いまだとばらかもんが丁度似た様な話をしてる
自分は今現在はそこまでの話をする段階にないと思う
適当なところで切り上げて色々デザインして経験してみたほうがいい気がする
その後に作ったものが自分が楽しんで使ってることに喜びを感じるレベルになれば人からもそういった面で良い評価を貰えると思う
827デフォルトの名無しさん
2023/08/26(土) 17:41:00.84ID:UpJ7Bk8S せっかくアプリ作って公開しましたと面白そうなネタが投下されたが
だめそうだな
だめそうだな
828デフォルトの名無しさん
2023/08/26(土) 17:56:06.42ID:hcnbZQTk それっぽいこと言って偉そうにしたいだけか
どうりで中身が皆無なわけだ
どうりで中身が皆無なわけだ
829デフォルトの名無しさん
2023/08/26(土) 18:25:05.72ID:W2Um6gjp アクロバティックなものを所望ならBlazor Hybridもいいと思うのよ
実用性あるかは別の問題として、前例のないことをやるという点は満たしてる
実用性あるかは別の問題として、前例のないことをやるという点は満たしてる
830デフォルトの名無しさん
2023/08/26(土) 22:00:12.76ID:16WUCkmH 書き方なんてどうでも良いのよ?
ゲイツはみんなと違う画期的なコードで時代を切り開いた。
ゲイツはみんなと違う画期的なコードで時代を切り開いた。
831デフォルトの名無しさん
2023/08/27(日) 00:46:17.43ID:W3b+7qIa >>825
では俺も ID:QKHGYPpz のレスを見て指摘でなく違和感を書こうかな
誰の何の役にも立たない独り言なら、多数が集う掲示板でなくチラシの裏にでも書いて誰にも見せず捨てればいいのに
会話できず、するつもりもないと開き直るなら掲示板にくるのは無駄だし害悪ですらある
これに気が付かないにぶーいID:QKHGYPpzに自分の見解を伝えてみた
では俺も ID:QKHGYPpz のレスを見て指摘でなく違和感を書こうかな
誰の何の役にも立たない独り言なら、多数が集う掲示板でなくチラシの裏にでも書いて誰にも見せず捨てればいいのに
会話できず、するつもりもないと開き直るなら掲示板にくるのは無駄だし害悪ですらある
これに気が付かないにぶーいID:QKHGYPpzに自分の見解を伝えてみた
832デフォルトの名無しさん
2023/08/27(日) 09:09:39.66ID:4wYaVVdN お前の方こそブーメラン刺さってねw
833デフォルトの名無しさん
2023/08/27(日) 11:36:52.09ID:3H5CXIUM >>830
どんなの?
どんなの?
834デフォルトの名無しさん
2023/08/27(日) 12:46:27.21ID:W3b+7qIa835デフォルトの名無しさん
2023/08/27(日) 12:58:47.33ID:t0g5o5TS そんなこともわからない>>832の頭の悪さときたら
ってことでしょ
ってことでしょ
836デフォルトの名無しさん
2023/08/27(日) 13:51:55.91ID:vknuNgDk viewmodelsって対応するviewに表示するためのデータとロジックを持ってるって認識で合ってる?
コード見てると他のviewmodelファイルでインスタンス化されたりプロパティが呼び出されてたりしててあれこういうのありなの?って
コード見てると他のviewmodelファイルでインスタンス化されたりプロパティが呼び出されてたりしててあれこういうのありなの?って
837デフォルトの名無しさん
2023/08/27(日) 14:43:13.39ID:Qf4ZUzrP 例えばどのファイルのどこがおかしい、改善すべきと言わないと
838デフォルトの名無しさん
2023/08/27(日) 21:19:33.66ID:vknuNgDk 機能修正の事前準備としてリファクタリングさせてください
とか言ってもひとまず機能修正優先でとか動いてるんだから余計なことするなとか言われるのがオチだよね
とか言ってもひとまず機能修正優先でとか動いてるんだから余計なことするなとか言われるのがオチだよね
839デフォルトの名無しさん
2023/08/27(日) 21:40:22.11ID:IUQW/AR/ もうその5chブラウザの事ほっとけよ
作者があまり顔出さないのに
作者不在のままここで毎回ゴタゴタが発生であほらしい
ほっとくのが吉
作者があまり顔出さないのに
作者不在のままここで毎回ゴタゴタが発生であほらしい
ほっとくのが吉
840デフォルトの名無しさん
2023/08/28(月) 19:25:42.52ID:Ed5E1clR 心理的安全性の低いスレだな
841デフォルトの名無しさん
2023/08/28(月) 19:58:34.85ID:BueC5+dS 攻撃しても何もいいことはないのになあ…
googleの本でも読めば良いのに
googleの本でも読めば良いのに
842デフォルトの名無しさん
2023/08/28(月) 20:00:38.72ID:BueC5+dS ふと思ったことや感じたことを言うと叩かれる → 心理的安全性が低い
他人の行ったことを否定する → 心理的安全性が低い
本人に自覚がないのが恐ろしい
他人の行ったことを否定する → 心理的安全性が低い
本人に自覚がないのが恐ろしい
843デフォルトの名無しさん
2023/08/28(月) 20:44:27.43ID:QJ/DbKdl マスゴミって批判しないで、記者が萎縮してしまいます。でも自分達は批判も攻撃もするけどね。みたいな二重基準?
844デフォルトの名無しさん
2023/08/28(月) 21:29:09.23ID:6uHv/wqC 技術的な話とかに関して色々批判はいいと思うけど
最後は人格攻撃と不毛な事になるのが多いからなw
最後は人格攻撃と不毛な事になるのが多いからなw
845mdysdev ◆XSDsAilQpD0E
2023/08/30(水) 09:16:29.73ID:rmxbhQ8d MVVMって例えばWPFでいうなら、VMでSystem.Windows名前空間をusingしないっていう認識で合ってる?
要はVMだけでOS非依存のdll化できるか
要はVMだけでOS非依存のdll化できるか
846デフォルトの名無しさん
2023/08/30(水) 10:42:16.63ID:mm/q7vOw そんな定義は聞いたことないな
847デフォルトの名無しさん
2023/08/30(水) 11:12:09.35ID:FKrsdOsE 究極の疎結合って意味では合ってる
CommunityToolkit.mvvmもプラットフォーム非依存だし極端な話、上側がWinUI3でもVMそのまま動くってことでしょ
ただ実際問題すげーめんどくさいとは思うがw
CommunityToolkit.mvvmもプラットフォーム非依存だし極端な話、上側がWinUI3でもVMそのまま動くってことでしょ
ただ実際問題すげーめんどくさいとは思うがw
848デフォルトの名無しさん
2023/08/30(水) 13:38:27.33ID:Zjd+Qgp2 だね、5chブラウザのほうでViewModelでウィンドウクラス?を参照してたのは気になってた
まぁ、最初の1回だけは勉強のためMVVMガチガチにやって頑張ってもいいし
そこは本人次第
まぁ、最初の1回だけは勉強のためMVVMガチガチにやって頑張ってもいいし
そこは本人次第
849mdysdev ◆XSDsAilQpD0E
2023/08/30(水) 14:56:17.68ID:rmxbhQ8d ありがとう、System.Windowsを分離してみる。
>>848
確かにWindowは分かりやすく「ん?」ってなるけど、
ClipBoardとかBitmapImageとかもみんなSystem.Windows配下なんだよね。
これらの処理を全部持ってくと、Viewにも結構ロジックが必要になりそう。
UIフレームワーク固有の機能なんだから疑問を持つのがおかしいのかもだけど
>>848
確かにWindowは分かりやすく「ん?」ってなるけど、
ClipBoardとかBitmapImageとかもみんなSystem.Windows配下なんだよね。
これらの処理を全部持ってくと、Viewにも結構ロジックが必要になりそう。
UIフレームワーク固有の機能なんだから疑問を持つのがおかしいのかもだけど
850デフォルトの名無しさん
2023/08/30(水) 23:23:43.59ID:I012WzjW View固有の機能じゃなければ分離しなくてもよい
851デフォルトの名無しさん
2023/08/31(木) 00:04:15.85ID:tqam1yBh その前にenumの機能のおさらいをしたほうが良い
852デフォルトの名無しさん
2023/08/31(木) 01:17:12.25ID:UxD03clT MVVMといえばうちの会社でのプロジェクトでさぁ例えばだけどmodelにcircleクラスがあるとするじゃん
んでそれをコンストラクタの引数に取るVmCircleなるクラスをわざわざ作るのよ。んでそれを各種viewmodel内部でいじるんだけど、VmCircleはCircleのviewmodelとか言ってるの
おかしいでしょそれはviewmodelでもなんでもないでしょって言ったんだけどいやviewmodelだって
これ俺がおかしいのか?
んでそれをコンストラクタの引数に取るVmCircleなるクラスをわざわざ作るのよ。んでそれを各種viewmodel内部でいじるんだけど、VmCircleはCircleのviewmodelとか言ってるの
おかしいでしょそれはviewmodelでもなんでもないでしょって言ったんだけどいやviewmodelだって
これ俺がおかしいのか?
853デフォルトの名無しさん
2023/08/31(木) 01:44:14.25ID:k/7LWfvb >>852
サーバサイドでも使う Entity とかを .NET Standard で共有して、
クライアントサイドではそれをINotifyPropertyChanged を実装したクラス (VM) に変換する必要がある、
もしくは将来的に変更通知が必要になる可能性を見越してそうしておく、
とかならありえなくはないんじゃない?
サーバサイドでも使う Entity とかを .NET Standard で共有して、
クライアントサイドではそれをINotifyPropertyChanged を実装したクラス (VM) に変換する必要がある、
もしくは将来的に変更通知が必要になる可能性を見越してそうしておく、
とかならありえなくはないんじゃない?
854デフォルトの名無しさん
2023/08/31(木) 07:06:57.56ID:BoGIe8nI >>845
変な理解しているな。
ViewModelでBitmap加工などは普通にやる。 当然、System.Windowsをusingする。
Viewのエレメントに直接アクセスするなという事だけ。 いわゆる委譲だな。
例えば、Viewにパラメーター渡すために、IxxxViewRepositoryインターフェースをViewに継承させ、そのレポジトリをViewModelにインジェクションすればそれでOK。
ContainerのChildrenは、ViewModelにダイナミック生成バインドできないので、Add、Remove、Move操作をそういう方法でやる。
DDDなどのクリーンアーキにチャレンジしてみれば、その辺はインチュイティブに理解できるようになるよ。
変な理解しているな。
ViewModelでBitmap加工などは普通にやる。 当然、System.Windowsをusingする。
Viewのエレメントに直接アクセスするなという事だけ。 いわゆる委譲だな。
例えば、Viewにパラメーター渡すために、IxxxViewRepositoryインターフェースをViewに継承させ、そのレポジトリをViewModelにインジェクションすればそれでOK。
ContainerのChildrenは、ViewModelにダイナミック生成バインドできないので、Add、Remove、Move操作をそういう方法でやる。
DDDなどのクリーンアーキにチャレンジしてみれば、その辺はインチュイティブに理解できるようになるよ。
855デフォルトの名無しさん
2023/08/31(木) 07:56:35.25ID:UxD03clT >>853
そもそもviewmodelってviewとmodelをつなぐ役割をするものじゃないんですかね
別に対応するviewなんて何も無いただデータとそのメソッドを持つだけのクラスをviewmodelと言えるんでしょうか
そもそもviewmodelってviewとmodelをつなぐ役割をするものじゃないんですかね
別に対応するviewなんて何も無いただデータとそのメソッドを持つだけのクラスをviewmodelと言えるんでしょうか
856デフォルトの名無しさん
2023/08/31(木) 11:36:17.81ID:GMvg4a1K https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/stable-channel#version-14
うんこ品質の時間です
突然1.4がリリースされやがった
9月末が予定じゃなかった?
うんこ品質の時間です
突然1.4がリリースされやがった
9月末が予定じゃなかった?
857デフォルトの名無しさん
2023/08/31(木) 12:07:44.06ID:+9swg57/858デフォルトの名無しさん
2023/08/31(木) 12:40:08.29ID:k/7LWfvb >>855
俺の理解が間違ってるかもしれないけど、
その Circle クラス?が画面上の円のコントロールかなにかの DataContext になってるなら ViewModel であるといえるんじゃないだろか。
画面上のどこにもバインドしてないんなら違うと思うけど。
例えば ListBox の ItemsSource にバインドするコレクションの各要素の型は ViewModel と言えると思う。
ListBoxItem を 1つの View として見た時にその DataContext になるから。
↓これとか ItemViewModel というのを定義してる。
https://blog.okazuki.jp/entry/2016/04/08/233620
ItemViewModel
俺の理解が間違ってるかもしれないけど、
その Circle クラス?が画面上の円のコントロールかなにかの DataContext になってるなら ViewModel であるといえるんじゃないだろか。
画面上のどこにもバインドしてないんなら違うと思うけど。
例えば ListBox の ItemsSource にバインドするコレクションの各要素の型は ViewModel と言えると思う。
ListBoxItem を 1つの View として見た時にその DataContext になるから。
↓これとか ItemViewModel というのを定義してる。
https://blog.okazuki.jp/entry/2016/04/08/233620
ItemViewModel
859デフォルトの名無しさん
2023/08/31(木) 13:22:03.44ID:WwAx/vtc viewmodelはmodel用のviewじゃなくてview用のmodel
各種viewmodelでcircleモデルのview用の変換やviewからの入力に対してモデルとの橋渡しをする場所としてvmcircleを作ってるんならまあ理解できる
各種viewmodelでcircleモデルのview用の変換やviewからの入力に対してモデルとの橋渡しをする場所としてvmcircleを作ってるんならまあ理解できる
860デフォルトの名無しさん
2023/08/31(木) 14:00:23.53ID:+wESSzqb 何なら納得するんだろうか?
画面に複数のタブページがあるアプリがあって
メインVMに複数のタブページ用のVMがリストなどで持たれている(直接のモデルじゃなくて)
これでおかしいと思うのかどうか
画面に複数のタブページがあるアプリがあって
メインVMに複数のタブページ用のVMがリストなどで持たれている(直接のモデルじゃなくて)
これでおかしいと思うのかどうか
861デフォルトの名無しさん
2023/08/31(木) 15:36:13.08ID:KSwuKB63 XAML Islandsとか名前がよくない
絶海の孤島のイメージだ
絶海の孤島のイメージだ
862デフォルトの名無しさん
2023/08/31(木) 15:53:03.73ID:A6umWt5F Islandsで孤島?
863デフォルトの名無しさん
2023/08/31(木) 16:07:40.97ID:qE8kvwKZ 複数形だから孤島ではないな
864デフォルトの名無しさん
2023/08/31(木) 16:52:36.04ID:BoGIe8nI >>857
VieModelの再利用?
再利用するのはViewの方であって、ViewがViewModelへのバイディング権がある。
それで、フレキシブルな画面構築ができる。
ロジックの再利用は、Domain層にまとめる。
VieModelの再利用?
再利用するのはViewの方であって、ViewがViewModelへのバイディング権がある。
それで、フレキシブルな画面構築ができる。
ロジックの再利用は、Domain層にまとめる。
865デフォルトの名無しさん
2023/08/31(木) 17:36:52.11ID:+9swg57/ >>864
ん?例えばMAUIとかWASMに移植するときはViewModelを全部作り直すってこと?
大変じゃね?っていうかそれってMVVMじゃなくね?
MVVMって画面とロジックの分離であって、画面が変わるたびに作り直さなくちゃいけないなら
それはViewModelではなくViewの範疇では?
ん?例えばMAUIとかWASMに移植するときはViewModelを全部作り直すってこと?
大変じゃね?っていうかそれってMVVMじゃなくね?
MVVMって画面とロジックの分離であって、画面が変わるたびに作り直さなくちゃいけないなら
それはViewModelではなくViewの範疇では?
866デフォルトの名無しさん
2023/08/31(木) 18:44:34.81ID:+wESSzqb ViewModelはviewとmodelの間が互いにデコボコしてて
綺麗にくっつかない場合に間に入るつめもの
もともときれいにくっつくなら不要
Viewが変わればまた形に添ったViewModelが必要になる
綺麗にくっつかない場合に間に入るつめもの
もともときれいにくっつくなら不要
Viewが変わればまた形に添ったViewModelが必要になる
867デフォルトの名無しさん
2023/08/31(木) 19:17:40.59ID:0zAKJthF クライアント側にあるView層にViewとViewModelがある
サーバー側にModel層があって自分の場合はREST full APIで作られたSaaS出ある場合が殆ど
業務ロジックはModel層内に全てあるので再利用可能
サーバー側にModel層があって自分の場合はREST full APIで作られたSaaS出ある場合が殆ど
業務ロジックはModel層内に全てあるので再利用可能
868デフォルトの名無しさん
2023/08/31(木) 19:22:25.33ID:0zAKJthF View層にはWPFを動作させるための処理しかない
View層をReactで作ってもそこにあるのはReactを動作させるための処理しかない
業務ロジックは全てサーバー側にあって全く無駄にはならない
View層をReactで作ってもそこにあるのはReactを動作させるための処理しかない
業務ロジックは全てサーバー側にあって全く無駄にはならない
869デフォルトの名無しさん
2023/08/31(木) 21:51:01.50ID:lnQo2el+ >>762
今思いついたんだが「sugar dragonfly」はどう?
今思いついたんだが「sugar dragonfly」はどう?
870デフォルトの名無しさん
2023/09/01(金) 16:45:19.11ID:ba1FgNHl 機器の通信サンプルアプリをWPFで作るのは有り?
サンプルを参考にする相手がWPFを使ってるかわからないから、WinFormsの方が無難かな?
一番無難なCUI版は出来たからコアの通信部分は変わらなくて、通信結果を見やすくするだけなんだけども
サンプルを参考にする相手がWPFを使ってるかわからないから、WinFormsの方が無難かな?
一番無難なCUI版は出来たからコアの通信部分は変わらなくて、通信結果を見やすくするだけなんだけども
871デフォルトの名無しさん
2023/09/01(金) 17:16:03.23ID:E0s4hvcN ActiveXでExcel VBA対応するのが無難だな
872デフォルトの名無しさん
2023/09/01(金) 19:47:27.67ID:+613Qa0i >>866
それはVMじゃない。どっちかというとMVCのCに近い。
それはVMじゃない。どっちかというとMVCのCに近い。
873デフォルトの名無しさん
2023/09/01(金) 21:56:19.74ID:42muqi3u >>866の説明はCよりVMよりだと思う
VMはModelを特定のView用に変換した状態を持っておくもの
MVC
Vーーーーーーーー 監視 ーーーーーーー>M
Vーーー入力ーー> C ーーー入力ーー>M
V<ーーーーーーー 通知 ーーーーーーーーM
MVVM
Vーーー監視ーー> VM ーーー監視ーー>M
Vーーー入力ーー> VM ーーー入力ーー>M
V<ーー通知ーーー VM <ーー通知ーーーM
VMはModelを特定のView用に変換した状態を持っておくもの
MVC
Vーーーーーーーー 監視 ーーーーーーー>M
Vーーー入力ーー> C ーーー入力ーー>M
V<ーーーーーーー 通知 ーーーーーーーーM
MVVM
Vーーー監視ーー> VM ーーー監視ーー>M
Vーーー入力ーー> VM ーーー入力ーー>M
V<ーー通知ーーー VM <ーー通知ーーーM
874デフォルトの名無しさん
2023/09/01(金) 22:06:47.51ID:XOi5r4E6 みんなめちゃくちゃだな..
875デフォルトの名無しさん
2023/09/01(金) 22:16:55.21ID:+613Qa0i >VMはModelを特定のView用に変換した状態を持っておくもの
なにその珍解釈
なにその珍解釈
876デフォルトの名無しさん
2023/09/01(金) 22:33:11.78ID:dq5C6mfu 一人だけ俺様理論がおるな
877デフォルトの名無しさん
2023/09/01(金) 22:55:04.64ID:86UzGWyS みんなVIEWを差し替え差し替えでMODELを流用することやってるの?
878デフォルトの名無しさん
2023/09/01(金) 23:31:31.63ID:hl1Bipr4 いや全然
879デフォルトの名無しさん
2023/09/02(土) 00:18:16.99ID:fOS98KnE 自己満ですなーー
WPFのMVVMがまさに究極の自己満
MVVMとかvue.jsとかangular、androidとかでも普通に使うし
そっちは実装コストもかからん
WPFのMVVMがまさに究極の自己満
MVVMとかvue.jsとかangular、androidとかでも普通に使うし
そっちは実装コストもかからん
880デフォルトの名無しさん
2023/09/02(土) 05:21:08.01ID:6VujaKd3 android studioはwindows formのポトベタと同じ感覚なんだが?
881デフォルトの名無しさん
2023/09/02(土) 08:18:23.73ID:Fau+Wvgs >>877
モニターアプリでは良くやるよ。
化学プラントの製品毎の画面やライン管理の製品毎の32~4096接点モニターとかね。
モニターと非常停止等の共通アクション画面なら流用する。
ただし、Viewのビハンイドコードトリミングは必要。
それらを再利用というには微妙だな。 VMはペアで消費するものと考えるのが普通。
再利用というのはロジックの再利用を言うのが一般的じゃね?
モニターアプリでは良くやるよ。
化学プラントの製品毎の画面やライン管理の製品毎の32~4096接点モニターとかね。
モニターと非常停止等の共通アクション画面なら流用する。
ただし、Viewのビハンイドコードトリミングは必要。
それらを再利用というには微妙だな。 VMはペアで消費するものと考えるのが普通。
再利用というのはロジックの再利用を言うのが一般的じゃね?
882デフォルトの名無しさん
2023/09/02(土) 09:33:36.47ID:fwdoqn2z 結局VMに何らかの描画以外のロジックを書いてる人が多いんだろうなと
mvvm原理主義者じゃなければ別に好きなようにしたらいいんだが
WPFは結局どのように実装すべきなのかハッキリとしたパターンが確立されなかった
これが一番の問題だった
明確に役割分担してオブジェクトの生死を適切に管理してる人間がどれだけいるのか
mvvm原理主義者じゃなければ別に好きなようにしたらいいんだが
WPFは結局どのように実装すべきなのかハッキリとしたパターンが確立されなかった
これが一番の問題だった
明確に役割分担してオブジェクトの生死を適切に管理してる人間がどれだけいるのか
883デフォルトの名無しさん
2023/09/02(土) 09:49:03.02ID:fOS98KnE884デフォルトの名無しさん
2023/09/02(土) 10:06:25.37ID:fwdoqn2z 状態と言う意味が通じていないので話をしても無駄
v vm mでそれぞれ状態は持ってる
普通はmの状態のことを話すんだけど双方の話がかみ合っていない
v vm mでそれぞれ状態は持ってる
普通はmの状態のことを話すんだけど双方の話がかみ合っていない
885デフォルトの名無しさん
2023/09/02(土) 10:12:13.25ID:fwdoqn2z 本来はMと全層から利用されるビジネスロジックが主体なんだけど
vmでガッツリロジックなり制御なりのコード書いてる人が多い
そういう人から見るとvmは状態を持っていると言う主張になる
vmでガッツリロジックなり制御なりのコード書いてる人が多い
そういう人から見るとvmは状態を持っていると言う主張になる
886デフォルトの名無しさん
2023/09/02(土) 10:21:43.71ID:Fau+Wvgs >>882
だね。
ViewModelはインスタンスプールの場という認識が無いとそうなるね。
Bitmap加工にしても、ロジックは別の層に置くもの。
ロジックはDomain層、ドライバーはInfrastructure層でカキコしておけば再利用というスタイルの本筋が見えてくる。
だね。
ViewModelはインスタンスプールの場という認識が無いとそうなるね。
Bitmap加工にしても、ロジックは別の層に置くもの。
ロジックはDomain層、ドライバーはInfrastructure層でカキコしておけば再利用というスタイルの本筋が見えてくる。
887デフォルトの名無しさん
2023/09/02(土) 10:42:05.01ID:ePvjWEyO wikipediaだとこうだな。VMはVが表示すべき状態を保持するというのが普通の理解だと思う。
ViewModel
ViewModel(ビューモデル)はViewを描画するための状態の保持と、Viewから受け取った入力を適切な形に変換してModelに
伝達する役目を持つ。すなわちViewとModelの間の情報の伝達と、Viewのための状態保持のみを役割とする要素である。
ViewModel
ViewModel(ビューモデル)はViewを描画するための状態の保持と、Viewから受け取った入力を適切な形に変換してModelに
伝達する役目を持つ。すなわちViewとModelの間の情報の伝達と、Viewのための状態保持のみを役割とする要素である。
888デフォルトの名無しさん
2023/09/02(土) 10:53:39.97ID:UWvP69T4 という事はバリデーションもvmじゃなくてmでやるの?
889デフォルトの名無しさん
2023/09/02(土) 11:59:17.23ID:+7egXD0v >>887 の定義だとちょっと密に思えてしまうな
https://learn.microsoft.com/ja-jp/dotnet/architecture/maui/mvvm
大まかに言うと、ビューはビュー モデルを "認識" し、
ビュー モデルはモデルを "認識" しますが、
モデルはビュー モデルを認識しておらず、
ビュー モデルはビューを認識していません。
したがって、ビュー モデルではビューをモデルから分離させ、
ビューとは独立してモデルを進化させることができます。
https://learn.microsoft.com/ja-jp/dotnet/architecture/maui/mvvm
大まかに言うと、ビューはビュー モデルを "認識" し、
ビュー モデルはモデルを "認識" しますが、
モデルはビュー モデルを認識しておらず、
ビュー モデルはビューを認識していません。
したがって、ビュー モデルではビューをモデルから分離させ、
ビューとは独立してモデルを進化させることができます。
890デフォルトの名無しさん
2023/09/02(土) 12:40:51.82ID:CPf5VJuY 君たち一旦モデルの事はわすれろよ
めちゃくちゃすぎる
めちゃくちゃすぎる
891デフォルトの名無しさん
2023/09/02(土) 13:16:00.96ID:CPf5VJuY892デフォルトの名無しさん
2023/09/02(土) 13:18:09.94ID:fwdoqn2z アプリケーションの真の実態はMなんだから忘れることじゃないな
勘違いされがちだけどMはデータ置き場でもライブラリでもないアプリケーション本体
VMは表層でしかない
メッセージの仲介所
上で書かれたインスタンスプールでもない
仕事をするにあたりただどこかにあるモデルへの参照を持っているだけ
ModelAとModelBを参照して計算してModelCに入れるのはVMの仕事ではない
VMはMに単純なメッセージ飛ばすのが仕事
勘違いされがちだけどMはデータ置き場でもライブラリでもないアプリケーション本体
VMは表層でしかない
メッセージの仲介所
上で書かれたインスタンスプールでもない
仕事をするにあたりただどこかにあるモデルへの参照を持っているだけ
ModelAとModelBを参照して計算してModelCに入れるのはVMの仕事ではない
VMはMに単純なメッセージ飛ばすのが仕事
893デフォルトの名無しさん
2023/09/02(土) 13:35:29.82ID:CPf5VJuY ロジックを単にロジックと表現したりするとこみると
ロジックをビジネスロジックとプレゼンテーションロジックに分けて
考えてないよね
ここで>>882のじゃあ明確なその区別のルールは?って問題が出てくるが
ロジックをビジネスロジックとプレゼンテーションロジックに分けて
考えてないよね
ここで>>882のじゃあ明確なその区別のルールは?って問題が出てくるが
894デフォルトの名無しさん
2023/09/02(土) 13:44:31.42ID:fwdoqn2z■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国の局長は「両手をポケット」で対峙 宣伝戦で国民に示す ★3 [蚤の市★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 中国側が首相答弁の撤回要求、日本側拒否 [夜のけいちゃん★]
- 映画「鬼滅の刃」の興行収入急減、日本行き航空券大量キャンセル…中国メディア報道 [蚤の市★]
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 「タワマン天国」に飛びつく若者…SNSに転がる「成功体験」に続けるのか 湾岸エリアの業者が語った現実 [蚤の市★]
- 【悲報】おこめ券、9.5億円配布分のうち2.4億が経費、うちJAが1億円中抜き🤗高市ありがとう [359965264]
- AV女優さん「時間停止物」のAVを完全否定してネット騒然。お前らの夢が1つ潰える [152212454]
- 【悲報】高市有事で日本に同調する国、1つも現れないwwwwwwwwwwwwwww [603416639]
- 自閉症が「んなっしょい」と連呼するお🏡
- FGOで好きなサーヴァントがアビゲイル、北斎、楊貴妃なんだが
- (´・ω・`)おはよ
