WPF(.NET, WinUI) GUIプログラミング Part26at TECH
WPF(.NET, WinUI) GUIプログラミング Part26 - 暇つぶし2ch1:デフォルトの名無しさん
21/06/20 17:04:18.66 7UVkl7BZ.net
Windows Presentation Frameworkについて語るスレ。
前スレ
WPF(.NET4.x, .NET Core) GUIプログラミング Part25
URLリンク(mevius.2ch.sc)
関連スレ
Windows 10 UWPアプリ開発 Part 2
スレリンク(tech板)
コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
URLリンク(ideone.com)

2:デフォルトの名無しさん
21/06/20 17:12:38.99 Gtwxv8wt.net
>>1
おつ

3:デフォルトの名無しさん
21/06/20 18:11:48.19 0gGUIuE2.net
>>1
たておつー

4:デフォルトの名無しさん
21/06/20 18:16:37.49 rLhrk+Fq.net
>>1
前スレのまとめ
XMLは糞

5:デフォルトの名無しさん
21/06/20 18:21:49.81 akuykRB/.net
SwingやFormsみたいにUIをコードで書かせる世界には戻りたくないなぁ。

6:デフォルトの名無しさん
21/06/20 19:37:49.51 Gtwxv8wt.net
まあ理解できないうちはXAMLとか糞に見えるもんな
俺もそうだったけどなれたら簡単になるから早く慣れたほうが良いよ

7:デフォルトの名無しさん
21/06/20 19:41:41.54 Zphs/5+o.net
MVVMが理解できないならMVVMやらなくてもいいのにプライドが高い老害が多いんだろうな
それで十数年廃れるって言い続けてる

8:デフォルトの名無しさん
21/06/20 20:03:15.61 IOfHBDeH.net
mvvm = WPF って思ってるの多すぎ

9:デフォルトの名無しさん
21/06/20 20:05:13.57 IOfHBDeH.net
どっちかというと、
mvvmアーキのフレームワークで
ぶっちぎりに最悪なのがWPFってかんじ

10:デフォルトの名無しさん
21/06/20 22:08:58.85 5dugBd6b.net
XAMLが特級のクソなだけだよ
冗長なBinding式やBehaviorやCommandなど、他のMVVMフレームワークが大量に生まれた中で誰が採用した
挙げてみろ
Javaで言うところの検査例外相当のクソ

11:デフォルトの名無しさん
21/06/20 22:14:56.41 Zphs/5+o.net
クソだと思うなら関わらなきゃいい
なぜ理解できないものに粘着するのか

12:デフォルトの名無しさん
21/06/20 22:47:51.64 X7PAuK/l.net
>>5
でもHTMLやXAMLよりむしろ便利なことも多いが。

13:デフォルトの名無しさん
21/06/20 22:49:47.76 X7PAuK/l.net
HTMLから入った人は、それが母国語の用になっているので、WinFormsやSwing
方式よりXAMLの方が便利に見えるのだろう。
MVCやMVVMもそういう人のために有るといわれている。
ところが、人気が有るのは、WinForms方式であることもまた事実だ。
なぜなら、そのほうがコントロールし易く、プログラムのソースコードから
見てもわかり易いから。

14:デフォルトの名無しさん
21/06/20 23:00:26.10 akuykRB/.net
まぁ、宣言的な記述が受け入れられなくて、なんでも逐次的・手続き的に処理されないと理解できない人は一定数いるね。

15:デフォルトの名無しさん
21/06/20 23:49:25.07 Zphs/5+o.net
WinFormsが人気ある?
GUIはマークアップ言語でやるのが主流だと思うが

16:デフォルトの名無しさん
21/06/21 00:03:57.42 ZafEWlbz.net
>>10
WinUI3とPrismなどのMVVMライブラリ使えばだいたい解決できる話ですね

17:デフォルトの名無しさん
21/06/21 00:12:54.72 85An+spJ.net
>>10
Javaの検査例外の問題って、例外機構自体が内在している問題を検査例外で静的にチェックしたせいで
白日の下に晒されてしまったに過ぎないのよな。

18:デフォルトの名無しさん
21/06/21 00:16:47.60 DBAAgUVQ.net
>>10
それXAMLじゃなくて
XAMLの上に作ったBehaviorとかの糞ライブラリ群ね
XAMLはそんなに悪くない

19:デフォルトの名無しさん
21/06/21 00:21:15.41 DBAAgUVQ.net
>>16
そんなの使ったって
いろいろ肥大化して更に糞まみれになるだけですよ
ダイアログ一つ表示するだけなのに
見通しの悪い糞まみれコード書かなきゃならないのは変わらないんですから

20:デフォルトの名無しさん
21/06/21 00:50:53.72 KYdCJjvS.net
冗長君は何年もWPFに粘着してるWinForms信者です

21:デフォルトの名無しさん
21/06/21 01:24:30.80 PP3lMGGZ.net
>>15
C#の中ではWinFormsが一番人気。

22:デフォルトの名無しさん
21/06/21 04:35:36.83 3t67Nua5.net
>>15
30年前からGUIは頬杖つきながらマウスでD&Dしてプロパティをポチポチするのが主流ですよ。

23:デフォルトの名無しさん
21/06/21 07:01:52.54 NDZaXBVn.net
>>21
人気なんじゃなくて技術レベルが低くてWinFormsしか使えない底辺PGが多いだけ
>>22
生産性の低い地獄の作業だな

24:デフォルトの名無しさん
21/06/21 08:26:44.33 3t67Nua5.net
WPFはとてつもなく生産性が低いですね。
最高の技術者が集まってるVSチームでさえWPF化に5年もかかったのですから。
自分でどれだけWPFが糞か言ってて草生えますwwww
> 人気なんじゃなくて技術レベルが低くてWinFormsしか使えない底辺PGが多いだけ
このスレの当初からこんなゴミは普及しないと言われ続け、その通りになった上に、
WPFだからこそ実装できるようなキラーアプリは何一つ存在しないだけでなく、
MSのPGからも嫌われ碌なサポートもなく放置され続けた。
あなただけがはいつか普及するはず、ビッグウェーブはすぐそこまできてる、
WPFを批判してるはスキルが低い底辺PGだと念仏のように唱えてる。

25:デフォルトの名無しさん
21/06/21 08:27:39.85 KYdCJjvS.net
それWPFでも出来るんだができないと思ってるのかな

26:デフォルトの名無しさん
21/06/21 08:33:47.23 DBAAgUVQ.net
>>24
WPFの生産性が悪いのではなく
WPFのBlendフレームワークの生産性が酷いだけ
デザイナーとの協業など見たこともなし

27:デフォルトの名無しさん
21/06/21 08:54:00.98 Y1XruxkF.net
>WPF化に5年も
それはつまりWPFの前が変更に弱い、生産性が低いってこと。
酷い作りのゴミコードを近代化するのが大変な作業なのは多くの開発者が実感してるだろう。
実際winFormsの生産性は非常に低い。
WPFで作っておけば半分の工数で済んだのにってことが何度もあった。
普及≒簡単・誰でも使える⇒代わりはいくらでもいる⇒単価下がる

28:デフォルトの名無しさん
21/06/21 12:50:18.82 /bfDvgWv.net
>実際winFormsの生産性は非常に低い。
使いこなせて無いだけ。

29:デフォルトの名無しさん
21/06/21 12:52:20.96 /bfDvgWv.net
って言うかそんなにWPFの生産性が高いのであればとっくの昔に普及してるって。

30:デフォルトの名無しさん
21/06/21 13:41:38.72 NDZaXBVn.net
>>28
言い訳が苦しすぎるww

vbおじいさん、winformおじいさんは勉強嫌いだろ。
生産性を高めようと思っていたらこんなものにしがみついていない。

31:デフォルトの名無しさん
21/06/21 14:32:57.76 QSvmLdyv.net
WPFってSilverlightと同じく失敗productだろ

32:デフォルトの名無しさん
21/06/21 14:56:36.21 DBAAgUVQ.net
>>29
Silverlight時代からなんで
そこそこ普及はしてると思うが、
実装方法は糞評価だね。
早い段階でflutterに食われるでしょ。

33:デフォルトの名無しさん
21/06/21 15:26:16.45 wnQSc3ge.net
ビヘイビアとコマンドなんてそんなものあったなあって感じ
10年くらいWPF書いてるけどその2つを使ったのって最初の1年くらいw
無くても困らないw

34:デフォルトの名無しさん
21/06/21 18:33:02.80 Nu/+E6/O.net
俺もWinFormsからWPFに乗り換えた人間だが、明らかに開発は早くなったと感じる
まあ小っさいの作るならWinFormsの方が楽だろうけどね。MVVMの骨格を整備するの面倒だし。
GUIとロジックを分けて書ける有難みはそこそこ複雑なものを作って分かったよ

35:デフォルトの名無しさん
21/06/21 18:38:34.44 Nu/+E6/O.net
まあWPFの良し悪しは置いておいても、マークアップ言語でのGUI構築には慣れておいた方が良いことは間違い無いと思う
なんせ今はWebアプリが強い時代だからね。それでも俺はデスクトップに残り続けるがw

36:デフォルトの名無しさん
21/06/21 19:07:10.23 SD9Vy51I.net
WPF以降だとサムネイル表示とか一瞬で作れるもんな
formならこうは行かないと思うけど
効率重視のformの人はformのリストビューみたいなので我慢できる人なの?

37:デフォルトの名無しさん
21/06/21 19:20:34.66 jqlm888h.net
>>10
jsとかの他のMVVMは確かにそんなもんつかってねーな

38:デフォルトの名無しさん
21/06/21 19:24:32.35 jqlm888h.net
Livetやprism使ってありがたいと思ってたけどそもそもがそんなもん使わせるなよよw
これ以外何も思わない
そのPrismですらコロコロ内容が変わる

39:デフォルトの名無しさん
21/06/21 19:55:49.41 1n0nC/ay.net
割と最近になってMVVM Toolkit for .NET(Microsoft.Toolkit.Mvvm)なんて出してきた

40:デフォルトの名無しさん
21/06/21 20:02:52.09 ZPTvRcij.net
べつにだれもマークアップ言語でのGUI構築にケチつけてないだろ

41:デフォルトの名無しさん
21/06/21 20:08:46.88 Nu/+E6/O.net
>>38
それに関しては禿同。
外部に頼る前提のフレームワークって何なんだよとw
MSが吸収したりしないもんかね

42:デフォルトの名無しさん
21/06/21 20:13:51.82 A6ZWHwGn.net
今更何を言おうが、WPFはメンテナンスモードなので未来永劫改善されることはない

43:デフォルトの名無しさん
21/06/21 20:19:00.04 1n0nC/ay.net
WPF自体はそのままだけど
VS2019で実行時にバインドエラーを専用ウィンドウで表示できるようになったり
開発環境は地味に改良されてたりする

44:デフォルトの名無しさん
21/06/21 20:39:33.26 NDZaXBVn.net
>>41
Microsoftの名前空間が付いたMVVMライブラリが出たし、これでいいでしょ。

45:デフォルトの名無しさん
21/06/21 20:41:17.43 jqlm888h.net
>>43
それは15年前に必要だったものでは?

46:デフォルトの名無しさん
21/06/21 21:08:15.72 mqD8ibJ4.net
WPFが普及しなかったのはWPFの出来とは関係ない
WPFがこれからって時に、Webアプリやらスマホの台頭で
WindowsプログラマがWPFを学ぶ前にほとんどweb,android,iosに流れてしまった
単にwindowsアプリの需要がないだけ

