X



WPF(.NET4.x, .NET Core) GUIプログラミング Part24

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん (ササクッテロ Spcf-v5QR)
垢版 |
2019/12/09(月) 12:36:14.49ID:9LsUsH++p
Windows Presentation Frameworkについて語るスレ。

前スレ
WPF(.NET4.x, .NET Core) GUIプログラミング Part23
https://mevius.5ch.net/test/read.cgi/tech/1557960752/

関連スレ
Windows 10 UWPアプリ開発 Part 2
http://mevius.2ch.net/test/read.cgi/tech/1499658092/

コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
http://ideone.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
0891デフォルトの名無しさん (ワッチョイ 5d63-RNyz)
垢版 |
2021/01/31(日) 01:25:53.85ID:c/zdJjVH0
疎結合のメリットがわからない人はここにいるのかい?
0892デフォルトの名無しさん (ワッチョイ 66b5-ERTH)
垢版 |
2021/01/31(日) 01:40:01.70ID:SnnX9R4F0
疎結合になること自体はメリットではないことがわからない人がここにいるのかい?
0894デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/31(日) 07:07:48.07ID:Odha2eMQ0
どんだけでかいシステム作るんだろうな。
VC6.0やVB6.0でいいだろと言いたい。あれは良くできてた。
0896デフォルトの名無しさん (ワッチョイ b501-Z/xs)
垢版 |
2021/01/31(日) 07:51:13.66ID:r9k2b4HI0
疎結合って
キチンとインターフェース決める設計手法と
ほぼ逆の事をやってるね。

VS等の参照ジャンプが利かなくなって
かつリファクタリング機能の対象外となるし、
コンパイル自分に結合保証も担保できなくなるから、
大規模化リファクタリング後の
潜在バグの原因になっとるんだが。
0898デフォルトの名無しさん (ワッチョイ 799c-Jvp0)
垢版 |
2021/01/31(日) 08:06:25.92ID:+eg72yeD0
疎結合だとデバッグが楽・・・
ビューとモデルが明確に分離されてることで
「画面に表示される値がおかしい!」というときにまずはモデルをチェックすればいい
だいたいこれで誤りが見つかる

ビューはモデルを素直に反映するようになっていればビジネスロジックの影響をほとんど受けない
つまり、デバッグ(点検)対象から外せるケースが多くなる
0900デフォルトの名無しさん (テテンテンテン MM3e-+Ul7)
垢版 |
2021/01/31(日) 09:12:12.67ID:I7rtGHH8M
ViewとModelの分離で結合が疎にならないの?
>>899の思ってる「疎結合」の定義を聞かせてほしい

「ビューはモデルを素直に反映するようになっていれば」という前提の整理について
>「ビューはモデルを素直に反映するように」
ここだけ抜き出して「これも..」と指摘してるのはいったい何が言いたいの?


なんか逆張りで根拠もなくケチつけてるだけに見えるんだけど
0901デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/31(日) 09:17:07.25ID:Odha2eMQ0
昔の方が作りやすかった気がする。
0907デフォルトの名無しさん (ワッチョイ b501-Z/xs)
垢版 |
2021/01/31(日) 09:43:32.25ID:r9k2b4HI0
>>904
良い説明をググッてみたけど
見つからないので簡単に書くと、

コンパイル時に参照が切れた状態になる実装を
疎結合。WPF流MVVMでバインディングで繋ぐと疎結合になる。

対してC#で普通に書くと密結合。
0909デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/31(日) 09:49:01.23ID:Odha2eMQ0
>>905
それで売りの高解像度にも対応してるなら
それでいいやね。

>>906
MVVMもそのうち消えるだろう。
0913デフォルトの名無しさん (ワッチョイ b501-Z/xs)
垢版 |
2021/01/31(日) 10:01:10.65ID:r9k2b4HI0
>>909
>>MVVMもそのうち消えるだろう。

MVPの派生だし消えるほど酷くはないけど。
自分はReactとかでViewModelとかいう概念は
便利に使わせてもらってる。

