- 1 名前:デフォルトの名無しさん mailto:sage [2019/05/16(木) 07:52:32.39 ID:8fOYIMEO.net]
- Windows Presentation Frameworkについて語るスレ。
前スレ WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part22 https://mevius.5ch.net/test/read.cgi/tech/1513175747/ 関連スレ Windows 10 UWPアプリ開発 Part 2 mevius.2ch.net/test/read.cgi/tech/1499658092/ コードを貼る場合は以下のサイトの利用をお勧め。 run codeのチェックは外しておきましょう。 ideone.com/
- 132 名前:デフォルトの名無しさん mailto:sage [2019/05/26(日) 20:23:59.98 ID:S2MuqUmA.net]
- ID:P9kv6fd4の馬鹿か
- 133 名前:デフォルトの名無しさん mailto:sage [2019/05/26(日) 20:34:08.79 ID:bvJijhhT.net]
- 基礎からやろう?って何週間も前からいろんな人から散々言われているのにそういうアドバイスは一切無視して延々と質問続けるだけだからね
ツールは当然一生完成しないし技術は大してつかないで終わるよ
- 134 名前:デフォルトの名無しさん mailto:sage [2019/05/26(日) 22:17:35.93 ID:lD8uie1v.net]
- >>120
wpfはviewとviewmodelをdatacontextを介してやりとりするんや 例えばmainviewのdatacontextにmainviewmodelクラスを指定した場合、 mainviewmodelクラスのプロパティの値をバインディングすることでviewに表示することができる c#でもJavaでもプロパティは外部への情報公開を目的としてるから その意図をそのまま利用しとるだけ 大分ざっくりした説明だけれど、もし全く理解できないのなら前でも誰か言ってたけど、 windows formにするかコードビハインドに書くやり方でまずはやったほうがいい JavaScriptにもMVVMの概念はあるからそっちから攻めるのもありかもしれない
- 135 名前:デフォルトの名無しさん mailto:sage [2019/05/26(日) 22:20:05.47 ID:lD8uie1v.net]
- ごめん、Javaのプロパティのとこは無視してくれ
- 136 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 07:42:24.34 ID:35m6EZY7.net]
- >>120
内部変数を省略してるだけなんよ private の内部変数がコンパイル時に勝手に作られる
- 137 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 11:51:22.51 ID:JRCNDAml.net]
- >>120
自動実装プロパティっていつ使うのって話ならWPFはほぼ関係ない 自動実装プロパティは.netの機能でWPFは.netの一部 というだけの話 これは基礎からやれって話なのか?だけど 今からならwindows formsは勉強しなくていいと言う人もいるし 実際しなくていいだろう ただWPFの解説書に.netについての解説なんかないよね 1からやる場合こういう.netの知識が曖昧になっても不思議はないと思う .netは追加機能も多いし巨大すぎる
- 138 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 18:13:11.10 ID:g3rj1HTz.net]
- > 今からならwindows formsは勉強しなくていいと言う人もいるし
> 実際しなくていいだろう 何を馬鹿なことを言ってるんだw 最近の初心者向け本では逆にwinformsしか説明してない WPFなんて眼中にない
- 139 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 18:24:54.78 ID:Y0xP1Rix.net]
- >>132
素人向けだからだろ? wpfはMVVMとかxamlがくっついてくるから、winformの方が初心者向けなのは当たり前だ
- 140 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 19:33:58.77 ID:re6ifzAE.net]
- で、ユニバーサルプラットフォームって
何と何と何があるのかな?
- 141 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 21:13:35.13 ID:rm61aUh5.net]
- UWPとWPFの区別がつかない人がドヤ顔
- 142 名前:ナマウンティング []
- [ここ壊れてます]
- 143 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 21:27:11.21 ID:llXnDosY.net]
- 最近増えてきたガラスのような表現のフレームワークはWPFですか?
- 144 名前:デフォルトの名無しさん mailto:sage [2019/05/27(月) 21:30:57.15 ID:LNS8v7+t.net]
- いいえ
あれはUWPです
- 145 名前:デフォルトの名無しさん [2019/05/28(火) 19:02:40.16 ID:ZZsS+Znm.net]
- xaml islandが出てきて、UWPじゃないとできないという制約が
なくなってきたね。
- 146 名前:デフォルトの名無しさん mailto:sage [2019/05/28(火) 19:15:12.49 ID:az36SE/9.net]
- そんなのあんだ。
- 147 名前:デフォルトの名無しさん mailto:sage [2019/05/28(火) 19:38:30.31 ID:MzojxIZT.net]
- 逆に今後の新規開発や追加開発ではWPFもういらないってことなんだけどな
既存のWPF部分に手を入れざるを得ない場合を除き、常にWindows Runtimeで作る それが今後のWPFアプリケーションの唯一の正しい作り方だ
- 148 名前:デフォルトの名無しさん mailto:sage [2019/05/28(火) 20:56:00.72 ID:5uVnslUx.net]
- >>140
ジョジョでいう シルバーチャリオッツレクイエムみたいなもんか
- 149 名前:デフォルトの名無しさん mailto:sage [2019/05/29(水) 01:24:16.83 ID:l3SpZv82.net]
- >>141
さっぱりわからん
- 150 名前:デフォルトの名無しさん mailto:sage [2019/05/29(水) 09:50:06.92 ID:v46ep+GI.net]
- >>141
スタープラチナのザワールドだろ 通常はスタープラチナの精密で力強い攻撃で対応して無理なら時を止める
- 151 名前:デフォルトの名無しさん mailto:sage [2019/05/29(水) 12:19:09.94 ID:1hOUMMYr.net]
- Double型をバインディングしたTextboxに小数点を入力するとエラーになり問題、Extended Wpf toolkitのDoubleUpDownをTextboxの代わりに使ったらあっさり解決...
今までわざわざstring型でバインディングして数値だけ入力制限したりあれこれしてたのが無駄だったわ
- 152 名前:デフォルトの名無しさん mailto:sage [2019/06/01(土) 16:43:20.75 ID:228VL8j4.net]
- Windows API Code Packというのは機能を拡張するものですか?
c#で使用できるんでしょうか?
- 153 名前:デフォルトの名無しさん mailto:sage [2019/06/01(土) 17:32:12.45 ID:Ai3idouJ.net]
- できるよん
- 154 名前:デフォルトの名無しさん mailto:sage [2019/06/01(土) 19:39:51.72 ID:228VL8j4.net]
- はい
- 155 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 09:43:53.79 ID:OPrZ2CcO.net]
- Directory.GetFileSystemEntriesで画像を取得できますか?
- 156 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 10:15:11.60 ID:H0pYHCN3.net]
- ID:P9kv6fd4の馬鹿か
- 157 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 10:25:53.31 ID:OPrZ2CcO.net]
- なんでそんなに攻撃的なんですか?
- 158 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 10:36:47.06 ID:VOFsXmY2.net]
- >>150
関数の仕様をリファレンスで調べてきて引数と戻り値と動作を読んで、それでも分からないことがあったらそこを具体的に質問すると丁寧に答えてもらえるぞ
- 159 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 10:59:47.73 ID:bzcjxT5l.net]
- wpf関係ないじゃん
何がC#でなにがwpfかもわかってないんでしょ 散々チュートリアルやろ?って忠告を無視して延々と同じような質問繰り返してりゃ答える側も馬鹿らしくなるよ
- 160 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 12:05:12.73 ID:H0pYHCN3.net]
- >>150
しつこい馬鹿だから いい加減死ねよ
- 161 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 21:42:55.58 ID:1gGjmj25.net]
- 画像ってのがサムネイルのことならWindows API Code Packで出来るんだが
もう少し自分で調べたほうが良いと思うよ
- 162 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 22:13:49.95 ID:FzL8t6js.net]
- Windows API Code PackはForkがいくつもあってどれを使えばいいのか分からないな。
ライセンスも元のMSのページが消えてて良く分からんし。
- 163 名前:デフォルトの名無しさん mailto:sage [2019/06/02(日) 23:35:24.11 ID:1gGjmj25.net]
- ただ、ファイルシステムをCodePack使わずにWin32API使うと面倒になるからな
言うほど大変なわけでもないが、独特な管理方法で面食らったわ
- 164 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 00:00:34.97 ID:/fVOuCWc.net]
- >>156
ファイルシステムってなんのこと? フォルダー選択ダイアログとかを出すことかな
- 165 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 15:10:33.38 ID:kNKAj5df.net]
- 社内業務用にpowershell+.NETで簡易GUIを表示するようなアプリケーションを作る場合、商用ライセンスとか必要なんでしょうか?
- 166 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 16:58:31.60 ID:L8VSMqPX.net]
- いらんでしょ
- 167 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 18:40:28.28 ID:dutM1mQ+.net]
- どっちの意味だろう?
・(作成するアプリケーションの)商用ライセンス ・(VisualStudioの)商用ライセンス よく主語が抜けてるとか言われてるけど この場合、連体修飾語が抜けてるよね(今調べた)
- 168 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 18:46:53.35 ID:oLmmsHsK.net]
- 後者の意味にしか取れなかった、というか前者の意味がわからん
社内用に作ったアプリに商用ライセンスつけるか、って話?
- 169 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 18:50:14.74 ID:Y6wyUKBm.net]
- 社内配布でも基本的にはVSの開発者用ライセンス必要だし、
オープンソース使ってるならライセンス違反にならんように気をつけなあかん 自分個人だけで使うなら特にライセンス気にすることはないだろう
- 170 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 18:55:21.90 ID:dutM1mQ+.net]
- うん
前者なら上長に聞けと思った 後者について VisualStudio Community のライセンスを調べたところ、 オープンソースプロジェクトや学習・研究目的ならどんな企業も問題ないが、 相談のケースはクローズドソースと思うので、以下の条件になるはず ・一般企業なら5ユーザーまで ・大企業(250台PCを所有、または売上100万ドル)なら、使用不可
- 171 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 19:23:31.03 ID:iKNLzo07.net]
- VS Express2015なら無料で使用できますね
あとVS Codeを使うことも可能だが、WPFを開発って結構苦行かもしれんね
- 172 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 19:31:36.01 ID:gHWgGxDB.net]
- メモ帳とかでソース書いてWindowsにプリインストールのcsc.exeでコンパイルした場合はVSのライセンスっていらないのかな?
スレチだけど
- 173 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 19:43:46.22 ID:kNKAj5df.net]
- 質問の仕方が悪かったですね
すみません テキストエディタでpowershellのコードを書き、その中で.NETのFormオブジェクト達を呼び出してGUIを作ります そのときに、powershellや.NETの商用ライセンス的なものが必要なのか知りたかったです よろしくお願いします
- 174 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 19:52:03.41 ID:dutM1mQ+.net]
- まさかの第三
・(実行環境の)商用ライセンス だった
- 175 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 21:22:12.30 ID:51hU7+bN.net]
- しかもWPFですらない可能性も出てきた
- 176 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 22:12:25.81 ID:D/nGT1NT.net]
- OSSなんだしいらないんじゃね?(適当)
社内用ならそんなシビアに調査しなくていいんじゃね?って気もするけど超大手とかだとやっぱしっかりしらべるのかね? 超大手なら周りなり法務なりに聞けで済むか
- 177 名前:デフォルトの名無しさん mailto:sage [2019/06/03(月) 22:30:23.86 ID:/fVOuCWc.net]
- >>163
小規模企業でも大企業からの委託案件だとNG
- 178 名前:デフォルトの名無しさん mailto:sage [2019/06/04(火) 07:11:16.82 ID:vCNf4oK2.net]
- >>170
「自社利用」な
- 179 名前:デフォルトの名無しさん mailto:sage [2019/06/04(火) 11:36:40.38 ID:K/ci/E6x.net]
- cointoss.hatenablog.com/entry/2017/02/21/121209
上を参考にexeにdllをマージしたのですが Prism.dll、Prism.Unity.Wpf.dll、Prism.Wpf.dllは exeのフォルダに置いていないと起動できません。 他のdllは削除しても起動できます。 なにか不足していることがあるのでしょうか?
- 180 名前:デフォルトの名無しさん [2019/06/06(木) 03:11:15.75 ID:Q2PRQ2hH.net]
- >>166
不要
- 181 名前:デフォルトの名無しさん mailto:sage [2019/06/12(水) 06:39:45.37 ID:6mE/3wpu.net]
- WPF技術者探しても一人も見つからないあるよ。保守できないあるよ。
- 182 名前:デフォルトの名無しさん mailto:sage [2019/06/12(水) 08:15:06.43 ID:1sqooHn/.net]
- お前がメンテナになるんだよ
- 183 名前:デフォルトの名無しさん mailto:sage [2019/06/12(水) 08:57:44.10 ID:gBdzPl5F.net]
- 金出しゃいくらでも居るよ
技術者を安いおちんぎんでこき使わないで
- 184 名前:デフォルトの名無しさん mailto:sage [2019/06/12(水) 17:09:04.38 ID:lPa5yFg1.net]
- 技術者不足なのか足りてるのか分からん業界だ
- 185 名前:デフォルトの名無しさん mailto:sage [2019/06/13(木) 20:13:48.97 ID:Qp/i0hmX.net]
- core3いいじゃん
これで少し手直ししたらlinuxにwpfもっていけるってことなのかい
- 186 名前:デフォルトの名無しさん mailto:sage [2019/06/13(木) 20:59:16.46 ID:vbUZdfMk.net]
- 残念ながらWPFやWinFormsは.NET CoreでありながらWin限定
WPFは大部分がC++/CLIで書かれているしWindows APIに依存しまくってるから、 まずはそれを全てポータブルな形に再実装しなければならない 百人月クラスの壮大なプロジェクトだ
- 187 名前:デフォルトの名無しさん mailto:sage [2019/06/13(木) 21:15:12.81 ID:sfQNEli4.net]
- 100人月で済むならやりゃいいじゃん
壮大なプロジェクトって少なくとも1桁違うやろ
- 188 名前: mailto:sage [2019/06/13(木) 21:31:32.83 ID:RglcOoNZ.net]
- >>180
一桁はおろか、二桁=1万人月くらいは必要じゃないかな…
- 189 名前:デフォルトの名無しさん mailto:sage [2019/06/13(木) 21:32:10.18 ID:09qLCJE0.net]
- MS社員の100人月ならドカタのサグラダファミリアだな
- 190 名前:デフォルトの名無しさん mailto:sage [2019/06/13(木) 21:41:06.34 ID:Br82W2pC.net]
- そもそもポータブルなGUIに無理がある
swingの様になりたいのか
- 191 名前:デフォルトの名無しさん mailto:sage [2019/06/13(木) 22:01:08.10 ID:k5DFsQwe.net]
- C++/CLIって久しぶりに聞きましたね
もう聞くことはないと思ってた
- 192 名前:デフォルトの名無しさん mailto:sage [2019/06/13(木) 23:20:07.43 ID:sfQNEli4.net]
- そもそもWPFなんだからWindows限定でよくね?
- 193 名前:デフォルトの名無しさん mailto:sage [2019/06/13(木) 23:25:38.96 ID:CND6SLBs.net]
- WPFはフルスクラッチでUIを描画してるから、アーキテクチャ的にはむしろWin限定にするほうが不自然
- 194 名前:デフォルトの名無しさん mailto:sage [2019/06/14(金) 21:47:31.30 ID:nRSl3ZvU.net]
- >>179
そうなん… Win専用ならCoreにしても… C++/CLIはたまに使う
- 195 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 09:19:09.60 ID:Ga3aXpPN.net]
- Chromium+AspNetCore+Blazor
次世代の.NET系デスクトップフレームワークはこうなる
- 196 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 09:27:21.19 ID:6PSH/Imj.net]
- 過剰なクライアントサイド志向に対する最近の揺り戻しのムードの中で、サーバーサイドBlazorだけならワンチャンあったかもね
Blazorを正式なプロダクトとして推していくと決めた時点で、クライアントBlazorは廃止してサーバーサイド一本にするべきだった Blazorといえばwasmのオモチャというイメージを払拭できない限り普及はない
- 197 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 09:42:50.74 ID:Ga3aXpPN.net]
- SSRはもとはクライアントでしか動かないjsが鯖で動くすごいって技術
だからjs以外の言語だとSSRはなにも真新しさはない古典的な技術だ なのでBlazorでサーバーサイドをやる意味はない(api、MVC、Pagesで十分) クライアントで.NETを動かすことに意味がある
- 198 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 09:49:12.97 ID:p9QrGiGS.net]
- Blectron的なやつのことを言いたい?
- 199 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 10:13:25.41 ID:Ga3aXpPN.net]
- >>191
Blectronは知らないがElectronの.NET版という意味ならまさにそうだな ググったらもうすでに同じ発想で取り組んでるOSSユーザーが少なからず居たから もう暫くしたらBlazorでクロスプラットフォームデスクトップアプリが実用
- 200 名前:化するんじゃないかな []
- [ここ壊れてます]
- 201 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 10:33:45.61 ID:p9QrGiGS.net]
- >>192
Blectlonでググったかい?
- 202 名前:デフォルトの名無しさん [2019/06/15(土) 15:17:17.19 ID:xT5QU/B2.net]
- 新卒で入った会社(5年前)がWinFormだったな。今も多分そう。
今はWindows用のコード書くことがなくなってしまったが、 あれはあれで生産性高いと思うわ。業務アプリだとデザイン性いらないし
- 203 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 15:30:24.49 ID:RNWBuCRz.net]
- WPFも主ターゲットは業務向けだけど、日本のITドカタが業務システムと聞いてイメージするオーダーメイドなシステムとはだいぶ違う
米国では早くからシステムのパッケージ化が進んでいて、 パッケージベン
- 204 名前:_ーにとっては一つ作れば多くの客に売れるから多くの開発リソースを投資してリッチなUIを作ることができる
そういう事情を踏まえて誕生したのがWPFなんだよ 日本でも近年は脱オーダーメイドが進みつつあるけど、既にリッチクライアントの時代が終わってSaaSになっちゃったからWPFの出番は来なかった [] - [ここ壊れてます]
- 205 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 16:35:30.94 ID:hWID9DJj.net]
- 日本の業務アプリには御託並べるWPFプログラマは不要。
黙々と作業に徹するWinformコーダーが居ればよい。
- 206 名前:デフォルトの名無しさん mailto:sage [2019/06/15(土) 17:08:33.15 ID:RjknjEo7.net]
- 業務にアクティブ要素、動的要素なんていらないからな。
コントロール全部並べてあって使えないところは無効化されてるだけでいい。 状況によって位置が変わるのをすげー嫌がる。操作ミスが増えるだけ。
- 207 名前:デフォルトの名無しさん [2019/06/16(日) 01:46:25.54 ID:AXRRwyW/.net]
- バインドしてみたけど、まったくメリットが分からん...
marikooota.hatenablog.com/entry/2017/05/30/002059 とか、↓の方が簡単だと思う。 -- xsml -- <StackPanel> <TextBox x:Name="tb1"/> <Button Click="btn_Click">Count Up!</Button> </StackPanel> -- cs -- int count = 0; private void btn_Click(object sender, RoutedEventArgs e) { count++; tb1.Text = count.ToString(); } 誰か、バインドのメリットをアホな俺に教えて下さい...
- 208 名前:デフォルトの名無しさん [2019/06/16(日) 01:47:53.07 ID:AXRRwyW/.net]
- >>198
空白文字消されるんですね; 読みにくくてすみません💦
- 209 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 03:49:25.26 ID:3DdY3936.net]
- バインドの最大なデメリットは天才と無職しか使いこなせないこと。
- 210 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 09:03:33.98 ID:muf2QdNo.net]
- >>198
あなたの作りたいツールがボタン押したら カウントアップするだけの機能だけでよいなら理解する必要はない でもたいていはそのテキストボックスには外部ファイルを読み取ったり、 データベースからデータをとってきて、集計したり加工した値が入るはずだ その時にはbtn_clickのコードは肥大化して容易に1,000行を超える その時には関数に切り分けたりすることを覚えるだろう さらに進んでいくと、画面を凝ったデザインにしたくなったりユーザーの入力値を検証したくなったりする そうすると画面のデザインを少し変えただけなのに うまく動かなくなったりコンパイルエラーを起こすようになってきた そこで画面は画面だけにしたほうが改修がしやすかったり、 デザインの得意な人にそれを任せることができるようになってくる システムは機能や役割ごとに適切に分離していたほうが将来的にメリットがあり、 バインディングはそれを実現する仕組みの一つだ
- 211 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:07:34.99 ID:X9An2SCt.net]
- 三行で
- 212 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:11:25.65 ID:X9An2SCt.net]
- バインディングは逆に手順が可視化されないのが弱点
よくわからないけど動いていればいいならバインディング そこまでしっかり自分で制御したいなら通常のコードで
- 213 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:14:27.54 ID:yX0oMZwq.net]
- 手順の管理は量が増えると難しくなってスケールしないから
そもそも手順気にしなくていいように宣言的プログラミングしようぜってなったんだよ ちっぽけなアプリ作るだけなら好きにすればいいさ
- 214 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:14:39.65 ID:9Kn5GUQ/.net]
- ドヤ顔したいならバインディング
- 215 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:22:58.12 ID:X9An2SCt.net]
- バインディングにも弱点がある
相互関係で値が決まるときにその相互関係を結局人間が追わな
- 216 名前:ュてはならない場合が出てくる
その時に非常にバグが取りにくい それでFBはMVVMを捨てた [] - [ここ壊れてます]
- 217 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:24:41.66 ID:X9An2SCt.net]
- スケールと言うけど小規模ならバインディングで対応可能だろうけど
それを超えるとまあ無理だろう
- 218 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:30:24.72 ID:yX0oMZwq.net]
- 手続き的だと非同期処理も非常に弱い
今の時代非同期が無いということはまずない 非同期処理ではやはり宣言的プログラミングが強い 手順すなわち処理の順番に依存すると非同期処理は急激に難しくなる
- 219 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:33:01.62 ID:X9An2SCt.net]
- 従来型はスケールしないと言うけど世間の大規模プロジェクトはほぼ100%
従来型(手続き型)で作られているだろう 手続きが書いてあればツールと人手を使えば解消のめどはつく 宣言的な組み合わせの場合はロジックをすべて脳に入れて考えなくてはならないので 大きくなればなるほど人間が追いつかないと思う 逆にバインディングで大規模プロジェクトが今現在も使われているとは思えない
- 220 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:34:56.59 ID:X9An2SCt.net]
- 人間が追い切れない場合は実行してデバッグしかないけど
それがまたバインディングの場合はやりにくい
- 221 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 10:36:05.79 ID:yX0oMZwq.net]
- >>209
スケールしないのを金と人数に物を言わせて無理やり作った それが従来型の大規模開発だな スケールはしてないんだよ無理してるだけで 脳に入れなきゃいけないことが多いのは手続き的なほう なぜなら手続==処理の順番に結果が依存するから 長い処理を扱うときに最初から最後まで手順を頭に入れてなければいけない
- 222 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 11:36:30.06 ID:0yrhG5qH.net]
- 画面単位で独立したロジックを記述してDBのみ共有する従来のスタイルなら余裕でスケールするよ
WPFは頭のいいアーキテクトがトップダウンでスマートな設計をするスタイルには適している MSのプロダクトは基本そうやって作られている 一方、従来のバカでもスケールするスタイルで作ろうとするとWPFはフリーダムすぎて無茶苦茶になる
- 223 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 12:48:19.67 ID:BOJP8Jll.net]
- そういうけどできてから10年以上立つけど
そんなに大規模のプロジェクトでWPFが使われてるような形跡がない webでもMVVMは中規模から小規模向けで大きくなると使い物にならないという評価
- 224 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 12:56:44.07 ID:35twkBI3.net]
- >>213
っVisual Studio
- 225 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 12:59:52.96 ID:6qqET37p.net]
- 大規模で使い物にならなくなるのは、学習できない月収14万円のコーダーばっか集めてるからやろ
- 226 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 13:00:12.87 ID:Fx7TO0Mh.net]
- 大規模な画面アプリなんてあんの?
普通サブシステム単位とかで実装別れると思うけど
- 227 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 13:32:34.96 ID:yX0oMZwq.net]
- >>212
それは別の意味でスケールしない DB処理にビジネスロジックが蔓延してメンテナンスコストが跳ね上がる 実行時パフォーマンスも悪い
- 228 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 14:00:08.42 ID:uPzprWkd.net]
- >>216
サブシステムで数百画面とかのシステムもありますので…
- 229 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 14:11:05.99 ID:UANb65jp.net]
- DBとはバインドするのは良くて、画面とのバインドは良くないという論調?
大規模な画面改修を想定しない限り、画面要素のバインドは良い事無いと思う。 作り変えるのが前提のプロトタイプならメリット有るだろうね。 レジに支払い方法追加するみたいに、旧来のロジックはそのままでレイアウトが変わるならバインディングも有効だろうね。
- 230 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 16:05:42.44 ID:X8m3/+hI.net]
- >>219
one-way binding(射影)なら良いと思う。 個人的には当初MVVMの利点と言われていた「View(UI)のすげ替えが楽」なんてのは幻想で、 「自動テストが書きやすい(手動によるE2Eテストを減
- 231 名前:らせる)」というほうに重きをおくべきだと。 []
- [ここ壊れてます]
- 232 名前:デフォルトの名無しさん mailto:sage [2019/06/16(日) 16:06:40.32 ID:6qqET37p.net]
- >>220
確かにテストはめっちゃ楽だわ
|

|