47:デフォルトの名無しさん
21/06/21 21:12:55.51 mqD8ibJ4.net
新規Windowsアプリの重要が急激になくなってwindowsアプリ作る人いなくなったのにWPFが普及しないとどうこういう以前の問題

48:デフォルトの名無しさん
21/06/21 21:18:34.16 b32VLmjg.net
Prismは6から7のときのだけ破壊的変更が有ったけど、それ以外のバージョンアップは後方互換性も悪くなかったけどな
7の変更のおかげでUnityからDryIocにDIコンテナを変えても、モジュール入れ替えてusing変更だけでほぼ動く

49:デフォルトの名無しさん
21/06/21 21:27:15.04 Nu/+E6/O.net
>>43
VS2019が出るまで、我々はあのコンソール画面と睨めっこしながらバグを潰していたのか…
オ゙ェ゙ッ

50:デフォルトの名無しさん
21/06/21 21:28:25.72 mqD8ibJ4.net
業務アプリとかならWinFormsでもいいかもしれんけど、今風なおしゃれな見た目のアプリ作るとなるとWPFというか、WinUIになっちゃうからな
諦めるしかない
つか、お前らどうせ新しくWinアプリ作ってねぇだろ??w
俺は4年前にUWPアプリ2つ作ってから、もうずっとスマホアプリだけだわ

51:デフォルトの名無しさん
21/06/21 22:03:56.86 jqlm888h.net
WPFは初期だけ盛り上がってしばらくしたら誰もいなくなった
外人のスタープログラマが持ち上げてたけどそいつらもすぐにいなくなった
コードを書く以外の時間も長いし
相対的なコード量も増える

WPFの学習効率の悪さ
開発環境の劣悪さ
MVVMによるコードの長大化
MVVMのデバッグの難しさ
など
winformsでは起こりえないいくつのマイナスポイントがあった

52:デフォルトの名無しさん
21/06/21 22:22:38.53 A6ZWHwGn.net
>>50
俺はバックエンドがメインになって(Web含め)GUIアプリ自体仕事では全く作らなくなったな
画面作るのは好きだがツールに振り回されるのはアホらしいわ

53:デフォルトの名無しさん
21/06/21 22:45:13.59 RsRWwffr.net
>>46
スマホやWebのせいじゃなく、アメリカの独占企業たちが、検索エンジンやOS
やハードウェアで儲けた金で無料でプログラムを配りだして、彼ら以外に
はWindowsアプリ作っても一線も設けることができなくなったこと、
Blenderや無料Office、GRUB、Apache、gccなどのGPLな無料アプリの台頭、
などがあるのではないか。
AndoridやiOSはMSの息が掛かってなかったから、売れるチャンスがあった。

54:デフォルトの名無しさん
21/06/21 22:54:34.53 RsRWwffr.net
アプリ作っても無料アプリに負けることが多くなったと思う。

55:デフォルトの名無しさん
21/06/21 23:58:30.48 mqD8ibJ4.net
WPFでMVVMを学んで、
今はandroidでもkotlin+MVVM
今はflutterでも開発してるがこれもMVVMで作ってる
MVVM最高!!

56:デフォルトの名無しさん
21/06/22 00:51:13.35 /hzWR5hC.net
>>51
学習高率の悪さねえ…
VB2~6でイベントドリブン入門した層がWinFormに移行して
(奴らはこの時もオブジェクト指向だの.NET Frameworkだのでかなり苦労した)
その成功体験と開発方針を金科玉条のごとく大事にしていて
新しいパラダイムに対応できなかったことを指すならその通りだね
デスクトップアプリの開発者はWebアプリと違って新しい事にチャレンジするモチベーションが無いからな

57:デフォルトの名無しさん
21/06/22 01:19:42.36 /xD272cm.net
笛吹けど踊らず。パラダイムシフトとならなかったのが今の状況

58:デフォルトの名無しさん
21/06/22 01:33:19.95 /hzWR5hC.net
>>57
もちろんWPFは失敗だったし
失敗の原因はMSが色々と読み間違えたことにある
そのひとつがWinForm開発者のレベルの低さなのは間違いない

59:デフォルトの名無しさん
21/06/22 01:52:54.59 y59U06XH.net
B層に愚民愚民言い続けてたら選挙で大負けした人達みたいっすね

60:デフォルトの名無しさん
21/06/22 02:02:53.23 /hzWR5hC.net
>>59
この場合B層が何を指すのか知らんしどの選挙の事を言っているのか不明だが
MSが支持層のレベルを読み違えていたのは間違いない
WPFはWinFormの開発者がスムーズに以降できるスキームを用意できなかった

61:デフォルトの名無しさん
21/06/22 02:04:10.32 /hzWR5hC.net
このスレワッチョイ無いのなw

62:デフォルトの名無しさん
21/06/22 02:06:29.19 y59U06XH.net
あれ、前のスレはあったのに

63:デフォルトの名無しさん
21/06/22 02:45:32.55 p6tBruNL.net
>>57-60
この流れが正しいだろう
まるで「自分の教えてる生徒は落ちこぼれが多くてね・・・」と嘆いている教授みたいだ
確かに、生徒のレベルが低いという事実はあるかもしれない
だが、そのレベルに対するあんたの教授法はどうなんだ、と

64:デフォルトの名無しさん
21/06/22 02:50:59.28 hVWHiksC.net
その頃、.net framework懐疑派もいてc++ Win32/MFCやらdelphi軍団
WinForms開発者はVBからの移行組多くてWinForms+VB.net??
だったら、WinForms開発者のレベルが低いのはしょうがない

65:デフォルトの名無しさん
21/06/22 06:11:16.58 Aeo9kDkU.net
ここの人たちはわかってるんだな
WinForms止まりの人たちは成長しない人間だということを

66:デフォルトの名無しさん
21/06/22 07:44:38.48 Xn56/PVc.net
XAMLは一生関わりたくないでござる

67:デフォルトの名無しさん
21/06/22 07:51:15.99 jruG6CnM.net
じゃあ成長を促してあげようぜ
.NET MAUIの公式ドキュメントできてたんだな
URLリンク(docs.microsoft.com)

68:デフォルトの名無しさん
21/06/22 08:05:17.77 7Ks2gqqv.net
デスクトップの人はMAUIよりWinUI行くんじゃね?

69:デフォルトの名無しさん
21/06/22 08:19:50.21 7j121Wmb.net
ざむるか久しぶりだな
遊びでWindowsPhoneのガワ作って以来だわ
当時はMVVMがまだ浸透していなくて
何それ美味しいの状態だったって覚えてる

70:デフォルトの名無しさん
21/06/22 09:53:59.29 TtlGiyRY.net
>>51
そしてなによりWPFは遅かった。

71:デフォルトの名無しさん
21/06/22 12:09:06.38 lNl6Rhk5.net
>>67
MAUIはXamarinだから地雷

72:デフォルトの名無しさん
21/06/22 12:52:20.11 v8vBbrXJ.net
>>71
だよな。

73:デフォルトの名無しさん
21/06/22 12:53:14.61 v8vBbrXJ.net
もうflutterでいいよな
MSも関与してるし

74:デフォルトの名無しさん
21/06/22 12:56:43.65 P9tLBTwV.net
>>70
なるほど。
WinFormsのGUIパーツは、Win32のControlを使っているから、OSの
内臓コンポーネントであるC/C++で記述されている。
一方、WPFのGUIパーツは C#で作られているはずで、その速度はC#の
良い実例。それが遅いということはC#が遅いということ。

75:デフォルトの名無しさん
21/06/22 13:12:45.67 v8vBbrXJ.net
リフレクションを多用するアーキテクチャがそもそも遅い
バインディンク構文使わないと早くなる

76:デフォルトの名無しさん
21/06/22 13:58:58.57 MIKkQrwG.net
このスレでバインディング遅いって書くとバインディング遅くないよマンがでてくるんだよなあ

77:デフォルトの名無しさん
21/06/22 16:13:02.61 bYopypDX.net
遅すぎず速すぎず程よい速度

78:デフォルトの名無しさん
21/06/22 16:32:17.27 p6tBruNL.net
速過ぎて困ることあんのか?

79:デフォルトの名無しさん
21/06/22 16:33:15.01 v8vBbrXJ.net
>>77
むかし遅い遅いって現場で揉めて
外部のコンサルとか乱入してきて大変でしたよ
しかもそのコンサルは非.NET系の...


80:デフォルトの名無しさん
21/06/22 17:03:11.34 hVWHiksC.net
UWPでコンパイル時バインディングx:Bind使っても速度的な違いわからねぇし、
そもそも、AOTコンパイルだっけ?のUWPもつまりxaml??重いんだよな...
そりゃデスクトップPCで動かせば気にならんけど、当時はatomタブレットでバッテリーにも関わるから気になったわ
今のパワフルになった?SoCなら大丈夫そうだが??

81:デフォルトの名無しさん
21/06/22 17:07:39.26 hVWHiksC.net
>>73
flutterでFluent システムを実装してほしい
Material DesignをWindowsデスクトップで動かした時のデザインのダサさときたら..

82:デフォルトの名無しさん
21/06/22 18:29:12.84 nJBLTJzV.net
>>79
何系よ?
MSC++,MFC,VB,JAVA,Delphi,BCC

83:デフォルトの名無しさん
21/06/22 18:53:39.20 kB1tp0oO.net
最近は、そう遅くも感じない。

それなりにテクニックはいるけどね。

84:デフォルトの名無しさん
21/06/22 19:16:18.55 nj/DGDzB.net
>>80
UWPはネイティブだよ。

85:デフォルトの名無しさん
21/06/22 19:30:55.75 v8vBbrXJ.net
>>82
javaかな
最初はいろいろきつかったね

86:デフォルトの名無しさん
21/06/23 05:51:06.75 jt9dD4ot.net
Winデスクトップオンリーなら.NET6 + WinUI + WPF
モバイル主体のマルチプラットフォームならFlutter
ってところかな

87:デフォルトの名無しさん
21/06/23 12:22:19.83 d23QmeSO.net
遠い未来ではそうかもな

88:デフォルトの名無しさん
21/06/23 17:51:22.42 nH+qDmUa.net
WINUIでどの程度パフォーマンス改善されるんだろ

