22/02/02 21:21:23.96 HZtz5wep.net
WPFが最初からネイティブC++で実装されてたらUWPやWinUIは生まれずWPFは統一プラットフォームとして継続的に進化して成功していただろうな
MSはなんだかんだC++大好きで、全部マネージドでいいじゃんってのは社内的に許されないんだよ
201:デフォルトの名無しさん
22/02/02 23:39:19.90 uQJKdAPH.net
好き嫌いの問題じゃないだろ
低レイヤーの実装はC++じゃなきゃ出来ない
202:デフォルトの名無しさん
22/02/02 23:44:15.40 Tho+pX9F.net
リーク地獄は嫌じゃ
203:デフォルトの名無しさん
22/02/03 00:13:00.65 IbTz5ZAk.net
そもそも.NETがWindowsチームから嫌われてたっていうからな
204:デフォルトの名無しさん
22/02/03 00:44:04.17 hnE9Kba7.net
>>198
MSが好きなのはC++98(03)までだろうな。
C++11はアホが好みそうな仕様になったから。
205:デフォルトの名無しさん
22/02/03 07:52:29.24 rTgJdd8/.net
C++98はある種の透徹した美しさがあったな
11以降のも無駄に複雑だった部分がどんどんシンタックスシュガーで簡潔になってきて嫌いじゃない
206:デフォルトの名無しさん
22/02/03 08:31:47.19 j4oj3G8A.net
>>202
C++11を理解できないから嫌いなんでしょ
207:デフォルトの名無しさん
22/02/03 08:50:59.00 nrvs3IXt.net
>>204
横からレスごめん
C++11は使おうと思えば使えるけど、スマートポインタとかが美しくないかなと思う
メモリをどうこうしたいのならC#とかみたいにGCを実装して欲しかった…
ただ、randomやthreadが追加されたのはかなり嬉しい
208:デフォルトの名無しさん
22/02/03 08:58:55.45 n97Y9UcY.net
んで、ここ何のスレ?
209:デフォルトの名無しさん
22/02/03 09:29:22.68 0+ku9eIp.net
C++なんてバグ量産言語まだ使ってるのかよw
Rust使えよ低脳
210:デフォルトの名無しさん
22/02/03 09:54:13.82 8ADJI/49.net
>>199
低レイヤは当たり前だけど、MSの場合は高レイヤも全て快適にC++で記述できなければならない
それがWindowsの標準UIプラットフォームに求められる最低水準なんだよ
C++/WinRT知ってるか?奴等のC++に対する愛と執念は異常
211:デフォルトの名無しさん
22/02/03 10:23:17.82 0+ku9eIp.net
ゴミで有名だよねC++/WinRT
212:デフォルトの名無しさん
22/02/03 14:43:56.38 u1rmEl96.net
C++11以後は、最低でもStroustrupの9,800円くらいの本は読まないと
話にならないから、お金が掛かる。
213:デフォルトの名無しさん
22/02/03 15:04:58.00 rTgJdd8/.net
>>210
そんなことないぞ
言語仕様が整理されたからむしろStroustrupより薄い本でマスターできるようになってる
214:デフォルトの名無しさん
22/02/03 15:05:48.63 VSVU8kYC.net
C++相談室
URLリンク(itest.5ch.net)
215:デフォルトの名無しさん
22/02/03 16:15:08.97 VWdjVpzZ.net
現在のマイクロソフトは昔に比べてC++の最新規格追随は熱心だと思うね
昔はC++愛が強かったってことはないんじゃないか
216:デフォルトの名無しさん
22/02/03 16:39:59.45 4SJL6nSC.net
C++相談室
URLリンク(itest.5ch.net)
217:デフォルトの名無しさん
22/02/03 16:51:25.83 rTgJdd8/.net
>>208
C++/CLIという存在意義不明の言語もあってだな…
218:デフォルトの名無しさん
22/02/03 17:14:59.74 4SJL6nSC.net
>>215
C++相談室
URLリンク(itest.5ch.net)
219:デフォルトの名無しさん
22/02/03 18:39:21.61 22BdHKRp.net
.NET6への移行は大変そうだな
220:デフォルトの名無しさん
22/02/03 18:50:36.00 rTgJdd8/.net
>>216
C#, C♯, C#相談室 Part96
スレリンク(tech板)
221:デフォルトの名無しさん
22/02/03 23:24:21.93 oMlWvAvC.net
>>215
C++とC#への橋渡し?みたいな
222:デフォルトの名無しさん
22/02/03 23:31:13.46 rTgJdd8/.net
>>219
C++/CLIはキミの手に負えるような代物じゃない
せいぜいC#とP/Invokeで遊んでなさい
223:デフォルトの名無しさん
22/02/03 23:39:42.92 u02l46ie.net
で、wpfは?
224:デフォルトの名無しさん
22/02/03 23:47:41.12 oMlWvAvC.net
>>220
MFCで作られたオブジェクトをC#で使う必要があったのよ
225:デフォルトの名無しさん
22/02/04 02:11:28.44 tMDf8XuC.net
>>211
具体的にどの本の事だよ。
絶対無理だと思うぞ。
226:デフォルトの名無しさん
22/02/04 05:25:10.97 2M0/77yk.net
>>223
C++相談室
URLリンク(itest.5ch.net)
227:デフォルトの名無しさん
22/02/04 08:40:15.66 +WNV9NYh.net
>>224
C#, C♯, C#相談室 Part96
スレリンク(tech板)
228:デフォルトの名無しさん
22/02/04 08:52:24.88 KAsheVEx.net
そういやC++/CLIでWPF作れるんだったね
以前やってみてすごく面倒だった
229:デフォルトの名無しさん
22/02/04 16:23:43.63 x89zi/1x.net
WinUI3
>バグ、機能不足、パフォーマンスの遅さが問題です。
>現在、Microsoftはこれを趣味のプロジェクトとして扱っており、開発者が投資すべき重要なSDKではありません。
230:デフォルトの名無しさん
22/02/04 16:48:16.68 Smp2NQSE.net
じゃあマイクロソフトさんはどのフレームワークに力入れていてどれで作れって言ってるの?
231:デフォルトの名無しさん
22/02/04 17:03:05.70 /zOk2rsO.net
タイムリーな質問じゃん
これでしょ
URLリンク(medium.com)
232:デフォルトの名無しさん
22/02/04 17:10:01.29 Smp2NQSE.net
もうVSも.Netもいらないってことか
233:デフォルトの名無しさん
22/02/04 17:40:19.22 Q8cReFta.net
これかーー
もうMSはオープンソースに手厚いかんな
URLリンク(medium.com)
234:デフォルトの名無しさん
22/02/04 18:55:12.20 Smp2NQSE.net
flutterのほうが楽しそう
もう何十年もなあなあの.Netはいらんな
235:デフォルトの名無しさん
22/02/04 19:05:31.82 fMjkdVAl.net
xamlも時代遅れだよなぁ。
CSSもflexやgridをサポートして自由自在に画面設計できるようになったんだから、Webブラウザーと同じく使えるデスクトップブラウザーを開発すべき。
HTML5+CSS3をxamlで再カキコしなければならないMVVMアプリ開発側としてはしんどい事限りなし。
blazorがそうなるかと思いきや、そうはならなかったな。
236:デフォルトの名無しさん
22/02/04 19:08
237::30.28 ID:JrlSex4G.net
238:デフォルトの名無しさん
22/02/04 20:15:48.12 x89zi/1x.net
>>228
MS的にはMAUI(Xamarin)を推したいんだろうが、こんなものに手を出すのは時間の無駄。
未だにスマホアプリに毛の生えたようなのしか作れないWinUIより
Flutterの方がずっとデスクトップアプリに求められるものは何なのか良くわかってる。
>デスクトップアプリケーションは、単に大きなスクリーンで動くモバイルアプリケーションではありません。
>キーボードやマウスなど、さまざまな入力デバイス用に設計されています。サイズ変更可能なウィンドウがあり、
>ワイドスクリーンモニタで動作することもよくあります。アクセシビリティ、入力メソッドエディター、ビジュアルスタイリングなど、
>重要な事柄についても、さまざまな慣例が存在します。デスクトップ アプリは、ファイル システム ピッカーからデバイス ハードウェア、
>Windows レジストリのようなデータ ストアまで、あらゆるものをサポートします。
・UWP→完全終了。開発側がもう使うな、はよWinUI3に移行しろと言っている。
・WinUI3→1~2年後には業務で使えるレベルに品質・機能が上がっているかも?(しかしその頃には他のものが普及している可能性大)
・MAUI→使う価値なし(他がもっといいの出してるよね)
・WPF + .NET6→目新しさはないが安定していて間違いがない
・Flutter for Windows→注目株、Fluent Designにもしっかり対応。安定性・メモリ消費・ファイルサイズ等に問題がなければこれ一択か?
以前Dartでhello worldするコンソールアプリ試しに作ったときにやたらファイルサイズでかかったのが気がかり。
239:デフォルトの名無しさん
22/02/04 20:57:32.87 i7hWOGQn.net
Flutter for Desktop、ちょっと触ってみたけど想像以上に良い。
ただ、まだあんまりよくわからんコンパイルエラーが起こる事があるな。
既存の自分のAndroidアプリはそう簡単には動かなさそう。
240:デフォルトの名無しさん
22/02/04 21:48:15.23 xlLtcbiK.net
あーまあ分かったからflutterスレでやってね
241:デフォルトの名無しさん
22/02/04 22:07:14.76 rPvrWkyY.net
ウェブのhtml, css, jsの組み合わせをデスクトップアプリに持ってきた方が自然に思える
てかWindowsのみで動くアプリなんてシステムアプリくらいしか需要ないじゃん
そんなのCUIでも全く問題ないんだから
242:デフォルトの名無しさん
22/02/04 22:11:22.70 +WNV9NYh.net
それWebView2な
必然の流れだよ
243:デフォルトの名無しさん
22/02/04 22:11:24.10 lgLSShEn.net
古田はググールだから大変だな
流行らなければ斬るから信者がんばえー
244:デフォルトの名無しさん
22/02/05 01:21:30.57 WZoZVFeP.net
「StackOverflow」で2021年に実施された調査
URLリンク(asset.watch.impress.co.jp)
245:デフォルトの名無しさん
22/02/05 01:58:42.02 vyyfl1Q+.net
>>241
ほとんどWeb系だろうし、単に新しいもの使える職場は環境がいいというだけの話だ
246:デフォルトの名無しさん
22/02/05 09:10:40.08 m5qwQDYD.net
WPF(MVVMを含む)を新しいものと見なしてるか古いものと見なしてるかで年の差感じるよな
学習コストとか今さらのように言われてもオマエ今まで何してたんだよ
10年以上前からあってとっくに枯れてるぞ
247:デフォルトの名無しさん
22/02/05 09:18:35.66 50cE9z6L.net
WPFをいままでやってこなかったならいまさらやる必要がないってことでしょ
アプリケーションもウェブベースで作れるものならASP.NETのWebFormsやMVCに移行してただろうし
248:デフォルトの名無しさん
22/02/05 10:35:28.52 JJnev5jz.net
>>238
jsはどんな領域でも使っちゃ駄目な欠陥言語。tsもわずかにマシって程度。
元々オモチャみたいな言語だからレガシーなクソ仕様をばっさり切り捨てないと手の施しようがない。
>Windowsのみで動くアプリ
昔と違ってWindows 1つあれば事足りるようになったからWindows 専用もそれほどデメリットにならない。
249:デフォルトの名無しさん
22/02/05 10:40:43.82 Rg3a6Lod.net
普及しないまま枯れていったMVVM葬儀会場はここでつか?
250:デフォルトの名無しさん
22/02/05 10:42:30.90 8UxqBbtD.net
使いこなせない悲しみ
251:デフォルトの名無しさん
22/02/05 11:59:44.91 XET6D0Ck.net
WPFが落ち目に見えるからFlutterとかWebとかこんなにキャッチセールスがやってくるのかな
252:デフォルトの名無しさん
22/02/05 12:07:21.14 Czrdanv8.net
intellisenseがWPFに冷淡だったのが痛い
253:デフォルトの名無しさん
22/02/05 12:10:49.48 8UxqBbtD.net
WinUI待機組をFlutterが掻っ拐う構図
254:デフォルトの名無しさん
22/02/05 15:15:00.66 JJnev5jz.net
>>248
落ち目なのはWinUI。まだ浮かんですらいないけど。
今の時点でデスクトップアプリ開発環境としてWinUIよりFlutterの方が完成度が上で、今後それが逆転する可能性も絶望的。
これからはWPFとFlutterを状況に応じて使い分ければいい。
WinUIがポンコツすぎて迷う必要なくなったから、かえって良かったかも。
255:デフォルトの名無しさん
22/02/05 15:29:51.09 Mq0LTi1i.net
早めにxaml捨ててMAUI&Cometで一本化する判断しとけばここまで開発リソース分散しなかっただろうに
256:デフォルトの名無しさん
22/02/05 17:43:31.99 CJOs3GSx.net
>>252
MAUIは、XAMLによるMVVM、と書いてあるが。
257:デフォルトの名無しさん
22/02/05 17:45:20.87 CJOs3GSx.net
宣言的
258:デフォルトの名無しさん
22/02/05 17:47:03.84 CJOs3GSx.net
MAUIには、宣言的UIを使ったMVUなるものがあって、それがCometということかいな?
でも宣言的UIもWinFormsとは全く違うよね、多分。
259:デフォルトの名無しさん
22/02/05 18:12:45.33 xQipYjTo.net
宣言的UIはXAMLみたいなやつ
260:デフォルトの名無しさん
22/02/05 21:13:43.76 b/8WCMUm.net
>>244
そんな奴はこのスレ覗きに来ないと思うんだが
261:デフォルトの名無しさん
22/02/06 00:16:10.15 keaNtWdY.net
>>256
やっぱ、そうか。
だからMAUIはXAMLのものと、XAMLではないがXAMLに似たものの二系統作られるという
ことに過ぎないのだろう。
262:デフォルトの名無しさん
22/02/06 23:44:13.73 R7IEDvqe.net
.Net Frameworkも4.8.1でまだまだ延命
263:デフォルトの名無しさん
22/02/06 23:45:18.71 Ly8LsSyr.net
.NET6への移行がしんどいの?
264:デフォルトの名無しさん
22/02/07 00:52:33.72 NnlheoBA.net
6は2年でまた移行だからな
日本ではその度にSIerにぼったくられることになる
265:デフォルトの名無しさん
22/02/07 01:04:51.01 FwV6Svjt.net
海外はちゃうの?
266:デフォルトの名無しさん
22/02/07 09:01:44.53 hJS1F7H6.net
>>259
ARMだけになりそうじゃね?
267:デフォルトの名無しさん
22/02/07 11:48:44.65 uh676PEA.net
ListBoxのItemPanelTemplateにCanvasを指定しているとき
Windowに合わせて拡大・縮小する方法教えて
ViewBoxにListBoxを入れてみたけどWrapPanelとかはスケールされるのだが
Canvasのときは表示されないみたい
268:デフォルトの名無しさん
22/02/07 12:52:29.42 qVVndxor.net
Canvasを使わない
269:デフォルトの名無しさん
22/02/07 18:48:16.24 B+4mD2P/.net
次の.NETでWPFにWin11用テーマが搭載される可能性
270:デフォルトの名無しさん
22/02/07 19:11:40.12 EFpTEQx0.net
MAUI(Xamarin)に望みが無いならWPFも先細り
271:デフォルトの名無しさん
22/02/07 20:22:40.56 IU9XfAJW.net
MAUIの正体がXamarinだって知ってる奴は
こんなもんにはなから望みなんてないってわかってるよ
272:デフォルトの名無しさん
22/02/07 22:28:30.64 c4tJbt0p.net
UNOちゃんも忘れないで(´;ω;`)
273:デフォルトの名無しさん
22/02/07 22:55:34.92 fWZpMVoi.net
もういいよ
こんなゴミフレームワーク使うのやめたから
何十年まともなの作れないんだMSは
274:デフォルトの名無しさん
22/02/08 18:38:34.00 yVfGM/kR.net
WPFに新たな希望が!!
URLリンク(github.com)
275:デフォルトの名無しさん
22/02/08 18:50:22.26 5BCjIQvt.net
俺が前スレで紹介した記憶が
276:デフォルトの名無しさん
22/02/08 23:49:46.25 MbsHgQqH.net
すみません 教えてください
WINDOWS UI3 を使ってMVVM ってできるのでしょうか?
サンプルみたいのもないのでできるのかどうかわからないので
教えていただけますでしょうか?
277:デフォルトの名無しさん
22/02/09 03:28:04.00 /I7OzU9p.net
MVVMが目的になってる時点で駄目w
本末転倒だよ
278:デフォルトの名無しさん
22/02/09 06:34:10.19 czYNULL0.net
>>273
できるよ。
でもMVVMって設計手法の1つに過ぎないから
開発内容に合わせて適用するかどうか考えなきゃ駄目だよ。
徒歩10数歩で行ける隣の家にわざわざガレージから車出して行こうとする頭の悪い人になっちゃだめだよ。
279:デフォルトの名無しさん
22/02/09 08:01:14.11 ehg+FXfN.net
>>273
WinUIはかなりヤバイよ。
公式ドキュメントに
パフォーマンス悪いです、メモリめっちゃ食います、ファイルサイズ無駄にでかいです
なんて載せて予防線張ってるぐらいだから。
SDKのバージョンは一応1.0だけど実質まだ0.5ぐらいの出来。
正式版として世に出しちゃいけないレベル。
止めはしないけどいつでも撤退できるようにしておきな。
これやるくらいならまだWPFの方がつぶしが効く。
280:デフォルトの名無しさん
22/02/09 09:25:08.14 Og7wuzEA.net
2022年という未来の世界に生きてるのに未だにまともなフレームワークがないってどうなってんの
281:デフォルトの名無しさん
22/02/09 10:05:21.84 /I7OzU9p.net
結局プロの使用に耐えるフレームワークはATLだけだったな
あとは全部不完全か初心者向けの不自由なものでしかない
282:デフォルトの名無しさん
22/02/09 10:23:03.43 HpfuVDAv.net
>>274
頭ごなしの否定良くない
既存のMVVMアプリがあって、Vだけ入れ替えるのを検討してるのかもしれないだろ
283:デフォルトの名無しさん
22/02/09 10:49:46.38 /tE30TH1.net
ソフトウェアのアーキテクチャ的に
誰も議論しないぐらい
残らないアーキテクチャだったな
WPF流MVVM
284:デフォルトの名無しさん
22/02/09 10:58:39.93 WFT7SUOm.net
枝葉の議論でゴチャゴチャ言ってるザコ共をMVWという本質を突く一言で一刀両断したのは流石だわ
285:デフォルトの名無しさん
22/02/09 12:52:41.22 /KeHMgiK.net
ザコがキャンキャン吠えてるw
286:273
22/02/09 23:47:59.46 TVdAx4La.net
みんなありがとうございます。
勉強になりました。
イベントドリブン型が何となくよくわからなくって
MVVMで慣れちゃったから
本当は、 WPFでトグルスイッチが使ってみたかっただけなんだよね
287:デフォルトの名無しさん
22/02/10 08:45:19.96 nQ/8CiES.net
ToggleButtonじゃなくスマホで見かけるやつでしょ、ユーザーコントロールで作成だね
実際に作った人もいるので参考にしたり拝借してくるといい(要ライセンス確認)
288:デフォルトの名無しさん
22/02/10 09:53:13.85 Yjh1sxXd.net
チェックボックスとトグルスイッチの使い分け、毎回悩むわ
289:デフォルトの名無しさん
22/02/10 13:37:50.16 cZrPxvvk.net
見やすく使いやすいのがいい→チェックボックス
ナウなヤングにウケるカッコいいのがいい→トグルスイッチ
で悩むことないやろ
290:デフォルトの名無しさん
22/02/10 13:50:07.08 RrRl5YtT.net
ダークモードね白黒反転するやつね
291:デフォルトの名無しさん
22/02/10 14:14:25.03 fc/2R9d2.net
設定項目群に関連があり、「これとこれを有効」みたいなのはチェックボックス。
確認を求めるようなのや説明的な設定項目はチェックボックス。
有効/無効で表現しやすく、設定が即座に反映されるようなのはトグルスイッチ。
292:デフォルトの名無しさん
22/02/10 15:00:32.93 nQ/8CiES.net
使いわけというかデザインセンスだね
例えば、次回から表示しない、はチェックボックスでトグルスイッチ使ってるのを見たことない
293:デフォルトの名無しさん
22/02/10 15:02:08.67 SVzOFq4x.net
即時反映: トグルスイッチ
ダイアログの肯定応答ボタン押下で反映: チェックボックス
294:デフォルトの名無しさん
22/02/10 15:44:50.18 wbG7UtHv.net
MSのドキュメントに用途のガイドラインは書いてある
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)
295:273
22/02/11 16:25:36.11 gQQrjeaP.net
>>284
アドバイスありがとうございます。
早速 いくつかの トグルスイッチを使ってみたのだけど
トグルスイッチのイベントの形態が2種類あることがわかって、
今まで使っていたのは、 ”状態が変化した”ことでイベントととするもの
他には
"ONorOFF"になったことをイベントとするものです。
VMでどう吸収しようか検討中です。
296:デフォルトの名無しさん
22/02/12 09:00:34.53 kNmQX4vn.net
見た目の変更とかアニメはコントロールの中で完結する方が見通しよくなるし
他でも使えるようにライブラリ化できる
MVVMは関係なく、単に自作UIとしてトグルをどう作り込むかによる
金さえ出せばコンポーネント屋から完成しているトグルスイッチを購入できるので
自作の工賃とライセンス料を天秤にかけるわけだ
297:デフォルトの名無しさん
22/02/12 17:38:53.23 ZwiH+04Q.net
普通これ使うだろ
URLリンク(github.com)
URLリンク(github.com)
URLリンク(github.com)
298:デフォルトの名無しさん
22/02/13 01:05:59.76 NN0JuhkI.net
>>294
サンプルだとかっこいいんだけど、
漢字や平仮名のボタンとか急にダサくなって困る。
299:デフォルトの名無しさん
22/02/13 09:01:56.66 39UxLAwC.net
都度フォントの変更大変そうだなと思ったらResourceDictionaryにFontFamilyを指定しとくのか
300:デフォルトの名無しさん
22/02/14 08:48:32.05 JUrXsXai.net
>>295
英語だとカッコイイってのがそもそも思い込み。
隣の芝が青く見える的な。
ガイジンさんから見たら漢字カッコイイって思ってるかもしれん。
301:デフォルトの名無しさん
22/02/14 20:30:33.82 OKHyco7f.net
>>81
キチガイの世界へようこそ・・・
と言うか20世紀なのか今は?
302:デフォルトの名無しさん
22/02/14 21:53:59.37 7DLpkbM0.net
>>298
参考までに
Windows 95 最小ハードウェア仕様要求
物理メモリー、8 MB以上
ストレージ、75 MB以上
303:デフォルトの名無しさん
22/02/14 22:10:00.51 VjWJSQ6q.net
いくらPCが速くなってもWPF使ったソフトはクソ重い。
MSすら使いたがらないわけだ。
304:デフォルトの名無しさん
22/02/14 23:21:43.51 0GI11KhK.net
>>299
たしか1998年にあまり予算をかけたくない俺は
Celeron300AでRAM256MB積んだPCを自作していた
そのころの話か?
やはり20世紀の話だろこれは?
305:デフォルトの名無しさん
22/02/15 06:12:51.13 hA9gyrCi.net
>>301
お前がどんなPC組んでたとか全く意味ない。その時代に普及しているPCスペックが全て。
2022年だからそれに合わせてこんな甘々な基準になっているのに
それすらクリアできないようならソフトウェア技術者向いていないから転職を勧める。
306:デフォルトの名無しさん
22/02/15 08:57:14.52 VnsR49ox.net
10年前からWPFは既にあって、当時の話題とは
Windows Formsから移行とかSilverlightと比較とか
比較対象が変更されはしたが、今と大して変わらない話題だよね
307:デフォルトの名無しさん
22/02/15 15:34:06.63 GyhCU1xc.net
WPFは出た直後にクソ認定されて15年経ってもその評価は変わらない。
FISやIOCと違って技術者は賄賂は受け取らないし忖度もしないのだ。
308:デフォルトの名無しさん
22/02/15 15:57:40.84 tpfUF+h+.net
WinForms
・旧来のウィンドウズAPIの上にレイヤーを重ねたようなもので、(シンプルであるという)利点と
(平凡なレイアウトやスタイリングオプションという)致命的な災いの両方がある。
WPF
・WinFormsからわずか4年後にリリースされたが、デザインパターンとコンセプトがより複雑であったため、
一般に受け入れられるまでにはしばらく時間がかかった。
・大規模なデータセットに対してWinFormsよりも大幅に高速化できるが、正しく使用するにはより深い知識が必要である。
・現状は WPF on .NET 6 が一番つぶしが効く状態。
UWP
・Windows UIの未来だったが、鳴かず飛ばず、現在はメンテナンスモードになっている。
良い点:魅力的なUIを簡単に作ることができ、マウスとタッチの両方でうまく動作する。
悪い点:サンドボックスとパッケージングの要件が非常に厳しい。
結論:避けるべき。
WinUI 3
・小さなチームがUWPのUIスタックからできる限りのものを救い出そうとしている。
・遅い、バグが多い、そして多くの歴史的なお荷物が重くのしかかる。
・開発体験はWPFの方が上であり、開発チームは改善に消極的である。
・1年後にまた確認したいが、私は悲観的だ。
309:デフォルトの名無しさん
22/02/15 19:01:34.90 VjJREOVz.net
現状、WindowsデスクトップアプリはWPFでWinFormsのようなイベント駆動が一番マシなんですかね
レイアウトの自由度、高DPIへの対応、表示速度を争点にした場合
310:デフォルトの名無しさん
22/02/15 19:16:29.32 3zKYAjvH.net
winrtはどこに属すの?
311:デフォルトの名無しさん
22/02/15 19:33:35.93 ES8IiGQC.net
>>306
それでいいと思う。それが一番処理速度的にもファイル構成的にも無駄がない。
ただViewに依存しない処理はなるべく別クラスに切り出すことぐらいはしておいたほうがいい。
312:デフォルトの名無しさん
22/02/15 19:36:57.71 sOBRzctF.net
データバインドは使わんの?
エラー表示とか便利っぽいよね
313:デフォルトの名無しさん
22/02/15 20:18:43.19 A9ZkwK3T.net
>>309
使った方がいいと思った箇所で使えばいいんじゃね?
どちらかに縛る必要はないと思うが
314:デフォルトの名無しさん
22/02/15 20:29:33.78 qXoJQquN.net
>>305
WinUI3だが、内部のWinRTは十分こなれているからバグは少ない
問題は表示系だが操作不能になるようなものは稀で回避策はある
速度に至ってはWPFより遅いことはないんだが、何処の情報なん?
315:デフォルトの名無しさん
22/02/15 20:36:28.97 xE3FS5+c.net
速度に関して前スレで話題になってたやろ
316:デフォルトの名無しさん
22/02/15 20:40:31.81 qXoJQquN.net
>>312
1.0 Stable以前は酷いものだったが、そこから情報アップデートしていない人が多いのかね?
317:デフォルトの名無しさん
22/02/15 20:42:15.57 xE3FS5+c.net
URLリンク(github.com)
これは解決されたの?
318:デフォルトの名無しさん
22/02/15 20:55:45.02 s9A1ir2/.net
>>305
> ・現状は WPF on .NET 6 が一番つぶしが効く状態。
これはないかな
まず.NET6後二年も寿命がない
それは別としてつぶしが利くのはwinforms
技術的進展もなければ使えなくなる技術もない
安定
319:デフォルトの名無しさん
22/02/15 20:58:11.37 z+l2+roq.net
>>313
>パフォーマンスに関する考察
>Windows App SDKのバージョン1.0では、WinUI 3アプリの起動速度、RAM使用量、インストールサイズが、UWPで見られるものより大きい/遅いです
by docs.microsoft.com
Windows App SDKのバージョン1.0では
Windows App SDKのバージョン1.0では
Windows App SDKのバージョン1.0では
320:デフォルトの名無しさん
22/02/15 20:59:22.62 qXoJQquN.net
>>314
WinRT系だと自家製ビヘイビアもほとんど使わずに済むから特に気にならないバグだな
既存のコントロールは関係ないだろうし
321:デフォルトの名無しさん
22/02/15 21:07:44.33 xE3FS5+c.net
コンポーネントメーカーdebexpressの中の人が速度がでねぇっていってるし
community toolkitのDataGridも速度出てねぇし
つまりListViewとかで速度がWPFより遅いって話なんじゃねぇの??
322:デフォルトの名無しさん
22/02/15 21:08:04.86 qXoJQquN.net
>>316
UWPの.net Nativeは極めて優秀だからそれと比較してGUIのパフォーマンスやインストールサイズが悪くなるのはしょうがない
UWPだとライブラリの中でアプリで使われていない部分を全部バッサリ切り捨てるしAOTにコンパイルされるので
WPFのUnSafeと同等のパフォーマンスだ
UWPはWPFと比べられないほどインストールサイズも小さいし速度も早い
ただUWPでもファイル操作はサンドボックス化の影響を受けていて遅いが、WinUI3はSystem.IOを使えるからそこは充分早い
323:デフォルトの名無しさん
22/02/15 21:10:30.82 6QhYGEAR.net
マイクロソフトの中でもフレームワーク開発チームは互いに戦ってるのかな
324:デフォルトの名無しさん
22/02/15 21:12:07.58 ES8IiGQC.net
>>315
WPF on .NET6の次はWPF on .NET8に乗せ換えるだけだぞ。
>技術的進展もなければ
だからそもそも採用されない。
わざわざ生産性が低いものを選ぶ理由がない。
325:デフォルトの名無しさん
22/02/15 21:24:14.14 s9A1ir2/.net
>>321
生産性は高いよ
時間当たりに生み出す価値が大きいほうが生産性が高いと言う
winformsで5分でできるものをWPFでは確実にそれ以上かかる
しかも学習時間も含めるとWPFの生産性が確実に低い
326:デフォルトの名無しさん
22/02/15 21:31:14.07 VAjtBqbg.net
WinFormとWPFは同等の手法が使えるからどっちがどっちって事はないだろ
慣れたら何かBindableObjectとReativeProperty使えばVVMでサクっと作れて見通しも良い
327:デフォルトの名無しさん
22/02/15 21:33:48.96 cnyVxlxn.net
>>319
そもそもUWPってGUIはWindows側のAPIを呼ぶだけだからな
WPFやWinUI3みたいに巨大なランタイムをロードする必要がない
AOTみたいな小手先の最適化を云々する以前に、ディスクIOの量が全然違う
328:デフォルトの名無しさん
22/02/15 21:49:28.29 cAuAN9G6.net
>>322
いや、生産性はかなり低い。
作るスピードも修正するスピードもWPFの方がずっと上。
winformsの進化版として使う分には学習時間なんてほとんどかからない。
329:デフォルトの名無しさん
22/02/15 21:52:12.13 s9A1ir2/.net
常に勉強し続けるのが善で正義と思うのは間違い
MVVMのパターンも変わり続けて何か正義なのかすらもわからない
これはこうしたほうがいいと絶対的に言える状況なのか
1年しないうちにいやいやこれはとか訂正されたりライブラリから削除されたり生産性が低すぎる
330:デフォルトの名無しさん
22/02/15 21:55:34.96 s9A1ir2/.net
MVVMの長らくの議論
ダイアログはどうやって出すかみたいな馬鹿な問題とかもうどうでもいい
331:デフォルトの名無しさん
22/02/15 22:09:55.99 ES8IiGQC.net
ひょっとしてWPFはMVVMで作らないといけないと勘違いしている?
MVVMを一切使わなくても問題ないよ。それでもWPF使った方が開発が楽だから。
332:デフォルトの名無しさん
22/02/15 22:17:46.86 C8AABCuO.net
バインディングって単語が出るとMVVMパターンと同一視しちゃうのかな
333:デフォルトの名無しさん
22/02/15 22:43:33.35 sOBRzctF.net
コードビハインド書いたらMVVMじゃないと
334:デフォルトの名無しさん
22/02/15 22:46:16.80 aWeidgzt.net
個人的にはC++みたく良いとこ取りする感じかな
WinFormsの気軽さで、データバインディングするだけ
335:デフォルトの名無しさん
22/02/15 22:49:22.58 VAjtBqbg.net
単発アプリならVVMでじゅうぶんMは要らん
やりにくいところはコードビハインドで逃げ
336:デフォルトの名無しさん
22/02/15 23:47:52.75 DOsFVpUk.net
>>332
Mは普通APIの先のサーバサイドにあるだよ
337:デフォルトの名無しさん
22/02/15 23:48:13.11 DOsFVpUk.net
>>327
笑
338:デフォルトの名無しさん
22/02/16 10:21:32.43 JfSJk6Eb.net
笑笑
339:デフォルトの名無しさん
22/02/16 10:59:48.00 T0LbVKne.net
ダイアログに関する議論はMFCの頃から繰りかえされていてMVVM関係ない
最近の話題だと適用ボタンだよね。ダイアログに何か設定するOn/Offという項目があったと仮定して
その設定が反映されるのは(1)On/Off切り替えた瞬間(2)適用ボタンを押したとき(3)OKを押してダイアログを閉じた時
でそれぞれ異なる
340:デフォルトの名無しさん
22/02/16 11:30:15.17 JfSJk6Eb.net
使うコントロールも考慮する必要がある。
トグルスイッチはOn/Offを切り替えた瞬間に設定を反映することが求められる。
341:デフォルトの名無しさん
22/02/16 14:09:37.66 ie/DSr5F.net
その話題もMVVM関係ないんだけどな
ただのUIの問題で
342:デフォルトの名無しさん
22/02/16 14:28:20.83 prElW7Wj.net
URLリンク(github.com)
これうちでも発生してるわ
パッケージ名を、初期値のぐちゃぐちゃなやつに戻したらきちんと動いた
パッケージ表示名だけ変えておけば問題ない?ユーザーから見える部分で影響がなければいいんだけど
343:デフォルトの名無しさん
22/02/16 14:46:38.19 9x9DexoX.net
>>338
うん、だから今は設定反映の話題だよ。
344:デフォルトの名無しさん
22/02/16 21:11:28.96 raZgx3Yl.net
違うんじゃね?
VとVMの対話の件だろ
結局メッセンジャーパターンで解決されたけど
MVVM界隈でもWPFだけだぞ
とにかくアホらしい
345:デフォルトの名無しさん
22/02/16 21:54:37.14 GuByYKJZ.net
MVVMで真っ当に実装する必要があるならダイアログ今はサービス使ってるわ
適当アプリならVMからShowDialogや!
346:デフォルトの名無しさん
22/02/16 22:33:25.97 raZgx3Yl.net
MVVMで御高説をのたまってるやつらも、
ダイアログだけVMがVの参照持ってるの多いと思われ
アホ過ぎ
347:デフォルトの名無しさん
22/02/16 22:56:04.26 GuByYKJZ.net
ケースバイケースだろ
348:デフォルトの名無しさん
22/02/16 22:56:34.84 k9K3LRO9.net
WinUI3のContentDialogは極自然にVMから操作可能ではある
但し厄介なバグがあるんだよな
349:デフォルトの名無しさん
22/02/16 23:50:00.59 9J2Avx3b.net
そういうところが最近のMSらしい
350:デフォルトの名無しさん
22/02/17 00:27:46.74 mxZsFD+m.net
Windowsのシステムで設定したテーマをそのまま使うと問題ないけど
RequestedThemeでアプリ独自のテーマに変更するとContentDialogの表示がおかしくなる
黒バックに黒文字になったり白バックに白文字になったり
しかしContentDialogをページに埋め込みじゃなくて独立させて作るとと何故かうまく動く
351:デフォルトの名無しさん
22/02/17 08:30:25.43 RRNNLUq7.net
>>341
いや、違くない。最初にMVVMとは関係ないと断っている。
だから実装ではなくUXの話。
ちなみにメッセンジャーパターンはアンチパターンだから使うやつは馬鹿。
352:デフォルトの名無しさん
22/02/17 08:57:01.84 j4TiyS3p.net
>>348
どうするのが正解?
353:デフォルトの名無しさん
22/02/17 13:33:28.92 D3Kp3a02.net
>>348
俺がWPFまだやってた頃、
VとVMの通信の方式でかなり揉めてて
メッセンジャーパターンの確立で
やっとWPF流MVVMのすべての問題が解決!
皆が\(^o^)/ってなってたんだけど
その後なんか動きがあったのかい?
自分はこの頃WPFにサヨナラして
SPAに全振りする事になったんだけど
354:デフォルトの名無しさん
22/02/17 13:34:33.35 D3Kp3a02.net
>>VとVMの通信
これ双方向の話ね
355:デフォルトの名無しさん
22/02/17 14:37:01.90 YUSmIxV4.net
WinUI3、ちょくちょくデザイナが表示されないってバグ報告あがってて笑った。
まさかデザイナが無いなんて夢にも思わないよな。正式版なのに。
356:デフォルトの名無しさん
22/02/17 14:38:43.90 /0nSI8jp.net
WPFに歴史的価値があるとすれば、それは
MVVMは保守性と開発効率を低下させると実証したこと。
357:デフォルトの名無しさん
22/02/18 13:11:59.42 J8+KRXGO.net
既存のFormアプリにWPFのWindowを表示するため
WPFカスタムコントールライブラリのプロジェクトを追加して
WPFのWindowがダイアログで開けたのですが、なぜかFormアプリの
UIコンポーネントが全て小さくなります。
小さくならない方法はありますでしょうか?
358:デフォルトの名無しさん
22/02/18 14:23:41.28 94FodQmT.net
>>350
VでVの要素を操作するサービスクラスを生成してVMにインジェクションするのが一番楽だが
詳細を噛み砕いて説明するのは骨が折れるから誰かやってくれ
359:デフォルトの名無しさん
22/02/18 17:40:21.19 FPiQltqk.net
>>355
WPF メッセンジャー MVVMでググると上位は大体10年前ぐらいの記事が出てきます
でも多分今でもメッセンジャー使ってる人はいるんだと思う
○○の寄せ集めのQiitaですら代わりの技術の紹介がない
360:デフォルトの名無しさん
22/02/18 17:43:40.08 NqXxszTV.net
WPFがMVVMがクソだと証明したからな。
361:デフォルトの名無しさん
22/02/18 17:47:22.30 FPiQltqk.net
他のMVVMではこんな話で盛り上がってないもんな
データの射影ぐらいの扱いなのになんでWPFじゃ状態遷移とかその他もろもろ全部MVVMでやらなければならないんだ
どうせ再利用なんかしないのに
362:デフォルトの名無しさん
22/02/18 17:54:24.26 Sc3FeDVQ.net
>>358
中途半端な初心者が「MVVMでやらないとバカにされる!」
って強迫観念に囚われてるか、意味も分からずこうやって作るものって思考停止してるか、両方か
363:デフォルトの名無しさん
22/02/18 17:58:06.73 FPiQltqk.net
>>359
いやいや
熟練と言うか知り尽くしたほうが危うい
364:デフォルトの名無しさん
22/02/18 18:26:19.18 TADg4zOp.net
メッセンジャーパターンまで付�
365:ォ合って 辞められて良かったわーー 苦労しても固有のロジックすぎて 他で全く役にたたないからな
366:デフォルトの名無しさん
22/02/18 18:27:26.73 TADg4zOp.net
>>359
当時から、
MVVM至上主義って言われてたよな
367:デフォルトの名無しさん
22/02/18 18:45:06.76 T3Y33b1k.net
MVVM使わないで、例えばconfigを設定する画面を想定した場合、
//configからcontrolへ
IdTextBox.Text=config.Id;
//controlからconfigへ
config.Id=IdTextBox.Text;
みたいなのをコードビハインドに書いてるの?
368:デフォルトの名無しさん
22/02/18 21:55:43.47 +xc5jpMS.net
HTML/CSSなら思い通りの画面作れるけどXAMLだと作れない。
「技術的に」じゃなくて「自分のスキル的に、っていう意味だけど、
やっぱり参考となるようなsampleの絶対数の少なさがなぁ。
369:デフォルトの名無しさん
22/02/18 22:07:10.37 tDFU7xrn.net
WebView2でよくね?
今更こんなオワコン使わなくても
370:デフォルトの名無しさん
22/02/18 22:20:20.27 eP6qEqnA.net
話題がループしてるな
371:デフォルトの名無しさん
22/02/18 22:31:21.56 TADg4zOp.net
>>365
WebView2をどう使うの?
372:デフォルトの名無しさん
22/02/18 22:34:46.53 y3Eq57lv.net
WebView2の人はUIフレームワークとツールキット何使ってる?
373:デフォルトの名無しさん
22/02/18 23:51:16.91 YtNFK6ow.net
あー、WebViewでローカルのhtmlとかも表示できるってこと?
だったらそれでいいのかな
374:デフォルトの名無しさん
22/02/18 23:55:20.81 TADg4zOp.net
どうやって表示制御するの?
375:デフォルトの名無しさん
22/02/19 00:12:02.32 v22Fyi01.net
>>370
C#のオブジェクトをWebView側に渡すことでJavaScript側からC#のメソッドを呼び出したりC#側の状態を参照したりできる
あとは普通にJavaScript側でReactとか使うだけだ
376:デフォルトの名無しさん
22/02/19 00:22:40.12 UkMRjGML.net
JS側とC#のやり取りをどうやるか定番ってあるのかな。
あまり聞いたことがないがまさかRESTとかじゃないだろうし。
377:デフォルトの名無しさん
22/02/19 00:27:02.29 yc9OR0yy.net
WPFで自前ブラウザー&httpsサーバー作って
SPAをホストする方法ね
中身はReactとか...
自分がSPAに移行するまえに
しのぎでやってた方法
この方式でキオスク端末でまだ何台か動いてるよ
でも今はPWA有るからそっちのが楽だけどね
378:デフォルトの名無しさん
22/02/19 00:27:35.44 yc9OR0yy.net
>>372
websocket
379:デフォルトの名無しさん
22/02/19 00:28:31.85 yc9OR0yy.net
>>372
electron.NETとかみてみれば
もうWPFの要素ないけど...
380:デフォルトの名無しさん
22/02/19 00:32:25.83 yc9OR0yy.net
あとc#とjsの連携のedge.jsというのがある
381:デフォルトの名無しさん
22/02/19 00:36:35.88 X0wJkiGG.net
>>368
Svelte
382:デフォルトの名無しさん
22/02/19 00:47:45.48 UkMRjGML.net
なんかいっぱいでてきたw
定番とかは定まってないのか。
383:デフォルトの名無しさん
22/02/19 00:51:11.00 yc9OR0yy.net
react
変なの選択すると開発者集めに苦労するよ
保守も
384:デフォルトの名無しさん
22/02/19 00:59:59.59 UkMRjGML.net
純粋なWebアプリならもちろんReactでいいんだが。
>変なの選択すると開発者集めに苦労するよ
JS on C#ってのが現時点ではそんな気がする。
素直にWPFやFormsでいいじゃん、と。
385:デフォルトの名無しさん
22/02/19 01:26:47.51 yc9OR0yy.net
潮流的にクライアントサイド要員はjs(ts)必須ですね
デザイナーの成果物がhtml,css,jsですから
ダサいのは商品価値もさがりますからね
サーバサイドはjava,c#,js,ruby,python(最近は本当に増えてます)いろいろですね
言語統一したかったらjsですね
ただサーバサイドは要員も別のが多いです
386:デフォルトの名無しさん
22/02/19 02:10:08.75 9cx4u8XC.net
jsは型が動的なのがなぁ…tsも実行時の型は保証してないし
387:デフォルトの名無しさん
22/02/19 03:21:20.16 YdSWfk2N.net
TSの処理系によって型安全レベルが違ってるからねぇ
ありえんけどブラウザがネイティブでTSに対応したら使ってもいいけど
388:デフォルトの名無しさん
22/02/19 03:33:01.88 yc9OR0yy.net
クライアントサイドはc#よりtypescriptのほうが書きやすくて圧勝ですね
あとUI開発にはホットリロード必須と思います
Blazorは最悪でした
389:デフォルトの名無しさん
22/02/19 07:57:27.90 jK3SOMU4.net
JavaScript(TypeScript含む)は絶対関わりたくない。
こんなの大規模開発に使っていい代物じゃないよ。
JavaScriptが担っていた部分はDartに置き換わってほしい。
あとReact系もさっさと滅びろ。
390:デフォルトの名無しさん
22/02/19 07:57:48.80 ApZEftHi.net
>>116のMS製React Nativeがいいんでないか?
もしくは
391:デフォルトの名無しさん
22/02/19 08:46:04.71 FnhAxPLY.net
つか、WebView2ならC#とJSのIFは標準で用意されているのに誰も知らないのな
つまり口だけで誰も使っていないということだろ
392:デフォルトの名無しさん
22/02/19 09:07:27.13 AlOKsuc0.net
>>354
答えになってないかもしれんが、
FormアプリにWPFを使うなら、formのelementhostにWPFのユーザーコントロールを貼るのがいいと思う
393:デフォルトの名無しさん
22/02/19 10:01:52.96 yc9OR0yy.net
>>387
それマジ?
394:デフォルトの名無しさん
22/02/19 10:14:08.32 FnhAxPLY.net
>>389
あ、371の人は知っているようだから「誰も知らない」は間違いだな
WebView2のドキュメント見れば書いてあることだ
395:デフォルトの名無しさん
22/02/19 10:45:05.98 h/hs4NES.net
.NET5 WPFのListBoxについて質問があります
VS使わずにやってるんですがBehaviorがないと言われます
名前空間もusingしてますが、そもそも無いようで…
別の機種からの投稿なので具体的な名前空間は忘れましたが、サンプル通りのやつです
やりたいことは一つのListBox内の入れ替えや複数のListBox間のD&D操作です
396:デフォルトの名無しさん
22/02/19 10:48:21.53 v6jasGDT.net
C#でM書いて渡せばWebView2のJSから直接アクセスできるから、MVVMやってるならVVMの部分がそのままJSとHTML/CSSに置き換わるだけだね
つまりビジネスロジックは完全にC#で書けるわけで、これでなおJSで大規模開発辛いと思うなら、
多分そいつがMVVMだと思っているものはVMにロジック書きまくってるエセMVVMの可能性が高い
397:デフォルトの名無しさん
22/02/19 11:31:54.74 yc9OR0yy.net
WebView2
ひっそりとそんなブリッジ機能あったのね
10年前にあれば良かったかな...
日曜プログラマー的に
昔みたくフロントreactでロジックc#で作ってみるかな
398:デフォルトの名無しさん
22/02/19 11:32:54.00 yc9OR0yy.net
でもWebView2使った
electron相当のもうあんじゃね?
知らんけど
399:デフォルトの名無しさん
22/02/19 11:33:36.90 R5yjbcGL.net
System.Windows.Interactivity.dll → Xaml.Behaviors.Wpf
400:デフォルトの名無しさん
22/02/19 11:50:34.88 UkMRjGML.net
>>392
でもJSとC#混在ってだけで一段ハードルが上がるわけじゃん。
ビジネスロジックだけじゃなくてプレゼンテーションロジックも同じC#で書けた方が楽なのは間違いない。
401:デフォルトの名無しさん
22/02/19 12:07:51.70 yc9OR0yy.net
システム開発でweb系が苦手ってだけで
仕事めちゃ少なくなるんですよ
肩身がせまい
情シスのお客さんなら
100%web出来るから
フリーのwebのUIライブラリーに見劣る操作性のものは
恥ずかしくてだせないですね
自分は
そんな背景でjsには精通する必要があって
第二言語のc#は別のでもいい感じなのです
一番多いのはjavaで
最近はバックエンドpythonがマジで増えてる
402:デフォルトの名無しさん
22/02/19 13:03:45.50 mW2XZAFZ.net
>>396
上がるか?下がらん?
403:デフォルトの名無しさん
22/02/19 13:16:07.12 IE8zF3Kj.net
html側もwebview2べったりがイヤだからwebapiモドキ
404:デフォルトの名無しさん
22/02/19 13:23:50.87 UkMRjGML.net
>>398
そのココロは?
単純にJSとC#、Reactと.NETと、異なるものを同時に扱わないとならないだけでもその分労力は増えると思うが。
405:デフォルトの名無しさん
22/02/19 13:34:39.99 X0wJkiGG.net
>>400
Reactみたいにややこしいもの使わなくてもSvelteでも何でも良いんだし。
言ってるほど難易度高くないよ。
カスタマイズしたオーナードローなTreeViewとか作るならHTML+CSSの方がはるかに楽。
406:デフォルトの名無しさん
22/02/19 13:40:29.28 yc9OR0yy.net
WPFは自作コントロール作るのが酷く面倒だからね
407:デフォルトの名無しさん
22/02/19 13:55:04.77 UkMRjGML.net
>>401
つまり、カスタムコントロール作る前提なら、ってことかな。
うちでやってるデスクトップアプリだと、よほどのことがない限りいちいちカスタムコントロールなんて作らないしなぁ。
408:デフォルトの名無しさん
22/02/19 13:55:48.58 X0wJkiGG.net
アニメーションするチャートとかもWebベースの物の方が良いもの多いよね。見やすいのが多いし、作る側としてもインタラクティブな動きはつけやすい。
最近は業務アプリでもみんな目が肥えてるから。
PowerBIとかもWebViewっぽくないか?
409:デフォルトの名無しさん
22/02/19 13:56:45.11 X0wJkiGG.net
>>403
カスタムコントロールまでいかなくても、チャートの類とか、ビューアーの類とか。
PDFのプレビュー出すのにWebView使うとかもアリよ。
410:デフォルトの名無しさん
22/02/19 14:00:32.65 UkMRjGML.net
JSとC#の話をしていたはずなのにCSSとXAMLの話になったり、プログラミングの話をしていたはずなのに
ライブラリが豊富という話になったり、なんだろうこのモヤッとする感じ。
411:デフォルトの名無しさん
22/02/19 14:04:51.66 Gaj/uCI/.net
c#ジジイたちにWebなんてムリ
今のhtmlやcssは複雑になったしデザインとレスポンシブ込みだとcssフレームワーク使っても使えない無能ばかりだからな
412:デフォルトの名無しさん
22/02/19 14:10:51.58 X0wJkiGG.net
>>406
C#とJSを連携する目的はそれしかないからでしょ。
JSで業務ロジック作って連携する訳がないんだから。
C#でXAMLをコントロールする話と、JavaScriptでCSS+HTMLをコントロールする話が、
C#からJSにinteropしてHTML+CSSを動かす話になるじゃん。
その上で使えるライブラリはJSでしょ。
何が疑問?
413:デフォルトの名無しさん
22/02/19 15:33:28.33 AlOKsuc0.net
みんな、たまにはWPFの話もしてくれよ
414:デフォルトの名無しさん
22/02/19 15:42:50.85 HrfptPE1.net
WPFからバインディングを切り離したグラフィックモジュールが欲しい
バインディングが諸悪の根源
415:デフォルトの名無しさん
22/02/19 15:45:17.17 evvGZLor.net
>>410
ならバインディングしなければいいだけじゃないのか
バインディングそのものはWinFormsにもあるんだぜ
416:デフォルトの名無しさん
22/02/19 15:47:24.50 b+8HD1Ua.net
常用してるライブラリがあったら教えてくり
417:デフォルトの名無しさん
22/02/19 16:17:06.06 bVzeAasi.net
ID:X0wJkiGG みたいに情報提供してくれる人はありがたいけど
煽り入れてくるのはNGするといいお
418:デフォルトの名無しさん
22/02/19 16:34:50.41 JpT/s+kG.net
webもやらないとなぁと思ってVueで入門だわ・・・
419:デフォルトの名無しさん
22/02/19 17:50:55.25 X0wJkiGG.net
>>412
JSだとSvelteで全て済ませたいところなんだけど、d3.jsでチャート書くことも多い。
あと変わり種としては最近はmo
420:del-viewer使ったものも作った。割とウケたけど、これは多分3D触らない人は使わないと思う。
421:デフォルトの名無しさん
22/02/19 18:35:10.60 AlOKsuc0.net
>>410
バインディングを一切使わなくてもアプリは作れるよ
422:デフォルトの名無しさん
22/02/19 20:28:44.30 ZIf//Swn.net
Bindingすげぇ!って言ってたじゃんお前ら最初
423:デフォルトの名無しさん
22/02/19 20:32:24.01 FnhAxPLY.net
>>416
ListViewやListBox、TreeViewなどが使用不能だから
しょぼいやつしか作れませんわ
VM使わないならまだしも
424:デフォルトの名無しさん
22/02/19 21:22:19.62 dHM7ffAe.net
仮想化使わなきゃItemsControl系使えるけど
まぁ、データ数増えたらきついな
425:デフォルトの名無しさん
22/02/20 06:09:29.10 rMSJWNa2.net
>>418
それらもバインディングなしで使えるよ
426:デフォルトの名無しさん
22/02/20 09:19:45.81 OX17O63E.net
Caliburn.Microならx:Nameだけでバインディングする
PropertyChanged.FodyならINotifyPropertyChangedを自動実装する
バインディングがわからないって初心者、またいちいち書くの面倒で嫌という人なら役に立つかもしれない
427:デフォルトの名無しさん
22/02/20 16:36:12.10 fPGhCMQ1.net
もう終わったドマイナーライブラリの宣伝はいらないよ
428:デフォルトの名無しさん
22/02/20 20:58:13.91 THbE7o0A.net
VBA触ってからWPF触ったときはデータバインディングに感動したりもしました
429:デフォルトの名無しさん
22/02/20 21:23:04.93 swKuI/ic.net
データーバインディングって Borland C++ Builder の時から有ったよね
430:デフォルトの名無しさん
22/02/20 21:28:40.05 XyZ+411b.net
>>424
そう。当時はシンタックスシュガーでしかなかったものが
MVVM信者によってアーキテクチャの一部に祀り上げられたのが根本的な誤ちの始まりになった。
431:デフォルトの名無しさん
22/02/20 21:40:18.51 yw9AEnt+.net
何が誤ちだよ「過ち」って書くんだよ
MVVM理解できない奴は根本的に学がなくて勉強嫌いだって分かるな
432:デフォルトの名無しさん
22/02/20 22:14:55.49 zJV+WKvF.net
C#自体がマイナー
実需はゲーム開発のみ
433:デフォルトの名無しさん
22/02/20 22:21:48.82 uUEkIMOM.net
>>426
常用漢字ではないけど>>425の文脈だと誤ちでも間違いでもない
そもそも5chで誤字指摘とか…
434:デフォルトの名無しさん
22/02/20 23:17:32.96 Qz/cDKkO.net
文書入力した後、見返したり推敲したり編集したりしないのだから入力違いやグダグダ文書なんか当然
いわば一筆書きみたいな文書の書き方になるわけだし
435:デフォルトの名無しさん
22/02/20 23:40:10.52 uUEkIMOM.net
技術板なので技術的にグダグダなのは勘弁して欲しいが意味が取れるなら多少の誤字とかは許容範囲
436:デフォルトの名無しさん
22/02/20 23:58:10.11 j4WAiXFM.net
たぶん、MVVM信者って煽りが気に入らなかったんでしょ
だから誤字を指摘してやり返したと予想
437:デフォルトの名無しさん
22/02/21 01:29:06.13 06fqlVz8.net
>>425
べつに誤字や漢字使いはどうでもいいんだが
バインディングがシンタックスシュガーって、もとはどうだったのか気になる
もともと機能としてはもってて書き方だけなのか
自動生成なら相当な量のコードに該当する気がするんだが
438:デフォルトの名無しさん
22/02/21 01:39:26.02 MsEPZ7ij.net
そもそもフロントアーキテクチャ界隈では
viewModelとviewのデータフローで
双方向というのは否定されている
439:デフォルトの名無しさん
22/02/21 01:45:07.36 Vo68A3hI.net
使ってみたらシンタックスビターだった。
440:デフォルトの名無しさん
22/02/21 09:57:25.91 Z2tCC8cM.net
>>433
そんなこと言っても、Connected Animationは双方向出来ないと詰む
441:デフォルトの名無しさん
22/02/21 14:40:06.59 G8P6
442:KNI7.net
443:デフォルトの名無しさん
22/02/21 20:11:38.06 oeWV3I3V.net
ところで.NET7が来たわけだが
おまいらどうよ?
444:デフォルトの名無しさん
22/02/21 20:57:34.26 kRnBXcNL.net
奇数はスルーだろ。
ぎりぎりまで長寿の4.8で粘るという手もあるしな。
確実に3年以上使える。
445:デフォルトの名無しさん
22/02/21 23:59:53.65 j4nCawQR.net
コンテナの中でおさわりまんこの人です!ってやりたい人は7に飛びつくらしいぞ
446:デフォルトの名無しさん
22/02/22 11:46:49.83 q4VXFdfo.net
XAML入門:前編 〜 WPFからWindows11アプリまで 〜
447:デフォルトの名無しさん
22/02/23 11:17:19.87 AYH7H5ZM.net
今からwpfアプリ作るなら.net Coreの方がいいのかな?
デメリットは2年ごとにバージョンアップしなきゃいけないくらい?
448:デフォルトの名無しさん
22/02/23 11:35:51.75 6huhQPG7.net
いや.NETにしとけ
449:デフォルトの名無しさん
22/02/23 11:42:36.70 v6KMLEO5.net
>>441
.NET Coreは最新の3.1でも今年の年末にはサポート終了するよ
(5以降は名前に「Core」が付かないただの「.NET」)
450:デフォルトの名無しさん
22/02/23 11:46:09.12 AYH7H5ZM.net
>>442
>>443
失礼しました。.net Framework4.8か.NET6のどちらで作るかという質問でした。
451:デフォルトの名無しさん
22/02/23 12:13:40.43 n7YEN9KD.net
>>444
.Net4.8のサポートが30年あたりだから、25年までは.Net4.8が無難かと。
その頃には.Netも最適化されてるでしょ。
そもそもWindowsが健在なのかも不明だし。
452:デフォルトの名無しさん
22/02/23 12:16:35.49 n7YEN9KD.net
WPFに真剣に取り組んでも将来仕事があるのか心配。
453:デフォルトの名無しさん
22/02/23 12:23:14.34 n4QLtIZ7.net
家でWPFに真剣に取り組んで
日中はコンビニでアルバイト
だいたいこういう生活スタイルになるかな
454:デフォルトの名無しさん
22/02/23 13:22:26.22 ywzuv89F.net
>>446
MVVMの第一人者がWPF見限ってWebに移ってるのが全て
455:デフォルトの名無しさん
22/02/23 13:39:30.83 AYH7H5ZM.net
>>445
ありがとうございます。.NET6はまだまだということでしょうかね。
456:デフォルトの名無しさん
22/02/23 14:42:12.12 5YFRSXe3.net
>>448
それいつの話よ!
457:デフォルトの名無しさん
22/02/23 15:28:20.73 8ISSr+bj.net
>>446
「仕事で」というのは随分ニッチ狙いだな。
WPFは個人的に使うツールを作ったりするのに便利。
WPF⇒WinUIに移行する道もあるし。
今は駄目駄目のWinUIも2〜3年後には使えるレベルになってるでしょ。
WebはFlutterに置き換えたい。
JavaScriptはVBAと同じく、プロが使うべき言語じゃない。
TypeScriptも同じ。腐った食材をラッピングしても中身は腐ったまま。
458:デフォルトの名無しさん
22/02/23 15:30:22.63 A1VwjaQk.net
WPFを腐った食材と言いたげだな
459:デフォルトの名無しさん
22/02/23 15:45:07.83 8ISSr+bj.net
腐ってるのはJavaScript。
誕生の経緯からして大規模開発に使うようなものじゃない。
WPFは頑張ってると思うよ。
Windowsデスクトップ向け開発技術の中ではバランスがいい。
これ選んでおけば困ることがない。
後発が揃いも揃ってヘボすぎる結果でもあるけど。
460:デフォルトの名無しさん
22/02/23 16:12:12.81 EjF360bu.net
>>453
WinFormsで十分
461:デフォルトの名無しさん
22/02/23 16:17:35.16 A1VwjaQk.net
腐ってると言ってもWPFは納豆なんだよ。好きな人は好きだが嫌いな人は食べない。
462:デフォルトの名無しさん
22/02/23 16:23:19.96 YdM3SxcO.net
>>454
.NET FrameworkのWinFormsはスケーリング対応が腐ってるのがな
.NET6のなら改良されてマシになってるけど
463:デフォルトの名無しさん
22/02/23 16:28:06.25 A1VwjaQk.net
近所にスケートリンクないんだよな
464:デフォルトの名無しさん
22/02/23 16:49:27.74 5YFRSXe3.net
あいかわらずのおじさん...
465:デフォルトの名無しさん
22/02/23 16:52:38.52 A1VwjaQk.net
納得くせーガキが背伸びすんなよ
466:デフォルトの名無しさん
22/02/23 17:08:22.18 Xkg4oOVl.net
>>454
WinFormsを進化させたのがWPF。
だからWinFormsの代わりにWPFを使えばOK。
467:デフォルトの名無しさん
22/02/23 17:35:40.25 4nPsDKk4.net
Flutterってwebもデスクトップもまともに動くんかねぇ・・・
468:デフォルトの名無しさん
22/02/23 17:42:10.42 zyypBZ1d.net
flutterはデスクトップ向けに簡単にネイティブAPIつっつけないんじゃないの?
C#ぐらいデカいデスクトップ向けバッテリーがあっても結構頻繁にネイティブ必要なのに。
469:デフォルトの名無しさん
22/02/23 18:21:05.11 jrR/d40v.net
flutter webはダメっぽい
CanvasKitのwebasmとか大きすぎてダウンロードが..
そこから..
flutter desktopはok
470:デフォルトの名無しさん
22/02/24 08:38:23.23 p3uXF2gK.net
この第一人者ってJohn Gossman?
471:デフォルトの名無しさん
22/02/24 15:22:11.77 Z10usaaO.net
WPFで作成したアプリをWindows Defenderが誤検知したんだがMSふざけてんのか?
お前のとこのツールで作成したアプリだぞ
472:デフォルトの名無しさん
22/02/24 15:53:17.31 uozJ2LSE.net
>>465
どの開発ツールで作成したかなんて関係ないだろ、アホか?
見られてるのはどんな挙動をするか。
お前と同じ、キョドってるから職務質問されるんだよ。
473:デフォルトの名無しさん
22/02/25 08:37:34.40 6D5Ibm3F.net
>>465
納品するソフトで同じ事があった。
474:デフォルトの名無しさん
22/02/25 09:03:07.81 F30cwVSi.net
ウイルスがやりそうなことや、お行儀の良いプログラムがやらなそうなこと実装すると結構引っかかる
475:デフォルトの名無しさん
22/02/25 09:16:53.23 MEIpOner.net
Webにおくと問答無用で「人気がない」判定されて疑われる
476:デフォルトの名無しさん
22/02/25 12:36:04.84 n0fLabvp.net
このスレでflutterとかrustとか知ることできて
ありがたい
477:デフォルトの名無しさん
22/02/25 13:03:03.43 pyvPoE8E.net
やはりGUIはFlutterで構築するのが流行るかな
478:デフォルトの名無しさん
22/02/25 13:14:04.91 yOOIJPZ6.net
flutterはネストしたスクロール部分で欠陥があるから注意
479:デフォルトの名無しさん
22/02/25 13:56:06.11 8HeuC971.net
まあVSのC++のコンソールアプリのテンプレートのHelloWorldをデバッグビルドするだけで
マカフィーはウィルスとして判定するんやけどな...
480:デフォルトの名無しさん
22/02/25 14:10:58.39 Geimv/XM.net
マカヘー「今どきC++なんか使ってるやつはウィルス作成者に違いない!ギルティ!」
481:デフォルトの名無しさん
22/02/25 16:03:43.25 eqYFRIFE.net
>>472
そもそもUIとしてネストしたスクロールは使いづらいし、
見た目が悪い
482:デフォルトの名無しさん
22/02/25 17:52:46.88 yOOIJPZ6.net
ネストしたスクロールってandroidで当たり前のツールバーがコンテンツのスクロールに合わせて表示されたり消えたりするやつのこととかを含む..
まじでflutterスクロールまわり欠陥だらけ
jetpack composeはそうならないことを祈る
483:デフォルトの名無しさん
22/02/25 18:15:02.63 yOOIJPZ6.net
つうか、netflixとかamazonのアプリとかyoutubeとかもネストしたスクロールだろ
縦方向にスクロールさせて個別のトピックで横方向にスクロール
こういうアプリ良くみるけど
484:デフォルトの名無しさん
22/02/25 18:28:31.23 VyDJtm7x.net
>>477
カルーセルでしょ
最近のUX言語ではスクロールとはまた別の概念だよ
485:デフォルトの名無しさん
22/02/25 18:51:35.45 yOOIJPZ6.net
ネストしたスクロールで方向が違うものを特にカルーセルっていうだと思う(想像)
486:デフォルトの名無しさん
22/02/25 19:04:52.93 yOOIJPZ6.net
ごめん>>479はカルーセルじゃねぇな
やっぱ、>>477はネストしたスクロール方向がちがうスクロールじゃね?
487:デフォルトの名無しさん
22/02/25 19:20:06.74 yOOIJPZ6.net
>>478
違う概念というが俺は元からスクロールについていってるんだが
横方向と縦方向と方向が違うが>>476はネストしたスクロール
UI的にカルーセルって言葉使いたいなら>>476はネストした
カルーセルじゃね
488:デフォルトの名無しさん
22/02/25 19:54:02.28 L/iFS/ue.net
ネストしたスクロールって親にも子にもスクロールバーが出るようなUIだぞ。
カルーセルはスクロールとは言わずにスライドとかページ切り替えと表現する。
489:デフォルトの名無しさん
22/02/25 21:12:24.61 yOOIJPZ6.net
それ以前にデザイン的じゃなくて技術的な観点から複数のコンポーネント間でUIイベントをやり取りしてスクロールを調整する動きをネストしたスクロールと表現してそういう前提で話を進めてたんだが
そこはわかりずらかったっぽいので悪かった
だから>>476のツールバーが消えたり隠れたりする動きも含めたり
androidならNestedScrollViewやらNestedScrollingParent
まぁ、そこらへんがflutterはくそ
490:デフォルトの名無しさん
22/02/25 21:29:28.09 Mlva5ec6.net
その辺は何でやってもクソな気が…(やりたくない
491:デフォルトの名無しさん
22/02/27 02:20:45.48 5PrhB3U9.net
いまからだとどうWPF勉強したらいいの?
492:デフォルトの名無しさん
22/02/27 02:22:27.16 o7kRBzLD.net
MSのドキュメント読むだけだろ。
493:デフォルトの名無しさん
22/02/27 08:52:36.15 WzYYvDDu.net
今からWPFなんてやっても仕事ないけどな
趣味なら好きなようにしていいが
494:デフォルトの名無しさん
22/02/27 09:40:55.29 COEkEbcq.net
かずきのWPF講座読んで、あとは使うならMVVMライブラリのチュートリアルでもやってみれば
495:デフォルトの名無しさん
22/02/27 10:20:56.98 ToDUQmf6.net
もはやユーザーが少なすぎてベストプラクティスもクソもない状態だから、自分の好きなように使えばいいよ
496:デフォルトの名無しさん
22/02/27 10:35:00.29 fVG8H20B.net
そうそう。MVVM警察気取りが幅を利かせてた痛々しい時代は過ぎ去ってアーキテクチャ固執主義は間違いだったと実証された。
コードビハインドにガンガン実装しても全然いいよ。
497:デフォルトの名無しさん
22/02/27 10:43:34.24 npDV8IYK.net
それは生存バイアスってやつだ
そもそも設計の良い悪いを言い出したらMVVM以前にこんな日の目を見なかったレガシー技術を採用すること自体が明らかに悪いわけで、
そういうことを気にしない人が残ってるだけ
498:デフォルトの名無しさん
22/02/27 10:50:36.47 NzDgaGJJ.net
かずきって懐かしいな
いまなにやってんだ?
499:デフォルトの名無しさん
22/02/27 10:51:25.63 NzDgaGJJ.net
>>490
WPFのMVVMが基地外なだけさ
500:デフォルトの名無しさん
22/02/27 13:45:33.61 riGTCXuy.net
>>487
身近なところや、「WPF 求人」で検索した結果を見ても仕事はあることはある。
他の人気のある言語と合わせて習得しておくのは悪くはないと思う。
501:デフォルトの名無しさん
22/02/27 19:41:21.55 ZIjTMYhr.net
MVVMって誇れるほど難しい技術でもないからw
逆にコレがわからないとしたら転職考えたほうが良いかも
502:デフォルトの名無しさん
22/02/27 19:44:43.16 o7kRBzLD.net
超ブラックのIT業界いるなら、しかもPGは底辺なのでさっさと転職したほうがいい。
503:デフォルトの名無しさん
22/02/27 21:02:08.91 Sj1PDpa0.net
>>492
日本マイクロソフト
504:デフォルトの名無しさん
22/02/27 21:12:32.76 +/7Q5xyF.net
>>495
わからないと言うより面倒と言う側面の方が強い
後はどうしたらよいか定番みたいなパターンがなかった
505:デフォルトの名無しさん
22/02/28 07:19:19.52 bo2jyn1E.net
今さらDispose()まで必須になったReactivePropety使うならナチュラルに書いた方がシンプルだし分かりやすい
506:デフォルトの名無しさん
22/02/28 08:37:02.02 yylMWC41.net
自分的にはReactivePropetyは最初から眼中にない。
ほぼ個人でメンテしているようなものは業務で使うのはありえないし、
わざわざメモリリークの爆弾仕込むようなものだし。
507:デフォルトの名無しさん
22/02/28 08:59:25.09 4BlM0ozS.net
>>456
.NET6のWinFormsデザイナ、まだベータ版だぞ。
スケーリング対応も多少改善されてるけど問題点はまだいくつも残ってるし、
そもそも固定配置前提のUIフレームワークは生産性低すぎて辛いだろう。
508:デフォルトの名無しさん
22/02/28 12:51:13.26 VFLmeVbD.net
やべー奴がいたw
URLリンク(mobile.twitter.com)
(deleted an unsolicited ad)
509:デフォルトの名無しさん
22/02/28 13:42:58.27 33ipu5gN.net
>>501
業務アプリだと1画面にビシッとハマらなければならないのでGridでいい
逆にWindowsの「設定」みたいに画面スクロールしてーーとか出したら切られる
510:デフォルトの名無しさん
22/02/28 13:59:46.31 VFLmeVbD.net
>>503
Webアプリで目の肥えた客「ウィンドウサイズに応じて最適な項目配置に変わってね。縦長ウィンドウにしたら縦に並べて、横長にしたら横に並べてね。」
511:デフォルトの名無しさん
22/02/28 15:06:09.80 ki9qQxut.net
>>504
WinFormsでもFlowLayoutPanelてのがあった気が
512:デフォルトの名無しさん
22/02/28 15:41:54.06 nNPgEP9f.net
>>505
客「あっ、そうそう、文字サイズは5段階ぐらいで調節可能にしといてね」
513:デフォルトの名無しさん
22/02/28 15:57:41.97 ki9qQxut.net
>>506
それはきついかも…
514:デフォルトの名無しさん
22/02/28 17:03:59.41 zvSrYpGE.net
テレワークで突然解像度1366x768のノートPCとかいう人権のない環境に叩き落された人もいる
古の業務ソフトには縦800が前提かつ、全ウィンドウでサイズ変更不可とかいうクソみたいな仕様を採用してるものが多いので
最下部のボタンが押せなくて仕事にならないって話をもう数件聞いてる
レスポンシブにする必要はないが画面サイズ固定は流石に時代遅れだと思う
515:デフォルトの名無しさん
22/02/28 17:20:47.12 ki9qQxut.net
>>508
それはそうなんだがWinFormsの場合はPanelを使った流動的なものでもフォントが変更されるとフォント次第ではコントロールの幅とかが変に…
かと言ってWPFはListBoxとかで工夫を加える場合面倒
516:デフォルトの名無しさん
22/02/28 22:55:13.95 eK9jJDC4.net
class ViewModel{
public ObservableCollection<Mail> Mails = ....
}
データグリッドでMailsをbindingして表示します。
データグリッドの各行ににチェックボックスを付けて、例えば一括して削除などの動作をしたい場合、MailクラスにIsCheckedなどのプロパティを追加する以外に良い方法はありますか?
Mailを継承した専用クラスを作ってそちらをbindingする方法も考えましたが、もっと簡単な、あるいは一般的な方法があれば教えて頂きたいです。
517:デフォルトの名無しさん
22/02/28 23:25:29.73 ARJn3fZ4.net
UIの状態をあらわすのがViewModelなんだから、Mail用のMailViewModelを作ってそっちにIsCheckedプロパティを追加する
で
class ViewModel {
ObservableCollection<MailViewModel> MailViewModels =
}
518:デフォルトの名無しさん
22/02/28 23:28:39.53 ARJn3fZ4.net
MVVM的にはViewにバインドさせるのはModelじゃなくてViewModel
Modelをそのままバインドできる要件ならViewModelを用意せず横着してもいいけど
519:デフォルトの名無しさん
22/03/01 04:27:43.12 HvxAN7j1.net
こんな単純なことするのにも迷うMVVMゴミすぎる
本末転倒だよ…
520:デフォルトの名無しさん
22/03/01 08:15:49.02 6mHOWi1F.net
そういうのはMVVMに限らない。MVCだって学んでなけりゃ迷うわな。
521:デフォルトの名無しさん
22/03/01 10:13:10.94 Hsy6xGe8.net
ViewModelも使うけど加工する必要がないデータはModelから直接バインドしてます
最初のころは全てViewModel経由していたけど、その意味がわからなくなって
522:デフォルトの名無しさん
22/03/01 10:17:26.44 77YWD3uc.net
>>515
MVVM警察だ。お前を逮捕する
523:デフォルトの名無しさん
22/03/01 11:08:37.82 oU1D/s0E.net
>>515
Modelってことはコードビハインド?
ざっと触ってみた感じ、ViewModelとModelは別物だね
WinFormsとかみたいな場合はイベントとかで直接View、つまりコントロールをいじってた
これをWeb系みたくデザイナーとプログラマの役割分だけするためにイベントやModelで直接コントロールをいじることを禁止する
もちろん、表示・非表示の切り替えみたいなのは別で
ViewModelを介すことで直接コントロールを操作することを防ぐ
例えばListBoxの中身をデータバインディングした場合、ViewModelを操作(配列に対する操作とか)をしたらListBoxに反映される
…って妄想してる
524:デフォルトの名無しさん
22/03/01 11:21:43.44 2vaJYGq+.net
デスクトップ開発にデザイナーなんて職業は存在しない。
525:デフォルトの名無しさん
22/03/01 13:08:57.70 RNWoyucI.net
>>517
反映するにはオブザーバブルでないといけない
それがVM
526:デフォルトの名無しさん
22/03/01 13:33:00.63 xQ0S3wJN.net
>>518
デザイナーが居る場合はある
XAMLは作ってくれないし、デザイナーの指定したデザインの再現に苦労するのはプログラマだが
527:デフォルトの名無しさん
22/03/01 16:14:35.26 UDSzZfa0.net
>>513
だな
528:デフォルトの名無しさん
22/03/01 17:02:09.29 mYgN9Bsp.net
採用すると生産性が落ちるアーキテクチャとか存在意義なくね?
プログラマーのオナニーでしかない
529:デフォルトの名無しさん
22/03/01 18:56:30.75 Tqcv2px3.net
>>511
これってMailViewModelの中にMailModelを保持すると思うけど、グリッドコントロールで行を消すとMailViewModelは消えるけどMailModelは消えずに残るよね?
そこは頑張ってコード書いて同期を取るしかない?
530:デフォルトの名無しさん
22/03/01 19:34:21.36 YC4P/K5p.net
ストレージから削除するなら
頑張って書いたほうがいい
531:510
22/03/01 19:37:28.19 dYFnJIyt.net
皆さんありがとうございます。
class MailViewModel : Mail{
public IsChecked {
get => _isChecked;
set => SetProperty(ref _isChecked, value);
}
private _isChecked;
}
上記のようなクラスを作ってBindingするのが良さそうに思いました。
532:デフォルトの名無しさん
22/03/01 19:51:58.93 JcAvsTjQ.net
>>523
グリットコントロールから行を消すことがメールの削除の操作を意味するようにしたいならMailModelも消す
単に非表示にしたいだけとか、ゴミ箱に入れておいて復活させるようにさせたいとか、色々考えられる
だからViewModelが欲しくなったのさ
533:デフォルトの名無しさん
22/03/01 20:12:49.81 Tqcv2px3.net
>>526
なるほど。ケースによって対処は変わるよね。
ありがとう。
534:デフォルトの名無しさん
22/03/02 06:20:23.82 2pV2z6cL.net
Electronの葬式準備はできたか?
URLリンク(github.com)
535:デフォルトの名無しさん
22/03/02 18:19:13.15 aIp73SHF.net
rustとか新しいのぼえとうないなぁ
536:デフォルトの名無しさん
22/03/03 05:36:04.02 uxaiIIsi.net
>>528
これは楽しみだな
537:デフォルトの名無しさん
22/03/03 09:44:18.37 Y3c36uTI.net
ここまで普及したElectronの牙城を崩すのは無理な気がする。せいぜいGoレベルだろう。
Electronがディスク使用量もメモリ使用量も超重量級なのは不満に思ってたけど。
538:デフォルトの名無しさん
22/03/03 10:21:20.83 8QQBVbSl.net
viewをhtmlとcssで書けないとつまらんよ
デザインがしょぼくなる
539:デフォルトの名無しさん
22/03/03 10:21:59.75 8QQBVbSl.net
WPFレベルでよければ可なのかもしれんが
540:デフォルトの名無しさん
22/03/03 11:12:38.88 4Us9YDJC.net
しょぼい方が評判良くて、デザイナーの自己満足全開デザインが使いづらい・分かりにくいと不評なのが現実
541:デフォルトの名無しさん
22/03/03 11:17:10.50 8QQBVbSl.net
>>534
あんたがセンス無いだけ
542:デフォルトの名無しさん
22/03/03 11:25:49.76 4Us9YDJC.net
>>535
まあそうやって逃げるしかないよな。
お前の仕事は無意味だって認めることになるんだから。
543:デフォルトの名無しさん
22/03/03 11:41:18.82 OeErkjB1.net
碌に使いもしないが権限だけは大きいエライオジサンのせいで見た目だけは派手だが使いづらいものになるのはまれによくあること
544:デフォルトの名無しさん
22/03/03 17:34:06.50 8kQ1SF/V.net
デザインセンス云々は置いといてhtml+cssのほうがデザインの幅が広いのは確か
予算があるならデザイナーにも頼めるしね
545:デフォルトの名無しさん
22/03/03 23:32:59.05 hgALKmrt.net
WPF+MVVM+Rxの実装について勉強中です
それぞれの各機能はなんとなく掴めてきたのですが、実装する場所や通知の受け取り方がまだ分かりません
例えばObservable.Intervalで指定した時間ごとにDBアクセスし、更新があれば通知するという処理はどのクラスに書くべきなのでしょうか
なんとなくですが、Mで実装しVMに通知、Vに表示と考えています
546:デフォルトの名無しさん
22/03/04 08:04:23.26 shwqyc/K.net
>>539
MVVMはあくまで、GUIの設計パターン。
DBアクセスのようなアプリの内部処理は
Mで包んでGUIの処理から隠されるので、
MVVMの処理フローには一切出てこない。
Mの原則は「GUIから見える状態に変化があれば通知する」。
この場合は、DBアクセスし、更新があり、
その結果としてGUIが更新が必要になったら、
Mに通知させるという処理になる。
547:デフォルトの名無しさん
22/03/04 09:46:05.06 EayDkyd8.net
大変わかりやすい
548:デフォルトの名無しさん
22/03/04 12:16:19.88 p2+DzLBF.net
お気に入りのアプリがWPFで実装されてて公開されてるから古いUIをWin 11のUIに合わせたくてForkしてWinUI3.0に対応させようと思ったらWindows App SDK 1.0だとAcrylicやMicaに対応してないとかズコーだわやっぱアホだわMSやることがすべて片手落ち
結局サードパーティー製のAcrylic実装を使う羽目になったわけだがこっちもろくすっぽメンテされてなくてWin11に対応してなくてダブルでズコー
たまにやる気になってプライベートでいじろうかと思ったらこれだからMSの開発環境ってマジでどうしようもないな
誰かWin11とVS2022で使える無料のAcrylic実装しらんかね?
549:デフォルトの名無しさん
22/03/04 12:27:44.21 7Zhud46/.net
>WinUI3はまだ完成していません。
一応MSもその認識はあったのね。
あんなお粗末な出来で自信を持って1.0として出したわけじゃないのね。
550:デフォルトの名無しさん
22/03/04 12:43:20.96 jlehksZI.net
>>542
WinUI選ぶくらいならこれ。
Flutter for Windows
・fluent_uiパッケージ
・flutter_acrylicパッケージ
Windows向けはまだ出たばかりだけど、
現時点の機能・品質、
フレームワークとしての出来、
将来性、
開発者の期待度
どう考えてみてもWinUIがFlutterに蹴散らされる未来しか思いつかない。
WinUIは
「これが最新らしいし、やってみるか」
↓
「えっ?なにこれ、こんなしょぼいの?こんなこともできないの?」
って感じでちょっと触って実情に愕然として、さーっと離れていく。
551:デフォルトの名無しさん
22/03/04 16:27:48.56 KOjBrP/m.net
fluent_ui実際使うとちょっとアレ
modernwpfもそうだがやっぱ個人メンテじゃなー
Microsoftが手がけろよ
552:デフォルトの名無しさん
22/03/04 16:40:32.17 KOjBrP/m.net
>>305
これにUnoPlatformとAvaloniaとXamarin(maui)も追加してくれんと
で、これも全部微妙という
クロスプラットとかUIフレームワークは人的リソースさかないと品質とかできないのにみんなで戦力分散して全部微妙品質
553:デフォルトの名無しさん
22/03/04 16:41:15.22 KOjBrP/m.net
*品質とか維持できない
554:デフォルトの名無しさん
22/03/04 17:00:21.59 p2+DzLBF.net
>>544
おーサンキュー
だが流石に.NET FrameworkのレガシーアプリをFlutterでポーティングするほどの時間も熱意もないwww
とういかReactやFlutterが出る10年以上前から思ってたんだがなぜMSはXAMLとASP(Razor)を今でも別々に拡張してるのか理解に苦しむし頭が悪すぎる
まぁどうせ社内の派閥や政治でわけわからんこと繰り返してるんだろうけどその間に開発環境もシェア失ってしまったな
せめてどっちかに統一してUIの定義はCSS拡張にしないともうよっぽどの事情がないとこんなクソなフロントエンドフレームワークなんて誰も使わんぞ
理想を言えばさっさとXAMLとASPを窓から放り投げてTSとCSSで記述する新しいフロントエンドフレームワークを実装すべきだと思うんだがな
555:デフォルトの名無しさん
22/03/04 17:13:00.22 V0cJmevn.net
やるならDart使うか、同じようなJavascriptをリデザインした新言語を作って欲しい
556:デフォルトの名無しさん
22/03/04 19:51:13.51 p2+DzLBF.net
>>544
ところでFlutterってVS2022で環境構築できる?
拡張とプロジェクトテンプレートがあれば最高だけどまぁないか
Android StudioはエミュとSDK用にMacに入れてたけどくそ重くてVSCodeでReact Nativeばかり使ってるけどWinで試してみるかな
557:デフォルトの名無しさん
22/03/04 20:08:12.18 j9h/2ScS.net
みんな Flutterに行っちゃうのか..
558:デフォルトの名無しさん
22/03/04 20:20:59.67 odUl/eCo.net
>>548
それなんてReact Native?(´・ω・`)
559:デフォルトの名無しさん
22/03/04 21:23:31.50 jlehksZI.net
>>550
VSCodeとFlutter拡張で開発できる。
Windows用ビルドするのにVS2019か2022を入れておく必要はある。
でも今2022の17.1.0のバグでデバッグモードが死んでて17.1.1待ち。
560:デフォルトの名無しさん
22/03/04 21:43:37.06 p2+DzLBF.net
>>553
React NativeもそうだけどFlutterもパッケージのバージョンで開発環境ぶっ壊れて死にそうになる感じかなのか?w
とりあえずVSCodeはReact Nativeに最適化してるから先にAndroid Studio試すわ
そろそろRemote-Containersを試したいんだが最近はコーディングより環境構築がくそムズくてめんどいんだよな
561:デフォルトの名無しさん
22/03/04 22:13:47.37 uA/ZaTOg.net
>>540
ありがとうございます
まだ追加で質問できるほどの知識もないので、手を動かしながら探ってみます
562:デフォルトの名無しさん
22/03/04 22:55:59.46 /OYyWF11.net
WPFもFlutterも両方入門者レベルだけど、Flutterのが馴染むなあ…
563:デフォルトの名無しさん
22/03/04 22:58:40.01 KOjBrP/m.net
じゃあ、先にFlutterでMVVM覚えてからWPFくればいい
そうすれば後覚えるのはxamlだけ
564:デフォルトの名無しさん
22/03/04 23:41:28.81 Ot1pbWlC.net
FlutterいいけどC++やりとうないな・・・
565:デフォルトの名無しさん
22/03/04 23:42:12.12 p2+DzLBF.net
とりあえずFlutterのWindows Desktop環境の構築終わってビルドしてみてDartの構文学んでるとこだがこれDartってまんまC#のパクリやんけwww
んでFlutterの構文はJSX(TSX)のパクリだなとりあえず状態管理がReduxみたいにクソじゃなければ文句ないわ
>>544のfluent_uiとfluent_acrylic試してみるわ
566:デフォルトの名無しさん
22/03/05 00:19:20.18 E2yAAp8N.net
DartはC#じゃなくてGoogleが再定義した中途半端なJavaでイラっとするんだよな
interfaceの定義が暗黙だったりinternalならプライベートメンバにアクセスできたりわざわざimplementsやextendsが必要で冗長だったりC#の方がよっぽどモダンだよ
567:デフォルトの名無しさん
22/03/05 01:14:27.39 V2Ahzg+A.net
WinUI3は今でもアプリ内のアクリルは有効だから、ベースに壁紙でも配置すればそれっぽいものにはなるんだがね
568:デフォルトの名無しさん
22/03/05 06:05:39.61 lIUzJS5r.net
>>560 <
569:br> DartはJavaScriptの置き換えを狙った言語。 TypeScriptみたいにJavaScriptの上位互換よりも JavaScriptの古い部分を排除して新しく作り直したDartのアプローチの方が好き。
570:デフォルトの名無しさん
22/03/05 11:25:06.31 1jHFvDsl.net
>>562
は?Dartは静的型付けなんだけが?アンダスタン?
JSの置き換えが目的だが元はCだし動的型付けの進化系とか言っちゃうアホとはさすがに会話にならん・・・こんなレベル低い奴ばっかなのここ?
571:デフォルトの名無しさん
22/03/05 11:45:02.14 GCjMsc40.net
Heartだけは熱いぜ!
572:デフォルトの名無しさん
22/03/05 12:06:23.36 nwKZyNIL.net
>>563
レベル低いのはお前。
静的か動的かなんて話は一切してないぞ。
勝手に明後日の方角に突っ走って喚き散らして、そりゃお前と会話になるやつはいないだろうなぁw
573:デフォルトの名無しさん
22/03/05 13:10:04.52 GCjMsc40.net
性的か
愛的か
悩ましいところだ
574:デフォルトの名無しさん
22/03/05 13:26:38.14 mDTM2Slk.net
>>563の頭の悪さひどすぎだろw
575:デフォルトの名無しさん
22/03/05 13:37:05.84 sPneiazO.net
理詰めで論破されて悔しいけど反論できないから顔真っ赤でIDコロコロ自演して悪口とか恥ずかし過ぎるだろ
576:デフォルトの名無しさん
22/03/05 14:11:11.30 mDTM2Slk.net
理詰めって静的とか動的の話し誰もしてないのに、一人で突然型付けの話して論破って馬鹿すぎるw
誰もそんな話してねぇんだよww
技術的な話する以前の頭の悪さww
577:デフォルトの名無しさん
22/03/07 09:51:07.88 uEz3lV8K.net
WinUI 3.0の完成度は公式の認識ではまだ50%未満なんだな。
これをポジティブにとらえればいいのかネガティブにとらえればいいのか。
578:デフォルトの名無しさん
22/03/07 15:03:59.51 kOvQrFoW.net
動きのとろい奴は変化し続ける環境に追従できない
579:デフォルトの名無しさん
22/03/07 15:12:43.80 xDt5CcEi.net
未だにWPFやってる奴が言うと説得力あるな
580:デフォルトの名無しさん
22/03/07 15:32:53.11 s7EYao7X.net
世界一のIDEであるVS(codeじゃない)とC#の出来の良さををすべてスポイルしてマイナスにしてしまうフレームワークしか作らないからな
MSは良い加減一貫性や統一性のない大企業病を修正しないと開発環境を失う時代はすぐそこまできてるぞ
581:デフォルトの名無しさん
22/03/07 17:19:40.02 zKkd3LGQ.net
WinUI3で、普通にペロッとzipなりで相手に渡せるexe作れる?
配置型強制とか開発者モードONならとかは避けたいのだが...
582:デフォルトの名無しさん
22/03/07 17:23:04.90 n4nlllf2.net
>>574
UnPackagedがある
でもファイルサイズでかいし、全体的にβ版品質だぞ
583:デフォルトの名無しさん
22/03/07 17:29:13.38 LEfSXXfI.net
>>574
は?githubでbuildしたバイナリごと公開すればいいだけなんだが・・・もしかしてこのスレってレベル低い雑魚専スレだった?www