View(React,ts)+ViewModel(ts)+Model(C#)
0915デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/31(日) 10:05:34.29ID:Odha2eMQ0
>>913
よくわからんがなかなかの上級者ですな。
元MASM使いなんだが今の方が覚えること多いわ。
0916デフォルトの名無しさん (ワッチョイ 799c-Jvp0)
垢版 |
2021/01/31(日) 10:10:11.38ID:+eg72yeD0
>>907
あーなるほどね
俺とは疎結合・密結合の定義が全然違うわ
あなたは静的型付け・動的型付けみたいなものとして考えてるのね
疎結合は実行時解決だから統合開発環境で流れを追うのが難しくなると
まあそれも分からなくはないがな

俺の言ってる疎結合・密結合というのはそういった技術的に明確なものではなく概念的なものなんだ
インターフェースが明確に決められていて必要十分な最小限のやり取りがされるように設計されてれば疎結合
そういった取り決めがなくあちらこちらで繋がってるのが密結合
0918デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/31(日) 10:16:14.30ID:Odha2eMQ0
>>917
かれこれ40年はやってる。
0921デフォルトの名無しさん (ワッチョイ b501-merL)
垢版 |
2021/01/31(日) 10:34:11.79ID:r9k2b4HI0
>>916
説明書いててそうかと思った!

「静的型付け・動的型付け」この型付けは開発完了時に
100%分かってないとダメだろうから型固定なんだよね。
「静的型リンク・動的型リンク」が正しい(昔はそう言ってた)と思ってるけど認識間違い?

>>916
>>インターフェースが明確に決められていて

AさんとBさんが同一箇所の実装作業をしていて、
お互いが作成したクラスを呼びだす時、
その取り決めをインターフェースクラスとして作成して
これを別モジュールに切り出してお互い齟齬が出ないようにして開発する方式を
オブジェクト指向的な開発の基本と思ってるだけど、
この別モジュールのインターフェースクラスの役割を
疎結合に置き換えたプロジェクトが多いね。

テストしてても実行しないとバグわかんないし、
仕様書が必要になるから生産性下がんない?仕様書もらうより、
インターフェースクラスを寄越せと言いたくなるけど認識が低い?
0922デフォルトの名無しさん (ワッチョイ b501-merL)
垢版 |
2021/01/31(日) 10:37:40.94ID:r9k2b4HI0
>>920
WPFのバインディングはちょっと難しい構文を書くと、
合ってるのに警告出たりしてウザかったりするけど完璧なものになった?
0924デフォルトの名無しさん (ワッチョイ ea42-6WVI)
垢版 |
2021/01/31(日) 10:43:31.30ID:6A85emn00
>>922
逆に厳密な方チェックになっているからintとdoubleの違いでもエラーとなるから
コンバーターかますかViewModelをイジる必要がある
あとコンバーターは型チェック無いからハマる時があるのが問題だったり
0925デフォルトの名無しさん (ワッチョイ b501-merL)
垢版 |
2021/01/31(日) 10:55:16.05ID:r9k2b4HI0
>>914
大昔からやってる(WinFXとか言ってた時代からやってる!!)と気づく人いたと思うけど、
WPFの開発者が目指したのは、開発時にBlandエディタが使える実装なんだよ。

Blandは別製品で今はVSに統合されたけど、使えてる人はいるのかな?
Blandを使わない時点で、WPF流MVVMの実装パターンはやりすぎだし過大だ。

そのくせ、コードビハインドは捨てきれてないし、
中途半端で今時流では欠点を指摘される事が多くなってる。
0930デフォルトの名無しさん (ワッチョイ ea6a-6WVI)
垢版 |
2021/01/31(日) 13:43:45.07ID:FiwuPv0S0
WinUIはUWPの系譜だから事前バインディング x:Bind なんでしょ
イベントも対応しててちょっとしたボタンクリック程度ならコマンドパターン適用しなくていいし楽だったわ
あとMVVMじゃなくてMVUとかいうを使えとか
0941デフォルトの名無しさん (ワッチョイ ea90-FQa/)
垢版 |
2021/02/02(火) 00:05:04.75ID:zsk2qsaN0
>>940
preview 4はその最新のロードマップが発表された後に、プレビューリリースの間隔が長すぎという批判が出て急遽リリースされることになった
https://twitter.com/marbtweeting/status/1354134751766953984
2月 preview 4
3月 reuinoin 0.5
5月 reuinion 0.8
じゃないかな?
https://twitter.com/5chan_nel (5ch newer account)
0942デフォルトの名無しさん (ワッチョイ 66b5-ERTH)
垢版 |
2021/02/02(火) 00:22:15.18ID:RoIAA49z0
WPFの本のKindle版を買ってまだあんまり読んでないのに
もう別のUI出るのかよ・・・

ちきしょー、紙版買っときゃよかったぜ
それなら中古で売れるのによ・・・

WPFにはクソな思い出しかない
0944デフォルトの名無しさん (ワッチョイ 4954-QivW)
垢版 |
2021/02/02(火) 03:37:50.94ID:rKbxrD500
WinFormsとかWPFのいい所は、配布先のPCでだいたいランタイムの新規インストール不要で動くとこなんだけど、
WinUIだと当面ランタイムも同梱しないといかんよね?
0949デフォルトの名無しさん (ワッチョイ 2ae6-mj3q)
垢版 |
2021/02/02(火) 20:42:27.60ID:9gegCBvb0
windowのvisibilityにデータバインドして
イベントハンドラでhiddenになったらthis.close()してやろうとしているのですが
クソコードですか?
0950デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/02/02(火) 23:17:21.74ID:ys8JMHCh0
WPFも短命だなこりゃ。。
0952デフォルトの名無しさん (テテンテンテン MM3e-ovjX)
垢版 |
2021/02/03(水) 00:43:16.96ID:5b6XJ+8sM
WPFのリリースは2006年、もう15才だ
一般的なソフトウェアのサイクルとしては決して短くはない
結局日の目を見ることはなかったが、ここまでよく頑張ったよ
もう楽にさせてやろう
0955デフォルトの名無しさん (ワッチョイ 4954-QivW)
垢版 |
2021/02/03(水) 02:46:56.03ID:suCK4Q8d0
他のキーワード
wpf 普及しない
wpf 将来性
WPF C#
wpf 将来性 2020
wpf 流行らない
WPF(Windows Form)
wpf サポート終了
WPF 入門


他の人はこちらも検索
What is WPF used for?
Is WPF Dead 2019?
What is a WPF project?
What is replacing WPF?
Why is WPF dead?
Why is WPF so slow?
0958デフォルトの名無しさん (ラクッペペ MM3e-mj3q)
垢版 |
2021/02/03(水) 19:52:08.00ID:jQBwY413M
3年前のwebアプリって今動くの?
0959デフォルトの名無しさん (ワッチョイ 799c-Jvp0)
垢版 |
2021/02/03(水) 20:11:06.40ID:kMe6ilrT0
動かないことはないと思うがjQueryとか古い技術使ってそうね
今のreactやvue.jsなんかも数年立ったら古いって言われてると思う
Webは技術がコロコロ変わりすぎてやる気になれない
0961デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/02/03(水) 23:29:27.89ID:J0iktNk60
なんだ。勉強しようと思ったら終わりかよ。
業務アプリって明快でサクサク動くのが第一条件だからなぁ。
0963デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/02/03(水) 23:57:50.08ID:J0iktNk60
そう。
ボタンに影つけるとかアニメーション、回転なんて実際、どうでもいいんだよね。
0970デフォルトの名無しさん (ワッチョイ 66b5-ERTH)
垢版 |
2021/02/04(木) 10:31:10.36ID:3GUGjOuU0
>>963
同感
社外に出すなら知らんけど、うちは社内の業務アプリ開発やってるから見栄えよりもパフォーマンス重視なんだよね
みんなWinFormsでやってて、社内でWPFやってるの俺しかいねぇ
リアルタイムでグラフが動いたりすると「おおーっ」と言われるが、作った俺本人は別に要らんかったなと思ってる
0972デフォルトの名無しさん (ワッチョイ a59b-qCTK)
垢版 |
2021/02/04(木) 11:03:30.76ID:ZzRKCYY/0
>>966
もったいないな
COMは良いぞ
0976デフォルトの名無しさん (ワッチョイ 66b5-ERTH)
垢版 |
2021/02/04(木) 17:45:56.09ID:3GUGjOuU0
ホント、COMぁったもんだ
0978デフォルトの名無しさん (ワッチョイ ea6a-6WVI)
垢版 |
2021/02/04(木) 21:39:09.24ID:ih5/H8FP0
高DPI時代にWinFormsは無理
0979デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/02/04(木) 23:48:33.11ID:rPrK7o6X0
>>963
ま、両方できるならそれに越したことは
ないがな。
0987デフォルトの名無しさん (アウアウクー MM0b-6o66)
垢版 |
2021/02/05(金) 09:45:22.14ID:8dD588qGM
>>986
そういうことではなくて
自分の会社が作った技術を他の事業部がほとんど使わないんだよ
色々技術つけるのはいいよ?でもその技術作った会社がほぼ使ってないってどーいうことなの?
ってなる
なんかその辺の企業にありがちなオレオレフレームワークと一緒じゃん
0990デフォルトの名無しさん (ワッチョイ 9f01-pSMo)
垢版 |
2021/02/05(金) 10:20:52.50ID:I+zADhcc0
>>987
自分の事業部で使ってるんでしょ?
事業部制ってそう言うもんだよ
別会社みたいなもんだし、下手すると現場では競合したりもする
日本でも昔はそういう企業も多かったけど無駄だからやめようとトップダウンにして現場の士気は下がって業績もついでに下がってるw
レス数が950を超えています。1000を超えると書き込みができなくなります。

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