89:デフォルトの名無しさん
21/06/23 19:46:25.93 B+S84JMM.net
>>66
XAMLはいいぞ(´・ω・`)Petzoldさんも本書いて勧めている
でもストアアプリはハードルが高い(特に個人で出す場合

90:デフォルトの名無しさん
21/06/23 21:33:34.09 O7LWJ7Ln.net
ストアアプリは誰にもメリットなかったよね…
Windows Phone の残した亡霊

91:デフォルトの名無しさん
21/06/23 21:37:53.44 hKNB6M+8.net
ストアのハードルは別に高くない。
ハードルがいくつもあるだけ。

92:デフォルトの名無しさん
21/06/23 22:49:51.77 KJ8ZVKXN.net
UWPは
・Win10以外非対応
・拡張子がexeじゃない
この辺りが原因で、特に古参中心に初めから嫌われていた印象 俺の周りだけかもしれないが

93:デフォルトの名無しさん
21/06/23 23:53:15.80 AWn9dTRx.net
嫌うってより開発者としてではなく消費者としてどうなの??
iOSやandroidのサンドボックスによるセキュリティに慣れたら、普通に非UWPアプリをインストールするの嫌なんだけど
有名どころのアプリやUWPの制限じゃ無理なアプリなら仕方ないけど
例えば,SNS系のアプリとかフルアクセスできるデスクトップアプリとか嫌やな

94:デフォルトの名無しさん
21/06/24 01:09:57.50 ZhZSLtyl.net
20レスくらいさかのぼってみたけどUWPのセキュリティが嫌だって話をしてる奴はいなかった
93は誰に対する発言なんだ?
発作でも起きたか?

95:デフォルトの名無しさん
21/06/24 01:37:57.30 lYiTQMLE.net
>>94
UWPのセキュリティが嫌だ、なんて>>93にも書いてないよ

96:デフォルトの名無しさん
21/06/24 01:48:41.02 UNoTdpdl.net
開発者が何を嫌ってようとセキュリティはUWPの方が優れてるからそっちを選べよって指摘だ罠。
選ばねえよバカww

97:デフォルトの名無しさん
21/06/24 02:35:57.56 u9KwmiVH.net
まあ単体アプリを配布する分にはサンドボックスの有用性が生きるな
Windowsの生命線ともいえる業務アプリとはこの上なく相性が悪い
iPhoneで業務アプリシステムを構築しにくいのと一緒
結局Webアプリに逃げられてしまう

98:デフォルトの名無しさん
21/06/24 06:21:07.27 PTf3B3xq.net
>>93
消費者としても受け入れらえなかった。
exeひとつを自分の好きな場所に配置して実行できる自由さには勝てない。
そもそもセキュリティのメリットを理由にUWPを入れたがる消費者なんてほぼゼロに近い。
会社だとストア無効化、サイドロードの設定も有効化できないようにされてるところが多いから
UWPは使い物にならない。

99:デフォルトの名無しさん
21/06/24 06:45:20.03 KjDgyD5o.net
ストアの画面とか開くことすらないからストアに何があるのかすら知らないわ
VS2022とかストアで扱えるようにすればいいのに

100:デフォルトの名無しさん
21/06/24 08:36:15.96 NLbTIuex.net
>>99
MS謹製のpythonがあったな

101:デフォルトの名無しさん
21/06/24 09:42:23.93 6hf93Vdb.net
UWPの問題は
・Win10専用
・DataGridが当初無かった
・EF Coreが当初SQLiteしか使えなかった
・インストーラがプライベートストア構築からとハードル高杉
辺りが問題だったね
今ならインストール以外はだいたい解決しているから使えないこともないが

102:デフォルトの名無しさん
21/06/24 12:54:03.18 j4shFytl.net
ストアでインストールしたのはWSLくらいっすかねえ

103:デフォルトの名無しさん
21/06/24 17:08:34.96 7n0FYJDV.net
Formsがオワコンかと思ったら.NET5で再び生き残ってるっぽい
リユニオンプロジェクトとかWinAPIも復活するし
分断させたいのかくっつけたいのか、終わらせたいのか復活させたいのかよく分からない体制だな

104:デフォルトの名無しさん
21/06/24 17:14:36.89 KjDgyD5o.net
APIは死んでないだろw
APIは使いやすく整備するだけじゃなかったっけ?

105:デフォルトの名無しさん
21/06/24 17:40:38.06 6t03e9bV.net
>>103
いやそれはWPFも同じw
タマがないんやw

106:デフォルトの名無しさん
21/06/24 18:35:32.72 gqYKtk29.net
APIはOSのコアDLLだから無くならないだろ

107:デフォルトの名無しさん
21/06/24 20:08:03.68 9uMGIASm.net
Macと違って膨大なエンタープライズ資産が世界のユーザーにあるから簡単に切り捨てられんよ。

108:デフォルトの名無しさん
21/06/24 20:23:54.02 2cVfXV/f.net
iOSは他に方法が無いからみんな渋々ストアに登録してんのに、なんでWindows開発者が
ストアアプリに流れてくれると思ったんだろ。

109:デフォルトの名無しさん
21/06/24 22:07:33.10 PTf3B3xq.net
>>103
Formsがオワコンなのは変わらんよ。
「VB6をまだサポートします」と言われても一般的な開発者は喜ばないのと同じ。

>そもそもマイクロソフトがWindows 8でデスクトップ環境とモダン環境を“分断”しなければ、
>REUNIONは必要なかったからだ。つまり、
>自分で2つに分けちゃっておきながら、今になって再結合って言い出しているわけで、
>例えて言えば、「花瓶割っちゃったので接着剤で付けました」的な話である。

110:デフォルトの名無しさん
21/06/24 22:13:34.45 VGtS8JPG.net
マック過去のAPIや資産をバンバン切り捨てまくってるけど、客は怒らねーのかね

111:デフォルトの名無しさん
21/06/24 22:22:13.21 rge7Ftvr.net
>>110
?ヴェルタース オリジナルのCMのようにマカーの人たちは自分たちは特別な存在だと思ってるので
appleに何をされても怒らない

112:デフォルトの名無しさん
21/06/24 22:35:54.47 aX40sl0U.net
URLリンク(iphone-mania.jp)
iOSならともかくmacなんてシェア10パーセント弱だし
怨嗟の声が上がってても聞こえるほどじゃなかろうな
俺はAPIに無告知で破壊的変更を入れてくるから嫌い

113:デフォルトの名無しさん
21/06/25 01:41:00.98 SBWjOd/p.net
簡単なテストアプリをサクッと作る時なんかは WinFormが捗る

114:デフォルトの名無しさん
21/06/25 03:15:26.19 qqEJCDPW.net
>>103
終わらせる必要はないと思うけど足手まといにはなってそうだな

115:デフォルトの名無しさん
21/06/25 05:48:06.07 ifkxfXVo.net
ストアテコ入れとは聞いてたけどまさかAmazonアプリと合体するとはなw

116:デフォルトの名無しさん
21/06/25 05:54:42.48 zVVssHd/.net
>>113
いや、テストアプリでもWPFの方がはかどるよ

117:デフォルトの名無しさん
21/06/25 06:51:18.97 AhNzrASB.net
>>115
MS社内でもUWPは期待されてない香りがプンプンするぜ

118:デフォルトの名無しさん
21/06/25 07:52:51.65 NwX/yPma.net
>>115
ようは敗北宣言じゃね?
Windows8で糞使いにくくしたりストアアプリ/UWP注力でデスクトップ放置とか全部失敗だったな。

119:デフォルトの名無しさん
21/06/25 07:57:29.12 lVANw6EN.net
もういい加減32bit切ってくれ

120:デフォルトの名無しさん
21/06/25 10:46:21.59 6KbKcl9Y.net
>>119
Windows11で切るんじゃなかったっけ?

121:デフォルトの名無しさん
21/06/25 10:54:16.88 ifkxfXVo.net
32bitどころか俺のPCが11で切り捨てられそうなんだけど

122:デフォルトの名無しさん
21/06/25 10:59:16.69 A4FvZdNB.net
定期的に湧くよな、マカー並の低能馬鹿、切り捨て厨。

123:デフォルトの名無しさん
21/06/25 11:07:47.58 ifkxfXVo.net
>>122
なにこいつキモいんだけどw

124:デフォルトの名無しさん
21/06/25 11:08:04.57 eijvgSCB.net
>>120
切られたね
MSもApple並のド低脳になってしまった…
まあ32bit切り捨てよりTPM2.0未満切り捨ての方が影響でかいけど

125:デフォルトの名無しさん
21/06/25 11:12:48.81 MeOG8FMO.net
>>117
というかUWPは終了が確定している。
UI部分はWinUIに分離され、こっちが更新されていく。
残りカスのUWPはフェードアウト。

126:デフォルトの名無しさん
21/06/25 12:02:45.75 FVtxn09p.net
万が一Amazonアプリストアで軌道に乗っちゃったら、
そっちとの親和性開発の流れになるから、またリセットされるな

127:デフォルトの名無しさん
21/06/25 12:07:54.36 A4FvZdNB.net
言語でもハードでもOSでもどれも互換重視で圧倒的シェア獲得してきたのに、
後から乗っかってきた頭の悪い新参者はすぐ切り捨てしろと言うから困る。
そういう歴史を知らない馬鹿がMSの経営陣に多くなったということ。MSも落ちぶれたものだ。ゲイツはやはり偉大だったのだ。

128:デフォルトの名無しさん
21/06/25 12:25:33.63 e/bo9MqG.net
32bit CPU(32bit OS)サポート外とした、ってことでしょ。
今32bit OS使う理由って25年近く前の16bitプログラムの何か使ってるか、
15年ほどデバイス更新せず古いまま使ってるか。
いいかげん更新しろよって感じでしょ。
64bit OS内での32bitの実行ファイルはもちろんwin11でも動作するわけで、互換性としては十分だろ。

129:デフォルトの名無しさん
21/06/25 12:47:49.60 A4FvZdNB.net
ほんと切り捨てろ連呼してる奴は馬鹿ばかりだ。

130:デフォルトの名無しさん
21/06/25 13:56:45.31 NV5/Ahkd.net
64bitと言ってもAMDが作ったx86互換の64bitもどきだからな
インテルのIA64が勝っていたらx86アプリは今頃残っていなかっただろう

131:デフォルトの名無しさん
21/06/25 14:13:52.60 /3glHUNQ.net
wpfくっそむずすぎ
こんなんやっとれんわ

132:デフォルトの名無しさん
21/06/25 14:25:50.32 Wd+wOk9Z.net
馬鹿には無理

133:デフォルトの名無しさん
21/06/25 14:34:50.27 /3glHUNQ.net
バカだから無理だわ
datagridとかのドキュメントも長ったらしいし、
reactivecollectionやらobservablecollectionやらがやたら長ったらしくて冗長だし、
画面に複数のデータをリアクティブにするだけで長ったらしいコードが溢れるし、
他の言語のwebなら数十行のコードもxamlまで含めて何百行となるし、
実行したらしたで重いし、保守なんてさせられんわ
linqくらいだわいいの
仕事ならしゃあないだろうけど

134:デフォルトの名無しさん
21/06/25 15:37:06.01 PQH5rdUP.net
XAMLは使わなければWPF最強

135:デフォルトの名無しさん
21/06/25 16:22:42.63 BnS8egAD.net
>>133
「クラス名が長いから嫌だ」って…
まさかメモ帳で書いてるんじゃなかろうな

136:デフォルトの名無しさん
21/06/25 17:19:49.38 djQjn/cE.net
失敗プロジェクトの連続
MSには馬鹿しかいないのか

137:デフォルトの名無しさん
21/06/25 17:36:50.94 ifkxfXVo.net
本気で馬鹿しかいないと思うよ
ブラウザさえまともに作れずに結局Chrome互換
検索エンジンもゴミ
WPFとUWP分離したりくっつけたり
dependency propertyなんかみてもひどいしな
褒めるところが全く無いのがすごい

138:デフォルトの名無しさん
21/06/25 18:15:45.87 wfTcV3LX.net
VSCodeとか新生Edgeとか他所のフレームワーク使う時のMSは伸び伸びしとりますなあ

139:デフォルトの名無しさん
21/06/25 19:07:24.25 zVVssHd/.net
>>137
ブラウザはGoogleの露骨な妨害があったから泣く泣く断念した経緯がある。

140:デフォルトの名無しさん
21/06/25 20:01:38.14 buVq68wJ.net
どこも同じゃないの?
仕事で作らされてもろくなもん出来ないよ。

141:デフォルトの名無しさん
21/06/25 21:12:58.06 /vwepKGE.net
WPFを使うとプロジェクト全体の作業効率がアップするのか甚だ疑問だな。本当に良いものならもっと普及してる筈なのだが

142:デフォルトの名無しさん
21/06/25 21:36:11.44 BnS8egAD.net
ここ最近WPFが善か悪かの議論しかしてないよな
何か他に話題は無いん?
…まぁ、無いかw

143:デフォルトの名無しさん
21/06/25 21:38:17.66 zVVssHd/.net
>>144
URLリンク(qiita.com)
URLリンク(qiita.com)

144:デフォルトの名無しさん
21/06/25 21:38:53.51 zVVssHd/.net
>>141
>>143

145:デフォルトの名無しさん
21/06/25 21:41:33.62 zVVssHd/.net
WPF : 記事数1,123, フォロワー625
WinForms : 記事数78, フォロワー6
これが現実

146:デフォルトの名無しさん
21/06/25 21:42:58.30 595fcDMG.net
>>117
MSは社内ですら方針統一できてないのがなあ
CairoやLonghornがコケた頃から何も変わってない

147:デフォルトの名無しさん
21/06/25 22:13:07.08 i6/+pAU6.net
なぜそのタグで検索して比較したw

148:デフォルトの名無しさん
21/06/26 03:46:23.80 XXzuMEQx.net
>>145
Windows Forms で検索すると、1513
WinForms:258
Forms:4412
WPF : 1903

149:デフォルトの名無しさん
21/06/26 03:50:38.30 XXzuMEQx.net
Xamarinで検索: 1726
タグのXamarin:968記事、906フォロアー。
如何にQiitaの読者層が信用ならないかが垣間見えるような。

150:デフォルトの名無しさん
21/06/26 03:56:28.35 XXzuMEQx.net
Qiitaではなく、Quoraだと、
C++: Follow 1M
C#: Follow 382K
Java: Follow 1.3M
つまり、人気は、
Java > C++ >> C#

151:デフォルトの名無しさん
21/06/26 04:39:37.06 XXzuMEQx.net
Google Trendsだと、WPF,MFC,Flutter,Qtが互角くらいで、WinFormsとUWPは低迷。

152:デフォルトの名無しさん
21/06/26 04:46:05.20 XXzuMEQx.net
Flutterは上昇中。MFC,WPFは徐々に下がってきている。
Xamarinは横ばいで低迷。
QtやFlutterはマルチプラットフォームなのに対し、MFCは古くからありWindows
専用な割には未だにかなり強い。

153:デフォルトの名無しさん
21/06/26 06:35:43.77 ZRPAi/RT.net
>>150
人気言語なら
Rust > TypeScript > Python > Kotlin > Go > Julia > Dart > C# >
Swift > JavaScript > SQL > Bash/Shell/PowerShell > HTML/CSS > Scala > Haskell > R > Java > C++
習得したい言語なら
Python > JavaScript > Go > TypeScript > Rust > Kotlin > Java > C++ > SQL > C# >
Swift > HTML/CSS > Dart > R > Ruby > C > Scala
糞な言語なら
VBA > Objective-C > Perl > Assembly > C > PHP > Ruby > C++ > Java > R > Haskell > Scala >
HTML/CSS > Bash/Shell/PowerShell > SQL > JavaScript > Swift > C# > Dart

by SO 2020調べ

154:デフォルトの名無しさん
21/06/26 06:53:11.90 ZRPAi/RT.net
GitHubリポジトリ数
Flutter(21,854) > WPF(5,679) > Xamarin(3,434) > WinForms(3,373) > UWP(1,630) > MFC(355)

155:デフォルトの名無しさん
21/06/26 11:27:25.79 TqdTR7t2.net
Flutterの人気がスゴいってのは分かった

156:デフォルトの名無しさん
21/06/26 11:54:16.49 XXzuMEQx.net
githubは特殊性が有ると思う。
vue.jsは、185k star、29.4k fork で、スポンサー(ほぼ知らない企業ばかり)も大量に
付いているが、実際の使用例はとても少ないと聞いてるし。
逆に、qtなんかは、1.4k star, 680 fork だけど、ウェブではないところで
結構使われていることが分かってる。

157:デフォルトの名無しさん
21/06/26 12:09:15.30 XXzuMEQx.net
>>145
Qiitaは、Webにちゃんとまとまって書いてないことを、自分で調べた人が
書く場所。だから、Webに情報が少ない事が書かれる傾向がある。
いくつかの調�


158:クで、WinFormsはWPFより使われていることが分かってる。



159:デフォルトの名無しさん
21/06/26 12:16:53.81 XXzuMEQx.net
2020/07/26 の時点で、マウスイベントで頻繁に更新される多くのDatagridviewsを使った
ビジネスアプリは、古いPCだと、WinFormsはマウスの反応が即時だがWPFはマウス
をクリックしてからUIが反応するまで数秒掛かると書いてある。
URLリンク(stackoverflow.com)
Great piece of advice here. I attempted a wpf business app with a number of
Datagridviews that were frequently updated by mouse events, and on older
production pcs, the app would take as long as a second between mouse click,
and ui response. Winforms version response time is practically immediate.
– c jk Jul 26 '20 at 23:49

160:デフォルトの名無しさん
21/06/26 12:21:32.22 w6j9gBE1.net
WPFのDatagridがゴミなのはもう常識だろ

161:デフォルトの名無しさん
21/06/26 13:01:58.02 +M0IgX5j.net
フレームワークにフレームワークが必要ってのは言語やプラットフォーム関係なく根っこが腐ってるからそうなるんだと思う

162:デフォルトの名無しさん
21/06/26 13:16:45.55 gzd4bl1h.net
(;´д`)

163:デフォルトの名無しさん
21/06/26 14:45:30.68 E0lcRfGC.net
グリッドコントロール使うアプリケーションの大半はゴミだけどな。
一覧画面と編集画面の2画面構成の方がほとんどのケースは使いやすい。
使いにくいしバグの元なんだからセル内で編集させるなよ。

164:デフォルトの名無しさん
21/06/26 15:24:13.20 TqdTR7t2.net
Readonlyで使うけどな

165:デフォルトの名無しさん
21/06/26 15:26:27.93 hHYOAEGk.net
>>116
変人現るw

166:デフォルトの名無しさん
21/06/26 16:58:10.29 E0lcRfGC.net
ListView使えよ

167:デフォルトの名無しさん
21/06/26 17:03:12.16 KFUgiKj4.net
>>162
伝票入力なんかは表イメージのまま入力できる方が喜ばれるんだよ
WPFでやるならグレープシティのやつとか使った方がいいけど

168:デフォルトの名無しさん
21/06/26 17:10:24.36 E0lcRfGC.net
罫線付けたListViewでよくね?
ListBoxでもいいが。

169:デフォルトの名無しさん
21/06/26 17:12:42.88 zteDreFe.net
>>142
昔は普及はまだかの話しかなかったが、
今はもう普及は絶望的なのに評価しても仕方ないよな

170:デフォルトの名無しさん
21/06/26 17:33:33.64 SFjxv/Ip.net
データグリッド使わなくて済むようにカスタムリストアイテム作れるようにしたのがWPFとXAMLでしょ
(´・ω・`)おしゃれするんやで

171:デフォルトの名無しさん
21/06/26 18:35:14.18 Gmvay1qu.net
って言うかDataGridViewで事足りる

172:デフォルトの名無しさん
21/06/26 18:50:13.30 8sPnjTqa.net
その普及普及って話がピンとこないんだな。うちの周りじゃ普通にみんなWPFなんだが。

173:デフォルトの名無しさん
21/06/26 19:10:48.38 zteDreFe.net
Win11の前にビッグウェーブきたか!!

174:デフォルトの名無しさん
21/06/26 20:11:30.33 pEKyLLkA.net
UWPのDataGridは高速って話だが、WinUI3も期待できるんじゃね?

175:デフォルトの名無しさん
21/06/27 06:35:24.56 WZv5A4P4.net
>>164
テスト用のアプリならStackPanelかWrapPanelに必要なコントロールをドラッグ&ドロップしていく大雑把なマウス操作だけで画面完成。
超簡単でそれでいて最低限のレイアウト変更に対応できてる。
“一度WPFを知ってしまうとWinFormsに戻りたくなくなる”ってよく言われるのは
それだけ


176:WPFの方が画面作りが楽ちんだから。



177:デフォルトの名無しさん
21/06/27 09:27:21.88 TSKhpmUU.net
コードからWPF並みのレイアウトを構築できるだけのWinformsをくれ

178:デフォルトの名無しさん
21/06/27 09:36:27.68 aF9t9MTl.net
QTでも使ってください

179:デフォルトの名無しさん
21/06/27 09:53:59.32 TSKhpmUU.net
イヤじゃイヤじゃC++なんて使いとうない
まあC#のGUIフレームワークがうんこなのとネイティブとの相互運用がめんどくなって
毎度C++に戻っていくの繰り返しなんだけどね
要因がどっちかひとつならまだ我慢もできるんだが…

180:デフォルトの名無しさん
21/06/27 10:48:35.35 WZv5A4P4.net
WinFormsにXAMLを採用すればいいだけ

181:デフォルトの名無しさん
21/06/27 11:12:50.09 NJoLUHcc.net
ポトペタ出来るほうが楽じゃ

182:デフォルトの名無しさん
21/06/27 11:51:59.67 WIKfglo6.net
よし、Delphiを導入しよう
Qtよりはマシだろ?

183:デフォルトの名無しさん
21/06/27 12:02:07.47 f3id7Upp.net
DelphiのVCLをコピったのがwinformなんだが。

184:デフォルトの名無しさん
21/06/27 12:04:17.06 NX2lsBQd.net
>>179
じゃあWPFだな

185:デフォルトの名無しさん
21/06/27 13:39:52.48 jQhpCryR.net
>>181
コピーじゃなく本家が移った

186:デフォルトの名無しさん
21/06/27 14:28:53.00 me9wSnu9.net
181はBorlandの回し者か?

187:デフォルトの名無しさん
21/06/27 15:20:54.70 f3id7Upp.net
誤解を与えたようなので説明しよう。
世界的に実績のあるPGが開発→Winform→大人気
どこの馬の骨か分からんPGが開発→WPF→不人気
こういうことです。

188:デフォルトの名無しさん
21/06/27 15:22:04.21 8VL1opuX.net
昔のホームページビルダーとかExcelみたいに作れればええやろ

189:デフォルトの名無しさん
21/06/27 17:06:36.35 toTJDPNF.net
>>185
そういえばDelphiはGUI部分が大人気で、その開発チームがMSに移って作った
のがWinFormsだったのか。
どうりでWPFより設計が美しく感じるはずだ。
後発でも駄目なものはダメなんだよ、ここの信者が何を言っても。

190:デフォルトの名無しさん
21/06/27 17:28:14.85 bJFlr767.net
>>187
MFCよりもVCLのほうが断然使いやすかったもんな

191:デフォルトの名無しさん
21/06/27 17:35:16.09 WZv5A4P4.net
C#の言語仕様部分に主にかかわってる。
それは設計に関わっていないWinFormsの酷さを見れば分かるだろ?
WinFormsは生産性が低いし品質も低くなりがちなのは事実。信者が何を言っても。

192:デフォルトの名無しさん
21/06/27 17:42:49.35 HfXxTqRR.net
@ahejlsbergには終わりかかってるような環境よりTypeScriptに注力してもらった方が世の中のためになる

193:デフォルトの名無しさん
21/06/27 22:04:13.11 6ow+jL0/.net
reunionの名前が変わってる
Windows App SDKだってさ
検索殺しだわ

194:デフォルトの名無しさん
21/06/28 00:59:55.07 mF8S9I5g.net
それはMSの得意技なので…w

195:デフォルトの名無しさん
21/06/28 01:12:00.97 nwjsCynN.net
Webを見ても、UI設計はマークアップ言語でやるっていうのが正解
それはソフトウェア開発においても同じだった
WinFormsは完全に不正解

196:デフォルトの名無しさん
21/06/28 01:34:40.12 mF8S9I5g.net
WinFormの肩を持つ気はさらさら無いけど、あの時代はそれがスタンダードだったでしょ
JavaのSwingだってそっちに行ってたし
Delphiを神のごとくあがめる人がいるけど、そういう先見の明はなかったよね

197:デフォルトの名無しさん
21/06/28 02:48:41.32 JBMsD7o3.net
マークアップ言語なら同じってのはウンコとショートケーキを同列に扱うがごときだよ
もちろんXAMLがウンコでね

198:デフォルトの名無しさん
21/06/28 06:21:29.97 zyIZLp3R.net
他のマークアップ言語と比べてXAMLが優れてるなんて誰も言ってないんじゃないか?
WinFormsがウンコすぎてXAMLの方が数倍マシってだけで。

199:デフォルトの名無しさん
21/06/28 07:18:41.45 czRIvr8g.net
そもそも何が悲しくてマークアップ言語でUIを記述せなあかんのか
それに加えてあのクソバインディングの仕様
思想に拘泥しすぎて使いづらいことになっとる
C#の言語仕様の方向性とはまったく真逆

200:デフォルトの名無しさん
21/06/28 08:00:53.90 cZa6zFVz.net
>>195
まあ、他のショートケーキ環境と比較してみればXAMLがいかにウンコかよくわかるかもね。それって例えばどれ?

201:デフォルトの名無しさん
21/06/28 08:19:26.68 ajvVSSfT.net
冗長くんの言葉のチョイスが小学生だなw

202:デフォルトの名無しさん
21/06/28 08:33:12.98 czRIvr8g.net
データ記述言語としてのXMLもほとんどの用途はJSONに置き換わっとるし
Webだって生HTMLの記述を避けていかに楽するかにみんな試行錯誤しとる結果がフレームワークの乱立なわけで
もうマークアップがダメなのよ、XAMLというアイデアが生まれた瞬間からダメ

203:デフォルトの名無しさん
21/06/28 08:48:33.34 nwjsCynN.net
Formsの臭いものに蓋をしたような裏のコードを見て
コレジャナイって気付かないもんかねえ

204:デフォルトの名無しさん
21/06/28 08:52:45.03 +h03On/r.net
>>160

205:デフォルトの名無しさん
21/06/28 08:55:18.72 yki3tuNE.net
うだうだ言ってもWPFが普及しなかったという事は事実

206:デフォルトの名無しさん
21/06/28 10:23:14.06 +h03On/r.net
普及するかどうかと優れたアーキテクチャかどうかは
全く別の話なのも事実

207:デフォルトの名無しさん
21/06/28 10:28:27.83 2Oa7bDPq.net
ユーザー目線では遅い重い
開発者目線では面倒くさい難しい
MS目線ではやめたい捨てたい

208:デフォルトの名無しさん
21/06/28 11:23:45.55 7XtL7Dy7.net
>>175
wxWidgets

209:デフォルトの名無しさん
21/06/28 11:38:04.11 yLrQOr5w.net
古代UNIX時代のマークアップ技術をなぜ未だに引っ張り出さなあかんねん。

210:デフォルトの名無しさん
21/06/28 11:46:36.50 kyJYPXM1.net
ウダウダと文句を垂れ流しておられる皆様方の理想のUI記述言語はどのようなものでございましょうか?

211:デフォルトの名無しさん
21/06/28 11:57:00.05 bIZ7S0Sd.net
>>200
jsonでUI記述するC#Framewoek作れ

212:デフォルトの名無しさん
21/06/28 12:00:01.72 bIZ7S0Sd.net
誤解されそうなので補足しとくが
漏れはjsonもxmlもxamlもうんこだと思ってる

213:デフォルトの名無しさん
21/06/28 12:09:14.53 MUa2ipuR.net
それはちょっと語弊があるだろ
どんなに優れたマークアップ言語の上にでも汚物のようなスキーマは構築できるってのが正しい
クソDSLを設計して喜んでていいのってそれこそ小学生までだよねーww

214:デフォルトの名無しさん
21/06/28 12:38:19.33 zyIZLp3R.net
>>205
ユーザー目線:
WinForms:遅い・重い・応答なし・見づらい・使いづらい
WPF:速い・使いやすい
開発者目線:
WinForms:低機能・手の施しようがない・バグ地獄
WPF:必要なものが一通り揃っていて現代の開発に耐えられる
WPF程度を難しいなんて言っているレベルは転職をお勧めする。

215:デフォルトの名無しさん
21/06/28 12:40:21.87 TdjQ7qGS.net
趣味でやってる人だろ
さすがにプロでそんな馬鹿はいないと信じたい

216:デフォルトの名無しさん
21/06/28 13:02:13.72 yLrQOr5w.net
>>212
技術者としてそういう捏造するようになったり終わり。人間のクズ。

217:デフォルトの名無しさん
21/06/28 13:12:45.57 yki3tuNE.net
>>204
優れていなかったから普及しなかったのでは?単純に

218:デフォルトの名無しさん
21/06/28 13:16:23.14 DPgYMhor.net
だよね
必死にWPFを持ち上げるよりもどこがダメなのか議論するほうが建設的
WPFマンセー厨の人達は黙っておいたほうがいい

219:デフォルトの名無しさん
21/06/28 13:20:14.01 x0F/IlHt.net
×優れている
○ある面では優れている
糖質だって探せばいいところの一つくらいはある

220:デフォルトの名無しさん
21/06/28 13:39:01.27 gSJxewSh.net
>>216
MVVMでやろうとした時の教育コストがネックかな。
俺一人でやるなら問題ないけど、プロジェクトの都度人集めてやるような会社だときつい。

221:デフォルトの名無しさん
21/06/28 13:59:28.09 BZRfVYEc.net
winFormsって重いの?
まあSQLseverの大量のデータを扱う場合はそうかもしれないけど

222:デフォルトの名無しさん
21/06/28 14:43:55.35 ajvVSSfT.net
C++=Delphi > VB6 >>> WinForms >>Java Swing
速度だけならVB6の方が早かったからな

223:デフォルトの名無しさん
21/06/28 14:44:45.33 C7ospGa2.net
>>215
逆。vbから続くwinデスクトップ界隈では優れている人の方が少ないから
低レベルな人でも使える低機能なものの方が普及しやすい。
>>218
それもWPFが普及しなかった要因。
必ずMVVMで作らなきゃいけないかのような圧力に
怯えて技術力の低い多数の人達が逃げ出してしまった。
まずはMVVM禁止で何個かプロジェクトやってメンバーの大半がWPFに十分なれてから次のステップに移ったほうがいい。

224:デフォルトの名無しさん
21/06/28 15:32:52.13 21xV/8JF.net
>プロジェクトの都度人集めてやるような会社
日本終わってるωωω

225:デフォルトの名無しさん
21/06/28 15:37:52.28 NB7SrI88.net
>>212
WPFの方が遅いと言うのを良く聞くが。

226:デフォルトの名無しさん
21/06/28 15:40:40.25 2Oa7bDPq.net
セレロン、MEM:2GBがノーマルお仕事環境だからな

227:デフォルトの名無しさん
21/06/28 15:49:46.29 2Oa7bDPq.net
>>218
選択肢が多すぎるのも欠点だよね
VBぐらい選択肢がないほうが同じ事の再教育しなくて済む

228:デフォルトの名無しさん
21/06/28 15:52:23.31 D8GEhOn7.net
wpfスレッド大人気だな

229:デフォルトの名無しさん
21/06/28 15:55:45.51 JBMsD7o3.net
雑談スレじゃないのにここまで雑談で埋まってるスレは他にあるまい

230:デフォルトの名無しさん
21/06/28 16:17:13.79 HVgpozoE.net
ほとんど同じことを繰り返してるだけだしな

231:デフォルトの名無しさん
21/06/28 17:21:27.52 NB7SrI88.net
>>227
フフフ。Flutterスレがあるぞ。

232:デフォルトの名無しさん
21/06/28 17:22:15.07 NB7SrI88.net
あと、Rustスレも。

233:デフォルトの名無しさん
21/06/28 17:27:03.04 +NMrGGDR.net
WPFコントロール作ってるライブラリメーカーのガチプロは
はなから内部はMVVMとか使っとらんぞ
それが真実
一般向けに皮だけIF定義して対応させてる次第
製品で遅いのとか使えんからな
すまんの

234:デフォルトの名無しさん
21/06/28 18:29:08.91 TdjQ7qGS.net
質問スレにしたらマシになりそう

235:デフォルトの名無しさん
21/06/28 18:39:14.79 kyJYPXM1.net
質問者放置してのマウント合戦になるだけやろw

236:デフォルトの名無しさん
21/06/28 18:46:52.11 cZa6zFVz.net
>>231
そもそもMVVMってコントロールの内部で使うもんじゃないと思うが。

237:デフォルトの名無しさん
21/06/28 18:52:48.08 zyIZLp3R.net
>>223
Windows Formsのグラフィックシステムでは、最終的な描画のタイミングをアプリケーション自身が握っているため、
描画途中でディスプレイ更新が行われると意図していない崩れた描画が表示されてしまうことがあります。
一方、WPFのグラフィックシステムでは、最終的な描画のタイミングはWPFの描画エンジンが握っているため、
意図していない描画がディスプレイに表示されることはありません。
そのため、大量のコントロールを高速でスクロールしても滑らかに表示できます。
>>231
プロジェクトの種類に応じて開発手法を選ぶのは当たり前。
MVVMを使うのは端的に言えば開発スピードを上げるため。性能を上げるためじゃない。
(真のガチプロはMVVM使いつつ性能も担保するかもね)

238:デフォルトの名無しさん
21/06/28 19:00:07.66 TdjQ7qGS.net
gdiとか完全排除してdirect2dに置き換えたら良いのに

239:デフォルトの名無しさん
21/06/28 19:32:24.45 hSv3zN64.net
2021年にもなってWinFormsにしがみついてる馬鹿がいるってマ?

240:デフォルトの名無しさん
21/06/28 19:51:21.64 v/5H91nJ.net
MVVMで開発スピードを上げるってネタだろw
リスト出てくるとイラっとする

241:デフォルトの名無しさん
21/06/28 19:51:47.71 uDpGdBC4.net
>>231
>>234が正解だから...

242:デフォルトの名無しさん
21/06/28 20:07:50.55 9VZBfvKN.net
MVVMはともかく、高DPIとか要素のスケーリング対応はWinFormsでやりたくないな
ただまぁ、敷居が高すぎるとは思う
書籍はロクに見当たらないし、日本語でそこそこまとまったフレンドリーな解説が載ってるサイトほとんどないのは痛い
関連ワードで検索してもかずきか妖精しか出てこないでしょ
(この2つも途中からRxが入り込んできたりMVVM前提になってくるから脱落者多いと思う)
とほほとかdobonとかufcppレベルに噛み砕いた説明が欲しいのよ初心者は

243:デフォルトの名無しさん
21/06/28 20:23:36.59 nwjsCynN.net
Formsおじさんはスケーリングなんて概念知らないよ

244:デフォルトの名無しさん
21/06/28 20:49:37.76 BZRfVYEc.net
スケールはマニフェストファイルにドットバイドットで起動するように
設定すれば問題ない

245:デフォルトの名無しさん
21/06/28 22:13:28.65 zyIZLp3R.net
>>238
テストや仕様追加・変更などトータルで見てもかなり差が出てくるぞ

246:デフォルトの名無しさん
21/06/28 23:05:46.97 mF8S9I5g.net
>>242
それぼやけるやつじゃないの?
それともレイアウト崩れる方?

247:デフォルトの名無しさん
21/06/28 23:12:16.18 LklTdgPg.net
>>234
コントローラー部品はMVVMのVの部分だからね

248:デフォルトの名無しさん
21/06/28 23:20:59.79 +NMrGGDR.net
>>234
グラフ、ガントチャート、スケジューラーとか
一個コンポーネントだけでも
業務系アプリより小便チビるぐらいのガチの大規模アプリだぞ。
まあ開発者もCOMとかActiveX時代を経験しとる猛者だらけだが

249:デフォルトの名無しさん
21/06/29 00:00:20.95 MxyOwUyS.net
まったく関係ない。規模が大きかろうがコントロールをMVVMで設計する必要なんてあるわけがない。

250:デフォルトの名無しさん
21/06/29 01:16:51.07 cxwm0a1D.net
本家 Microsoft でさえ使っていないフレームワークだしな。Visual StudioのGUI部分くらいか?

251:デフォルトの名無しさん
21/06/29 01:24:48.79 88YgLK/8.net
MVVMで設計する必要が無いとは思わんが、
WPFはレイトバインディングオンリーだから性能を考えたら無いな

252:デフォルトの名無しさん
21/06/29 03:41:15.15 CE8RCsWG.net
xamlのUI自体が起動時JITだししゃーない
ユーザー編集や内部動作がオブジェクト~UI間で速攻反映されるのがMVVM的とすると今時のやつほとんどそれにならんか?
やっぱいるか?

253:デフォルトの名無しさん
21/06/29 07:02:11.80 kZFmQOUI.net
>>244
ぼやけないし崩れないよ
ただしデメリットは4Kなどの高解像度ディスプレイを使っていると
ソフトを実行した時に文字やウィンドウが非常に小さく描画されると思う
場合によってはぼやけた方が使いやすいまであるかもしれない

254:デフォルトの名無しさん
21/06/29 07:23:16.58 7mrphVrK.net
>>246
×猛者
〇時代に取り残された老害

255:デフォルトの名無しさん
21/06/29 07:40:42.45 qRDQTSiV.net
>>248
グラフィックスデバッガのPIXとか現役で更新されてる小物じゃちょくちょく使ってる

256:デフォルトの名無しさん
21/06/29 08:18:17.69 MxyOwUyS.net
COMをマスターできたならその後の新技術もキャッチアップできるだろう。
当時COMについていけなかったような人が今WPFについてこれていないという感じじゃね。

257:デフォルトの名無しさん
21/06/29 08:44:28.90 ODoOJffm.net
>>248
WinFormsも使われていない件

258:デフォルトの名無しさん
21/06/29 09:01:08.59 SmSl8CvY.net
>>254
まあ難しいかもね
でもDCOMとかおもろいで
他人のPCにオブジェクトがnewできるwww操作もwww

259:デフォルトの名無しさん
21/06/29 09:56:34.25 sa7Hb+w6.net
>>251
スケーリングを無視して拡大せずに表示って
スケーリングから逃げてるだけで何の解決にもなってない

260:デフォルトの名無しさん
21/06/29 10:01:47.81 bpKPj1F0.net
今時WinFormsやWPFで作られるようなアプリなんて基本的に決まった環境で決まった操作ができればいいだけなんだから画面の美しさなんて誰も問題にしない
文字が小さすぎるなら解像度下げたらいいだけ

261:デフォルトの名無しさん
21/06/29 10:33:35.90 uY+Pqtpp.net
>>240
海外サイトでは有用なサイトとかあるの?

262:デフォルトの名無しさん
21/06/29 11:33:47.61 idc7ChZX.net
>>258
逃げてるだけやん。
画面の美しさなんかどうでもいいが
見やすさ、操作しやすさは品質チェックされる。
フォントサイズぐらいは変えられるようにしといたほうがいい。
たいした手間じゃないんだから。

263:デフォルトの名無しさん
21/06/29 13:36:43.26 sps6wUNa.net
>>259
英語読めないから知らない

264:デフォルトの名無しさん
21/06/29 14:15:00.34 bpKPj1F0.net
>>260
その「しといたほうがいい」程度のためにWPFやるの?さすがに費用対効果が悪すぎないか
そらみんなWebへ流れるわな

265:デフォルトの名無しさん
21/06/29 15:16:50.08 fjM4NkMz.net
>>262
そりゃwebが要件に合うならそっちの方がいいけど
デスクトップでやらなきゃいけない場合、
winFormsは生産性もアプリの品質も論外だから現実的な選択肢の候補としてWPFは有力。
費用対効果はwinFormsなんかを選ぶよりはWPFの方がずっと上。

266:デフォルトの名無しさん
21/06/29 16:30:43.80 m0EoJlPu.net
WPFよりwinformsがいいなんて言ってる奴いないのに何無駄なこと言い続けてるの?
なんでもかんでもxamlで書かせようとしたWPFはバカっていってるだけなのに

267:デフォルトの名無しさん
21/06/29 16:33:32.55 PN4ZOAJQ.net
いやこのスレにはいっぱいいるぞ?

268:デフォルトの名無しさん
21/06/29 17:52:19.00 S91QebJL.net
WPFで作るだけで品質も生産性も向上、よかったよかったw

269:デフォルトの名無しさん
21/06/29 17:52:53.44 SOQ8GKtA.net
* WinFormsの方が優れてるよ派
* XAMLは糞だよ派
自由に追加してってくれ

270:デフォルトの名無しさん
21/06/29 17:54:06.03 R64mVEcr.net
糞なのはMVVM派やぞ

271:デフォルトの名無しさん
21/06/29 18:06:05.47 wewaPA3V.net
彼はずっと頑張ってるんだけど
一向に何がどう上なのか提示しないのが笑える

272:デフォルトの名無しさん
21/06/29 18:14:53.74 SmSl8CvY.net
XAMLとMVVMの違いが解っとらん時点で...

273:デフォルトの名無しさん
21/06/29 18:41:43.87 d9qF3Zj0.net
馬鹿はwinformsはスケーリングがっていうけど事実上使用環境は2k固定
4k環境なんて企業ではほぼ出てこない
何かあればすけーりんぐがああああって言いたいだけだろ
そんなもの弱点でもなんでもない
4K環境でアプリを使いますかと聞いたら何それとかいいえってすぐに答えが出る
winformsの弱点はそれとは別にあるだろ

274:デフォルトの名無しさん
21/06/29 19:29:56.93 IWxlvq96.net
>>271
それ以外の弱点は余り聞かん。

275:デフォルトの名無しさん
21/06/29 19:34:10.99 D8AMOp4b.net
他人がすばらしいと思おうが糞と思うがどうでもいいだろ
そんな他人の意見気になるのかよ
このネタしつこすぎ

276:デフォルトの名無しさん
21/06/29 19:39:00.69 MZAvi10Y.net
4Kモニター使う客は見たことないけど、13インチFHDノートとかでスケーリング150パーで使う客はざらにいる。

277:デフォルトの名無しさん
21/06/29 21:06:07.80 uY+Pqtpp.net
WinFormsはバグが多いみたいな話は聞いたが踏んだことないな

278:デフォルトの名無しさん
21/06/29 21:50:16.02 88YgLK/8.net
>>271
最近問題になってるのはFHDのノートPC+老眼
拡大しないと見えないって言われるけどWinFormだとだいぶ面倒

279:デフォルトの名無しさん
21/06/29 22:21:04.01 cxwm0a1D.net
そこで全てOwnerDrawですよ

280:デフォルトの名無しさん
21/06/29 22:44:16.86 SOQ8GKtA.net
>>273
15年やってるネタにしつこいだと!?

281:デフォルトの名無しさん
21/06/29 22:57:19.14 vxJRxXrh.net
老眼ならボケててもわかんねえしDPI Unawareでご提供じゃあ!

282:デフォルトの名無しさん
21/06/30 06:20:20.65 fPKzNzZo.net
>>275
winformは仕組み的にバグを作り込みやすい。
SOLID原則に則った作りがしづらいから。

283:デフォルトの名無しさん
21/06/30 10:33:14.92 ZQ555E+g.net
>>280
具体的にどうぞ

284:デフォルトの名無しさん
21/06/30 15:27:43.63 x8wFy7G1.net
DataGridのヘッダの結合かベータ行カラムの分割をしたいんだけどxamlだけじゃできないんだねこれ

285:デフォルトの名無しさん
21/06/30 21:16:42.52 HGlM55pW.net
>>277
オーナードローに手を出すぐらいならWPF使った方が簡単だし楽だぞ

286:デフォルトの名無しさん
21/06/30 21:43:59.63 YqdW0y/d.net
今時windowsアプリ作るならflutterでしょ
その次はcompose for desktop
シリコンバレーに住んでるけど周りだいたうそうだぞ

287:デフォルトの名無しさん
21/06/30 22:23:18.20 mq4i3ovj.net
MayaみたいなGUI作りたいんだがFlutterで問題ない?

288:デフォルトの名無しさん
21/06/30 22:49:25.75 dbpUo6lf.net
Visual Studioで作れるなら

289:デフォルトの名無しさん
21/07/01 00:50:28.07 cUgiTPJy.net
>>281
具体的も何もイベントハンドラしこしこ書いてたらそうなっちゃうでしょ

290:デフォルトの名無しさん
21/07/01 01:41:15.75 quMFgJi9.net
>>287
イベントドリブンだからハンドラは書くだろ

291:デフォルトの名無しさん
21/07/01 02:25:59.60 3s4V0XuS.net
>>284
私のシリコンバレーではWinForms一強だがね

292:デフォルトの名無しさん
21/07/01 02:41:38.58 g7pLzwL6.net
WPFを推してる人に質問。
URLリンク(teratail.com)
でベストアンサーの人がDataContextを
XAML
<OrigUI:OrigButton x:name="MyButton" DataContext="{Binding MyButton, Mode=TwoWay}" />

コードビハインド
MyButton.DataContext = myClass.MyButton;
の両方の例を見せているが、
両方で書けることのメリットは何?
自分はどっちか(この例だとXAML)だけあれば充分だと思ってる。

293:デフォルトの名無しさん
21/07/01 03:48:23.98 3s4V0XuS.net
WPFにおいてXAMLは必須のものではない

294:デフォルトの名無しさん
21/07/01 05:03:15.49 DKvr+prV.net
ListViewとかの仮想化だけはデータテンプレート使わないと駄目そうだけどね

295:デフォルトの名無しさん
21/07/01 07:09:44.32 79OH3ZpR.net
>>288
それがformsの限界。
>>290
別にWPF推しじゃないけど、
XAMLはビルドの過程でC#コードに変換されるから
両方で書けるのは自然なことでは?
UIに関することはなるべくXAMLに書いた方がいいと思うけどね。

296:デフォルトの名無しさん
21/07/01 07:14:56.37 Yl2LhZPg.net
>>287
SOLIDなんて何も理解してなさそう

297:デフォルトの名無しさん
21/07/01 07:58:52.76 zoA/qoUb.net
>>290
後から動的に生成したい場合とか、コードで書けないと出来ないじゃん

298:デフォルトの名無しさん
21/07/01 09:03:54.60 BtHdEiN6.net
XAMLに記述すると横にびろーんと長くなって見づらい

299:デフォルトの名無しさん
21/07/01 09:06:48.81 jSC3+/HL.net
SRPやOCPを順守するには一般にレイヤの多い方が有利だから、むしろイベントハンドラの方がやりやすいまである
MVVMはVからMへイベントを伝播したりMの状態変化をVに反映したり依存関係を管理したりと、VMの役割が多くなりがちなんだよね
そのへんReduxなど後発の亜種ではより役割が整理されている

300:デフォルトの名無しさん
21/07/01 09:21:41.82 Z6twYu4c.net
>>296
xaml stylerというvisual studio拡張を入れなさい。
xaml保存時にいい感じに改行入れてくれるに適当な所で折り返してくれるパッシブスキルだ。

301:デフォルトの名無しさん
21/07/01 14:39:45.82 LLiHzSna.net
>>290
同じように見えるが依存関係プロパティ(xaml)とC#のプロパティは別々に定義しないといかんのだ(参照しているDataContext自体は同じ)
xamlUIクラスはDependencyObjectを継承しているのだ

302:デフォルトの名無しさん
21/07/01 19:04:08.19 g7pLzwL6.net
>>293
サンクス
なるほど、確かに両方で書けること自体は自然か
> UIに関することはなるべくXAMLに書いた方がいいと思うけどね。
そうだね
自分としては「両方で書けるけれども、こっちでしか書いちゃいけない」ってしてくれるといいんだけどな
複数のサンプルプログラムのいいとこどりをしようとした時に、それぞれが別々の書き方をしていると非常に面倒臭い、DataContextに限らず
以前、「全部コードビハインドで書く」っていうサンプルコードがあって、走らせるとちゃんと動作した
この調子だと、結局、毎回両方の書き方を覚えていかんなるんじゃない、特にいいとこどりするなら?
∴学習カーブが急だという説は正しい、というのも単純計算で覚えることが二倍だから
間違ってると思ったら気軽に指摘してくれ

303:デフォルトの名無しさん
21/07/01 19:09:07.26 g7pLzwL6.net
>>295
> 後から動的に生成したい場合とか、コードで書けないと出来ないじゃん
サンクス
入力が変わる度にDataContextを動的に切り替えるってことね
でも、XAMLじゃできなかったっけ?
(DataContextじゃやったことないけど、XAMLでListなんかの要素の変化した分も表示できるから出来るのかなーと類推してるだけだけど)

304:デフォルトの名無しさん
21/07/01 22:32:47.80 cUgiTPJy.net
>>300
サンプル見るときに何を参考にするか決め打ちするしかないね
俺はそうしていた
WPF始めたばっかりの頃はWinFormから移行を進めたくてイベントドリブン中心(これは結局失敗)
その後学習を進めてMVVM中心に切り替えた
MSのサンプルがイベントドリブンだらけなのが良くないよな

305:デフォルトの名無しさん
21/07/01 23:00:00.74 j2ilzMEK.net
>>302
そっちが基本なんだが...

306:デフォルトの名無しさん
21/07/02 11:38:56.90 VsUUVKi+.net
機能が豊富な分、全部覚えようとしたらそりゃ大変だ。
でも
ひのきの棒
剣・槍・斧・弓の欲張りセット
どっちかくれるって言うなら普通は後者を選ぶだろ?
まず手に馴染むものを使って
少しずつ他のものも触れてみるといい。
最初から全部に手を出す必要はないし、
最終的にも全部使えるようになっている必要はない。

307:デフォルトの名無しさん
21/07/02 11:50:23.46 Ngk5hsML.net
的外れな例え話は頭悪く見えるぞw

308:デフォルトの名無しさん
21/07/02 12:28:28.82 lSX3jk7y.net
おや?後ろに隠してるのは、棒かな?
www

309:デフォルトの名無しさん
21/07/02 12:40:53.27 Xm/bZCrF.net
>>304
先ずは初期装備のひのきの棒でスタートするだろw

310:デフォルトの名無しさん
21/07/02 13:05:21.63 VsUUVKi+.net
>>307
もらった装備は後から追加できないんだぞ

311:デフォルトの名無しさん
21/07/02 13:28:40.79 Egj0Aifo.net
そこで魔法でスキルアップだ

312:デフォルトの名無しさん
21/07/02 13:32:17.26 Vj99qG3J.net
もうやだ

313:デフォルトの名無しさん
21/07/02 14:04:17.52 KVWZHoQG.net
ここまでワテの自演

314:デフォルトの名無しさん
21/07/02 14:39:21.48 Qeilx2mY.net
wpf簡単チュートリアルテンプレートないの
DBとクエリだけ指定すればDataGridに出力してくれるとか
ボタンが配置してあってイベントに印刷とかExcel出力がすでにインプットされてるとか

315:デフォルトの名無しさん
21/07/02 15:38:08.34 VsUUVKi+.net
>>312
ほとんどwpf関係なくね?

316:デフォルトの名無しさん
21/07/02 16:32:41.92 Ir1tg0Tf.net
言語よりAccessのがいいんじゃね?
レポートは最強レベルの性能だし

317:デフォルトの名無しさん
21/07/02 19:19:58.89 s2SIGsrq.net
今時ローカルのDBなんて個人の小遣い帳にすら使い物になりません

318:デフォルトの名無しさん
21/07/02 19:42:12.79 Ir1tg0Tf.net
>>315
なにいってんの
サーバーに接続して利用すんの
一時期業務系の開発でよく見られた方式よ

319:デフォルトの名無しさん
21/07/02 19:49:38.81 9L+w52dS.net
SQLiteは使い勝手が良いのだが

320:デフォルトの名無しさん
21/07/03 04:36:22.66 DAcib8Yu.net
>>302
欲しいサンプルがさ、なかなか見つかんないんだよね
決め打ちできるほど選べないという・・・
その唯一見つかったサンプルたちが別々の書き方してると苦労する
自分はMVVMから学んで、あとでイベントドリブンを知った

321:デフォルトの名無しさん
21/07/03 04:59:48.16 DAcib8Yu.net
>>304
> ひのきの棒
> 剣・槍・斧・弓の欲張りセット
> どっちかくれるって言うなら普通は後者を選ぶだろ?
ディスるつもりはまったくなくけど、
なんか喩えがよろしくない気がする
どっちかくれるって、それは学習コストも含めて言ってる?
使いこなせること前提なのかな?
コンビニに行くのにヘリコプターは要らないでしょ?
WPFは使ってみて手に馴染まなかった

322:デフォルトの名無しさん
21/07/03 07:36:49.79 5NjsOhPI.net
>>319
徒歩しか選べないのと、ヘリコプターも徒歩も選べるのは全然違うよ。
WinForms的作り方でWPFを使えばいい。
バインディングもほとんど使わない。
それなら学習コストはほとんどかからない。
柔軟なレイアウトシステムとか
スタイルによるコントロールのプロパティ一括指定とか
学習コストが低くて便利なところだけつまみ食いすればいい。

323:デフォルトの名無しさん
21/07/03 09:09:34.76 WFYQtiF3.net
結局邪悪だったのは
WPFといったらMVVMみたいな記事を書いてたMicrosoftのブログとかMVP、なんだよね
山師みたいなもので

324:デフォルトの名無しさん
21/07/03 10:25:40.00 SKBAEND3.net
>>318
あとはもう書籍に頼るしか無いな
WPF関連の参考書は古いのばっかりだけど
WPF自体があんまり進化してないから2010年くらいのでも結構参考になる

325:デフォルトの名無しさん
21/07/03 11:00:07.13 IVHyImvm.net
取っ付きにくい→普及しない→資料が無い→
負のスパイラルだね

326:デフォルトの名無しさん
21/07/03 11:51:17.43 /7aEvID4.net
>>318
そりゃ酷い
普通こんな変態的なコード書かないよ
同じMSでもBlazorのMVVMの方がまともだ。
プロも考えてるなら
js覚えてReactとかやってみたら?
仕事多いよ。

327:デフォルトの名無しさん
21/07/03 13:31:50.48 xrPgyhkt.net
>>304
実際には、WinFormsが少し前の高級車で、WPFは、バックカメラを
搭載した軽自動車みたいな感じだろう。
速度が違うし、どっちがいいとも言えないような状態。

328:デフォルトの名無しさん
21/07/03 13:51:45.16 xrPgyhkt.net
>>325
もとい。
バックから見たいな画期的なものはWPFには付いてない。
せいぜい、短波ラジオが追加された軽自動車みたいな印象。

329:デフォルトの名無しさん
21/07/03 14:03:08.22 +Y9Mw3Lc.net
WPFってWindowsメッセージドリブンなアプリを作れないよね

330:デフォルトの名無しさん
21/07/03 14:03:10.68 SKBAEND3.net
そんなにWinFormが好きなのかw

331:デフォルトの名無しさん
21/07/03 14:22:06.46 +F8p4M2+.net
>>325
実際にはWinFormsがリヤカーでWPFがステーションワゴン

332:デフォルトの名無しさん
21/07/03 14:22:33.63 xrPgyhkt.net
WinFormsは、レンブラントやミケランジェロの作品の様に万人から一定の評価を
受けるようなものだが、WPFはピカソの絵みたいに人を選ぶ。
支持者には画期的で先鋭的なものらしいが。

333:デフォルトの名無しさん
21/07/03 16:12:05.88 kc73fFDc.net
いつまでWinForms vs WPFやってんの
ネタが尽きて妙な例えになってるし、いい加減にしろ

334:デフォルトの名無しさん
21/07/03 16:51:53.62 bc4tv4Cc.net
10年以上続けてる習慣にいい加減にしろだって!?
お前こそいい加減に止めることはできないって現実を理解しろよ

335:デフォルトの名無しさん
21/07/03 18:06:40.40 DAcib8Yu.net
>>320
やってみようかなという気持ちと
そっちの道も蛇の道では、または
それならWinFormsでいいんではないかという気持ちがある
WPFの扱いをユーザー側でどうこうするより、
MS側でバインディングを簡素化してくれた方が嬉しいかな

336:デフォルトの名無しさん
21/07/03 18:07:36.50 yLRyBVvw.net
自分が知ってるOSSでWPF使ってるのはEDCBぐらい
MVVMは使ってないようだけど

337:デフォルトの名無しさん
21/07/03 18:27:49.11 DAcib8Yu.net
>>322
ここ3年ぐらいで出版されたのを一冊買ってある
アマゾンで高評価だった奴
でも、欲しかった情報とちょっとズレてるんだよね・・・
もちろん有用な情報もあったけど

338:デフォルトの名無しさん
21/07/03 18:30:13.91 DAcib8Yu.net
>>324
> js覚えてReactとかやってみたら?
あら、今、正にそこ
そうだね、その方向性で行こう

339:デフォルトの名無しさん
21/07/03 19:20:53.81 l02BKdxs.net
今更、WPFを覚えるってのもね。

340:デフォルトの名無しさん
21/07/03 19:52:56.77 ApVtA7Dx.net
今ならWindows Runtime系の本でC#バージョン新しめのやつ探したほうが良い、あるのかは知らん(´・ω・`)
Xamlまでやるなら素直にPetzoldくんの6版

341:デフォルトの名無しさん
21/07/03 20:10:39.49 PF+2QSJm.net
マジか。WPF今から頑張ろうと思って色々調べているけど
正当進化のUWP?がズッコケてるのみるとこの技術に未来はないのかなとも思う
ただWPFのFormsにはない先端で綺麗なコントロールがあるからほっとけない

342:デフォルトの名無しさん
21/07/03 21:19:34.25 aubZqG39.net
今WPFを使う必要に迫られているのではなく将来を考えて勉強しようとしているなら、
さすがにそれはWebかスマホをやったほうがいいぞ

343:デフォルトの名無しさん
21/07/03 22:02:27.73 /7aEvID4.net
Reactの次のステップが
React Native for windowsでのwinアプリ作りだね
URLリンク(docs.microsoft.com)
URLリンク(microsoft.github.io)

344:デフォルトの名無しさん
21/07/03 22:03:35.57 yLRyBVvw.net
今ネイティブアプリを作る理由は鯖を用意しなくて良いぐらい…

345:デフォルトの名無しさん
21/07/03 22:10:03.29 /7aEvID4.net
ネイティブアプリで自前ブラウザーを構成し、
本体アプリはReactで作成する

346:デフォルトの名無しさん
21/07/03 22:13:34.86 yhsKzI36.net
>>339
趣味なら良いんじゃない?
慣れれば使いやすいから
フリーランスとかで案件が欲しいんだと微妙

347:デフォルトの名無しさん
21/07/03 23:34:47.12 gAHM5nnh.net
>>339
WPFのxamlは多機能すぎるしとりあえず最低限でもいいから適当にやればいい
ただ、MVVMは他でも使ったりするからこっちを重点的にやればいい

348:デフォルトの名無しさん
21/07/03 23:35:31.59 yLRyBVvw.net
MVVMは他でも使うというのは語弊があるかと

349:デフォルトの名無しさん
21/07/03 23:36:48.07 gAHM5nnh.net
俺が勉強した時は最初はxamlに深入りしないで他でもいきるMVVMの方に力入れてモチベーションを維持した

350:デフォルトの名無しさん
21/07/03 23:38:42.00 yLRyBVvw.net
MVVM技術は袋小路で他に流用できないし思想も実装によって違う
MVVM自体はこれから捨てられる技術
開発&テストしづらいのでFaceBookはMVVM否定してReactでFluxを使ってる

351:デフォルトの名無しさん
21/07/03 23:40:38.59 yLRyBVvw.net
MVVMが向いてるのは個人などの小規模アプリ
中~大規模だと相互の関係が分かりづらくバグの温床になるので敬遠される

352:デフォルトの名無しさん
21/07/03 23:44:15.93 gAHM5nnh.net
andorid開発でもDataBinding+MVVMだし
flutterでもMVVMで作ってるし
最新のjetpack composeでもMVVM使う予定だけど
ただ、flutterなどデータバインディングない環境は自前でVとVMを接合しないといけないけど
すげぇ便利

353:デフォルトの名無しさん
21/07/03 23:46:01.95 f2jJT3fK.net
>MVVM技術は袋小路で他に流用できないし思想も実装によって違う
そもそもその手のアーキティクチャで他に流用できるものなんてどんだけあるかねぇ。
結局フレームワークごとそれぞれの考え方を習得しなきゃsならんように思うが。

354:デフォルトの名無しさん
21/07/03 23:55:56.96 gAHM5nnh.net
MVVMは基本、単に責務ごとにMとVとVMに分けて、オブザーバーパターンで状態変化通知して、xamlみたく組み込みのデータバインディングあればなおさらいいてだけじゃん
フレームワークによらず、アプリ全体をMVVMで設計できて
フレームワークによって違うのは主にVとVMと接合部分だけで
むしろ新しく覚えるのがそれだけなんだが?

355:デフォルトの名無しさん
21/07/04 00:12:28.55 YIai1OGN.net
MVVMは副作用がわかりにくいので更新順序などで結果が違うなどバグの温床になる
状態を考慮せず実装できるような気がするが実は隠れた状態があり
その状態自体が見えづらく制御しづらい

356:デフォルトの名無しさん
21/07/04 00:12:35.78 scRQ4YdL.net
むしろMVVMのV差し替えで別フレームワークに切り替えた実例見たことないけど何かある?

357:デフォルトの名無しさん
21/07/04 00:14:23.32 YIai1OGN.net
VとVMの切り替えはセット

358:デフォルトの名無しさん
21/07/04 00:20:28.59 pwN2nm3/.net
誰もさすがにコード共有までは言ってない
MVVMというアーキテクチャでUIフレームワーク変わっても同じように設計、実装できるといってるだけ
別にUIフレームワーク変えて一方向のデータフローが好きなら新しくfluxも覚えればいい

359:デフォルトの名無しさん
21/07/04 01:13:39.87 arSMsrRy.net
MSもMAUIではMVU採用したみたいだけど
WinUIはどうすんのかな

360:デフォルトの名無しさん
21/07/04 01:16:05.43 arSMsrRy.net
>>353
そういうこともあるけどナレッジが蓄積されるとバグのパターンと修正ポイントがすぐわかるようになる
大昔イベントドリブンの黎明期にも同じような事が言われて
古参が「ほらやっぱり逐次制御で書かないと分かんなくなる」と騒いだけど
その時も同じように解決されていった

361:デフォルトの名無しさん
21/07/04 06:27:35.14 pwN2nm3/.net
たぶんだけどmauiのMVUっても二つに分けてかんがえないと
まず、flutterなど今どきっぽく、UIをxmalではなくコードで宣言的に書けるってことだろ
で、おそらくjetpack composeみたくコードで書いた部分の状態を参照する部分は
オブザーバブルな状態の変更通知の購読、キャンセルはコンパイラサポートでコード自動生成?
flutterはここ自前でやらなきゃいけないので面倒
で、UIでイベントが発生したら、あとはそのイベントをどこに流すかだけでしょ
イベント発生時にViewModelのメソッド呼べばMVVMになるし
他の何かにしてデータの流れを一方向にすればMVUになるし
ただそれだけの話

362:デフォルトの名無しさん
21/07/04 06:30:16.24 pwN2nm3/.net
.NET MAUIでUIがxaml使わずにコードで宣言的にUIかけるように
なっても、UIのイベントをどこに流すかでMVVMにもほかのMVホゲホゲの何かにもなるし
ただそれだけ
俺が>>350のjetpack composeでやろうとしてることと同じ
想像だけどね

363:デフォルトの名無しさん
21/07/06 07:06:29.25 Mov0te+3.net
React Nativeはオワコン、PWAも手を出す価値なし?

364:デフォルトの名無しさん
21/07/06 09:51:25.64 RV/aERgl.net
VMとMをバインディングするからいろいろイビツになったり複雑になったりするんだと常々思う

365:デフォルトの名無しさん
21/07/06 09:58:12.53 1wxKYJ6u.net
違うだろ

366:デフォルトの名無しさん
21/07/06 11:18:59.50 xnJqtZB6.net
いや違わない
コードビハインドを使うなというアホまで出る始末

367:デフォルトの名無しさん
21/07/06 11:34:57.19 RV/aERgl.net
変更即時反映のUIって最近流行りじゃん、スマホでもWebでも最近ではWindowsの設定画面でも
あれUXとしては後退だと思うんだよね
でもMVVMから見ると素直に作れるんだよね
プログラマやってる俺ですら
あれ?ミスタッチしたんじゃね?
どこ変えたかわかんなくなったからキャンセルしたいんだけど?
って度々思うもん

368:デフォルトの名無しさん
21/07/06 12:07:19.74 1wxKYJ6u.net
>>364
ごめん
読み間違えてた
コードビハインドの件は同意
あれはBlendでポトペタするため

369:デフォルトの名無しさん
21/07/06 12:31:13.78 paV/EiqB.net
>>365
optimisticなuiって奴か?
俺あれ嫌いや

370:デフォルトの名無しさん
21/07/06 12:32:33.09 paV/EiqB.net
ああ違う
いちいちSaveとか押さんでも保存される奴か
あれは確かにデータフローに引っ張られてる面あると思う

371:デフォルトの名無しさん
21/07/06 16:37:57.56 ScK6t+pL.net
DataGridのColumnHeaderのボーダーがCellのそれと比べてほんの少し右にズレてるのは仕様?

372:デフォルトの名無しさん
21/07/06 21:30:26.20 YzLUI9DG.net
blenderおじさんまだいるのかw

373:デフォルトの名無しさん
21/07/06 21:43:25.19 8gON5+RN.net
>>369
仕様 回避コード書いてるサイトあったな

374:デフォルトの名無しさん
21/07/07 06:26:07.20 mc7eJwPZ.net
>>365
変更即時反映が悪いわけじゃない。
直近で変えた項目の色を変える、設定変更のアンドゥをできるようにする等
いくらでも改善できる。

375:デフォルトの名無しさん
21/07/07 07:59:44.80 aJu+QZ75.net
設定を他人に伝えるとき即時のほうがありがたい
適用ボタンを押す指示はないほうがいい

376:デフォルトの名無しさん
21/07/07 10:28:43.71 Q3P1Rq1L.net
>>372
やってないじゃん

377:デフォルトの名無しさん
21/07/07 12:02:11.13 Lzprbr4S.net
>>371
仕様か
昔の立体Win32スタイルの名残でズレてるってことなんだろうな

378:デフォルトの名無しさん
21/07/07 14:14:24.07 8DbHlE2J.net
>>373
大体、そういう説明が理解出来ない人は低IQか初心者。
慣れた人には適用ボタンが有った方が便利で安心。
Windowsは少し高IQな人に向いている。
モバイルは万人向けなので、普通IQや低IQの人が使える様になっているが、
むしろ機能としては不便になっている。

379:デフォルトの名無しさん
21/07/07 15:07:54.70 49748z4f.net
>>376
++

380:デフォルトの名無しさん
21/07/07 15:28:42.41 oUueiKD3.net
>>376
☆★★★★

381:デフォルトの名無しさん
21/07/07 15:35:09.52 Q3P1Rq1L.net
既存のモデルにコンソールのガワを被せるためにMVVMを採用
バインディングのためにモデルをバインディング仕様に改造
もうこれがイビツ極まりない
UIフレームワークの都合に合わせてモデルを変更するとか気持ち悪すぎる

382:デフォルトの名無しさん
21/07/07 16:51:39.11 tPYXmU6j.net
>>379
★★★★★

383:デフォルトの名無しさん
21/07/07 18:05:12.08 AWE9BvFy.net
個人的にはせっかくバインドする仕様にしたんだから、デフォルトをリアクティブに寄せれば良かったのにと思う
webのJSフロントエンドフレームワークとかみたいに感覚的じゃないんだよね

384:デフォルトの名無しさん
21/07/07 18:20:21.95 mc7eJwPZ.net
>>376
典型的な低IQ無能プログラマ。
そんな甘ったれた考えだといつまでたっても底辺から上がってこれないぞ。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch