X



WPF(.NET4.x, .NET Core) GUIプログラミング Part23
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
垢版 |
2019/05/16(木) 07:52:32.39ID:8fOYIMEO
Windows Presentation Frameworkについて語るスレ。

前スレ
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part22
https://mevius.5ch.net/test/read.cgi/tech/1513175747/

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

コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
http://ideone.com/
0002デフォルトの名無しさん
垢版 |
2019/05/16(木) 12:11:07.29ID:7Bq3MhCf
2
0008デフォルトの名無しさん
垢版 |
2019/05/17(金) 16:23:31.74ID:GiXqVPbm
openfiledialogとsystem.diagnostics.process.startの違いはなんでしょうか
openfiledialogのほうがエクスプローラが開かなかったですが
実現したいのは、フォルダを開いてファイルを選択するというものです

var dialog = new OpenFileDialog();
dialog.InitialDirectory = @"C:";

System.Diagnostics.Process.Start("explorer.exe",@"c:");
0010デフォルトの名無しさん
垢版 |
2019/05/17(金) 17:40:31.39ID:GiXqVPbm
wpfでフォルダのファイルを、リストビューなどで表示するには何を使用するんでしょうか
0012デフォルトの名無しさん
垢版 |
2019/05/17(金) 18:44:46.93ID:GiXqVPbm
https://dobon.net/vb/dotnet/file/getfiles.html
wpfでaddrangeが出てこないのですが、なぜでしょうか
addしか出てきません
addrangeはSystem.Collections.Generic;に含まれるそうですが、これはきちんと記述しています


>>11
表示するコントロールはそうなんですが、一覧を取得する方法を調べてました
0014デフォルトの名無しさん
垢版 |
2019/05/17(金) 19:24:12.06ID:GiXqVPbm
>>13
wpfじゃないんですかね
だとしたら何を使うんでしょうか

マイクロソフトのリファレンスはC#用とwpf用わかれてるわけではないんですよね?
0017デフォルトの名無しさん
垢版 |
2019/05/17(金) 20:04:39.86ID:efANPUq5
もしくは
foreach ( var file in Directory.EnumerateFiles( @"C:\Windows" ) )
{
this.ListBox.Items.Add( file );
}
0018デフォルトの名無しさん
垢版 |
2019/05/17(金) 20:07:19.28ID:R147Wd4Y
>>14
リファレンスは分かれてるというか、違う。名前空間が。
datagrid にしても、forms で使用されているコントロールとwpfで使用されている物とは違う。
webにあるサンプルなど、どちらのコードかってのは、明記されてない限り読み込まないとわからない
0019デフォルトの名無しさん
垢版 |
2019/05/17(金) 20:23:25.50ID:GiXqVPbm
for (int i = 0;i< files.Length;i++) {
listbox_right.Items.Add(files[i]);

}

>>16,17
これでいけました
ありがとうございます
addrangeはないみたいなので、ループしないと駄目なんですね

>>18
名前空間で判断するしかない感じですか
formと共通してるものもあれば、違うものもあるって感じで、ごっちゃになってて少し分かりづらいですね
0020デフォルトの名無しさん
垢版 |
2019/05/18(土) 12:57:14.57ID:vGWC+tVZ
>>19
>addrangeはないみたいなので、ループしないと駄目なんですね

違うんじゃないかな。あなたが、>>16の手段使わずに、>>17の手段つかった
からじゃないの?
0021デフォルトの名無しさん
垢版 |
2019/05/18(土) 19:02:24.50ID:M6x4drXG
wpfでレイアウトしたいです
よくある、左、中央、右というペインを作りたいです
単純にグリッドを3つ並べるだけでは駄目なようですが、良いコントロールはありますか?

>>20
そうかもしれません、、、
0022デフォルトの名無しさん
垢版 |
2019/05/18(土) 19:28:57.10ID:vGWC+tVZ
>>21
先の質問についてだけど、データバインドを理解していないんじゃないだろうか
WPF使うんだったら、データバインド使わないと損ですよ。
0023デフォルトの名無しさん
垢版 |
2019/05/18(土) 19:32:47.57ID:GtOtQ7tS
>>21
レスであるように、先にバインド覚えたほうがいいよ。いっぱいコントロール自作することになるから
0025デフォルトの名無しさん
垢版 |
2019/05/18(土) 20:10:22.57ID:M6x4drXG
>>24
gridですか
formにあったsplitcontainerみたいなのがなくなっていたんでわからなかったです

>>22,23
知らなかったので。今バインドってのをやってみました
Xamlに変数をバインドしておいて、プログラム側でそれを書き換えるというイメージでいいんですか?
<Button Content="{Binding X}" />
みたいな感じですね
解説が難しいのでなんのメリットがあるのかイマイチわかりませんが、Xaml側のX変数が複数だった場合、手作業で何箇所も書き直すより効率的だねってことですかね。または、フォームを複数作った場合、別のフォームでも数値を共有できたり。
0027デフォルトの名無しさん
垢版 |
2019/05/18(土) 20:46:12.34ID:M6x4drXG
忘れます
もともとwinformのソフトの文字がちっちゃくて、不満だったから自分でつくろうと思ってるので
あれって、拡大とか出来ないんですね
0032デフォルトの名無しさん
垢版 |
2019/05/19(日) 10:06:41.73ID:A9JEys8J
>>31
wpfだとグリッドが一般的なやり方だと思っていたからです
どういうセオリーがあるのかまだわかっていません
0035デフォルトの名無しさん
垢版 |
2019/05/19(日) 11:06:57.27ID:A9JEys8J
>>33
読みました
エクスプローラのような3ペインにどれが適切かわかりませんから、今ひとつずつやってます
0036デフォルトの名無しさん
垢版 |
2019/05/19(日) 11:51:22.73ID:A9JEys8J
今stackpanelを使っていますが、エクスプローラのように左右が細長くて、
20% 60% 20%というふうに出来ますか?子要素に何を指定するといいですか?%指定は出来ないようです。
絶対値を指定すると全画面にしたときにレイアウトが崩れるから駄目ですよね
0041デフォルトの名無しさん
垢版 |
2019/05/19(日) 16:35:16.33ID:A9JEys8J
>>38
どうも 自動で境界線にフィットしてくれるんですねこれ
<StackPanel Orientation="Horizontal">
<Button Content="hoge" />
<GridSplitter HorizontalAlignment="Stretch" Width="5"/>
<Button Content="hoge" />
<Button Content="hoge" />
</StackPanel>
でもこれやっても動作しないのはなぜでしょうか?
ボタンも画面いっぱいまで広がりません。
0044デフォルトの名無しさん
垢版 |
2019/05/19(日) 17:40:18.44ID:9qpO3YcP
>>36
>%指定は出来ないようです

おいおい勝手に決めちゃうな、ちゃんとできるよ。
単に2:6:2になる値にすればいいだけ。
0046デフォルトの名無しさん
垢版 |
2019/05/19(日) 19:51:56.06ID:A9JEys8J
mvvmという概念がよくわからないのですが、
mはモデル、vはビュー、vmはビューモデルですよね
wpfのプロジェクトでいうと、ビューはxamlで、vmはmainwindow.xaml.cs
mはビューに表示する数値を処理する関数を保存しておくファイル(自分で作る?)という感じでしょうかね
超絶簡単なチュートはないでしょうか?どこも説明が難しいです。
0047デフォルトの名無しさん
垢版 |
2019/05/19(日) 19:57:41.44ID:1wu/sFtt
MVVMなんて最初は意識しないでformsみたいにxaml.csにそのまま処理書くのでいいよ
0051デフォルトの名無しさん
垢版 |
2019/05/19(日) 21:15:35.77ID:ugKit8lS
>>50
コミュニティに頼らずに自前でそこそこサポートするのが売りだったのに、この辺りから放棄し始めたんだよな
0052デフォルトの名無しさん
垢版 |
2019/05/20(月) 05:06:11.18ID:GmmrlA8O
wpfって将来性がないってことですか?formの代替えって他にあるんでしょうか?
0054デフォルトの名無しさん
垢版 |
2019/05/20(月) 06:47:23.90ID:SII4uEKR
極論するとWindows上で動くアプリケーション自体が下火だからなぁ
PC上のローカルなリソースを触らない限りはJavaScriptのSPAで書いとけばWindows以外でもそのまま動くし
MVVMもVueやAngularで始めるほうが理解しやすいように思えるし
0055デフォルトの名無しさん
垢版 |
2019/05/20(月) 07:05:09.37ID:GmmrlA8O
想像ですけど、jsベースだとローカルでもwebでも行けるから便利ということですよね
v
0056デフォルトの名無しさん
垢版 |
2019/05/20(月) 11:49:59.73ID:GmmrlA8O
機能からgridレイアウトをやって、ある程度形はデキたんですが、縦に目一杯表示されません。
調べるとverticalalignmentをストレッチにすればいいということなんですが、駄目です
親も子もストレッチかけてるんですが、どこが駄目でしょうか。

ウインドウのサイズがデフォルトのサイズの場合は100%までストレッチされますが、全画面表示まで拡大すると、stackpanel_innerにデフォルトのサイズが適用されます。

https://ideone.com/3RZafi
0057デフォルトの名無しさん
垢版 |
2019/05/20(月) 12:18:39.68ID:UpaSmFYv
>>56
stackpanel_outerはDockPanelに変更して、MenuにDockPanel.Dock="Top"追加
stackpanel_innnerは無くすか、StackPanel以外(DockPanel/Grid等)にする
0058デフォルトの名無しさん
垢版 |
2019/05/20(月) 15:28:14.16ID:GmmrlA8O
↑どうもデキたです
stackpanelがなぜ駄目なんでしょうか
htmlのインライン要素のような扱いなんでしょうか。
0059デフォルトの名無しさん
垢版 |
2019/05/20(月) 16:43:30.51ID:03iVSpcv
>>52
以前は、ストアに対応していない(しない)などの方向から
WPF終了説が言われていたのだけど、それが変化してきたようで、
WPFの利用がもっと増加する可能性も出てきたみたい
ここ数か月の発表に注意してみるといいかもしれない。
デスクトップアプリが見直されてきている流れもあるので。
0060デフォルトの名無しさん
垢版 |
2019/05/20(月) 16:54:53.51ID:7rlywuEl
MSが一度見限ったプロダクトを見直した例はない
時間は有限なんだからこういうのは悪い方に考えたほうがいいよ
0061デフォルトの名無しさん
垢版 |
2019/05/20(月) 23:12:06.78ID:F98TWhut
「見限った」「見直した」って具体的にどういうことを指しているんだろう。
0062デフォルトの名無しさん
垢版 |
2019/05/20(月) 23:31:21.89ID:ouD9VRE7
見限った → メンテナンスモードに切り替えた
見直した → 再度アクティブな開発を始めた
かな
0065デフォルトの名無しさん
垢版 |
2019/05/21(火) 00:41:18.11ID:TRpqXUmi
>>64
>UWPだけがアクティブ
WPFはともかく、MSのこの数か月見てた方が良いよ
0066デフォルトの名無しさん
垢版 |
2019/05/21(火) 00:59:54.43ID:KXg6s5t+
>>65
Build 2019でCore対応以外になんかWPF/WinFormsの新しい話題あったっけ?
MSを信じるのは勝手だけど、本当にそれが自分にとってプラスになるのかは一度立ち止まってよく考えてみた方がいいよ
君自身のキャリアの問題だ
0067デフォルトの名無しさん
垢版 |
2019/05/21(火) 05:16:38.24ID:Ht8dWCV6
結局、c++が普遍的なんでしょうか。
やったことはないですが、個人で使うものではないとか。
0069デフォルトの名無しさん
垢版 |
2019/05/21(火) 07:43:54.26ID:J5RbKPKD
>>68
そう思う?移植完了の後はロードマップ真っ白なのに?
ちなみにdotnet/wpfは4人くらいで作業していて、必要最小限の単純な移植を超える仕事は厳しく禁じられているようだ
0070デフォルトの名無しさん
垢版 |
2019/05/21(火) 08:07:51.81ID:jKYjm96N
>>65
core対応でアクティブだと言えるならWPFだけじゃなくwin formsも
アクティブと言うことになるけど…

アクティブじゃないよ
もう開発してないよ
0071デフォルトの名無しさん
垢版 |
2019/05/21(火) 09:04:23.15ID:TRpqXUmi
一度捨てたと思ったデスクトップの必要性が再認識されてきている。
これから夏にかけxaml islandの話題がMSより増えて行くだろうから
まずはそちらを気にした方が良い。デスクトップもUWPだけで行きま
しょうというMSの方向性が大きく変化したことは確かだから。
UWPのコントロールもそれぞれが共有できる方向に変化してきたので。
ただし、FORMに関してのxaml ilandはどうやるの?という疑問はある。
とはいえ、WPFが新たに拡張されてという話とはちょい異なる。
この数か月のマイクロソフトの発表をみましょ。
0073デフォルトの名無しさん
垢版 |
2019/05/21(火) 12:54:23.99ID:JEq70M1l
MSレベルで4人雇ったら、年5000万位かかるか
0081デフォルトの名無しさん
垢版 |
2019/05/21(火) 23:36:21.83ID:lCMEKqdP
この中でvb.net派の人いるかな....
新しいプロジェクト作成するたびににC#に移行しようと思っても、やっぱりVB選んでしまう...
おかげでC#のサンプルでも即座にVBに変換できるようになったわ
0084デフォルトの名無しさん
垢版 |
2019/05/24(金) 23:18:25.57ID:a/+LqS67
別にVB.NETでもかまわんと思うけどね
C#を推奨したい日本マイクロソフトのバイアスがずっと続いてるけど、ちゃんと他人にも分かる様なコード書けば問題無い
まあ、それがVBプログラマーの悪い所だが
0085デフォルトの名無しさん
垢版 |
2019/05/25(土) 00:17:27.23ID:9Yazqsa/
VB.NETでラムダを多用するようなソースコードを書くと見づらくてたまらないんだよな

まあ一人で書いてるソースであれば好きにすればいいんじゃないとも思うけど
引き継ぎや担当者アサインのことを考えるとちょっとなあ
若手・未経験者に今更VB.NETを覚えさせるのも後ろめたいというか倫理的に問題があるし
かといって「VB.NET出来ます」っていう人のスキルって大抵VisualStudio2005〜2008あたりで止まってる人が多いし
新しめの(VS2015/2017あたりの)文法を使うならそれこそC#で書くほうがスマートだし
0086デフォルトの名無しさん
垢版 |
2019/05/25(土) 00:26:30.22ID:1AJ3YN9O
俺は基本的にはVB派だが、ラムダ式だけは何とかならんかったのかと思うわ

あとヌル合体演算子はよ
0088デフォルトの名無しさん
垢版 |
2019/05/25(土) 04:17:54.71ID:WHAQulv7
マイクロソフトが好んでやりたいというより、VBで行きたいという声がスゲー多いためにそうせざるを得ないということだろな。これが人間社会ちゅうものなんだろう。
0089デフォルトの名無しさん
垢版 |
2019/05/25(土) 04:42:40.16ID:P9kv6fd4
リストボックスに画像表示するにはなんの関数を使うのか教えてください
ヒントだけでいいです

String[] img = System.IO.Directory.GetFileSystemEntries(
@" C: \Users\ワイ\Desktop"
);
//Directory.GetFileSystemEntries Method
for (int i = 0;i< files.Length;i++) {
listbox_right.Items.Add(img[i]);
これだとテキスト表示になります
そもそもlistboxはテキストのみなんですかね。
0090デフォルトの名無しさん
垢版 |
2019/05/25(土) 05:02:01.28ID:lXRt6Qhw
>>89
WPFの場合はコードはそれでいい。
XAML側でListBoxのItemTemplateを定義し、ImageのSourceプロパティに{Binding}でバインドする。
何を言っているのかまるで意味がわからないと思うが、それがWPFなんだよね。
https://docs.microsoft.com/ja-jp/dotnet/framework/wpf/data/data-templating-overview?view=netframework-4.8
まずはこの辺りのドキュメントを完全に理解できるようにならないと話にならない。
はっきり言って、今更こんな複雑怪奇な終わったフレームワークを無理に覚える価値はない。時間を無駄にする前にWPFは止めなさい。
0091デフォルトの名無しさん
垢版 |
2019/05/25(土) 05:12:14.62ID:P9kv6fd4
じゃあ代わりに何をすればいいのですか?electronはメモリ食うという噂が
vs codeは実際そうです
0092デフォルトの名無しさん
垢版 |
2019/05/25(土) 05:55:05.76ID:EXrLD8QH
>>91
Windowsのデスクトップアプリは迷走しまくっている
UWPも先行きが怪しくなってきて、もはやMS自身も今後どれを推奨するか明確に決まっていないという無茶苦茶な状況だ
・スキルの汎用性を重視する : いっそWebへ乗り換えるか、ElectronでWebベースの技術で作る
・学習コストを最小化する : WinForms
なるべく時間を無駄にしないためには今ならこのどちらかだろうな
0094デフォルトの名無しさん
垢版 |
2019/05/25(土) 07:53:36.86ID:H3aX7Y36
>>92
横からですが、参考になりました。
いろいろググってて数年前の情報で、「新規開発で WPF を選択しない理由はない」みたいなことが書いてあって、
調べ始めたところでした。
ざっと読んだ感じ、昔の MFC や OWL の Doc / View みたいな感じ?
0095デフォルトの名無しさん
垢版 |
2019/05/25(土) 08:16:31.16ID:iifAFaPR
>>93
そりゃ作れるけど、ゲームならUnity使ったほうがいいんじゃないか?
ゲーム用の開発スイートだからゲーム本体はもちろんだが、簡単なGUIアプリも十分に作れる
あと個人的にアドバイスさせてもらうと、ゲームはまずゲーム本体から作った方がいい
俺も初心者の頃に同じことをやろうとしたことがあるから分かるが、ツールから作ろうとすると結局後で無駄になる
エディタなんてexcelで十分
0096デフォルトの名無しさん
垢版 |
2019/05/25(土) 09:04:48.17ID:P9kv6fd4
勉強も兼ねてるので1から作ろうとしています
2d専用のウルフエディタみたいなものを目指してますね

electronだと重いみたいなことが言われますが、2dなら問題ないと思います
0097デフォルトの名無しさん
垢版 |
2019/05/25(土) 15:17:08.94ID:P9kv6fd4
バインディングの超簡単なサンプルってないですか?
テキストボックスに文字をバインドするという仕組みなんですが。
<TextBox Name="textbox_center" Text="{Binding x}"/>
プログラム側でのx変数への文字の指定方法が見つかりませンでした

また、そもそもバインドとは、タグのプロパティに変数を指定する仕組みということでしょうか?

また、set ; getみたいなやつの意味がわからないです
超簡単なサンプルのページ教えてください
0099デフォルトの名無しさん
垢版 |
2019/05/25(土) 15:28:35.22ID:WHAQulv7
WPF binding
で検索するといっぱい出てくるよ
0101デフォルトの名無しさん
垢版 |
2019/05/25(土) 17:09:54.90ID:P9kv6fd4
バインディングが効かなかったのはTextBoxコントロールを使っていたからですね
TextBlockにしたら効いたのですが、なぜでしょうか?
どちらも単なるテキストの表示です
0102デフォルトの名無しさん
垢版 |
2019/05/25(土) 17:17:51.87ID:MUGP4AlX
Electron は、Chromium(ブラウザ) + Node.js(サーバー)だから、300MB もある!

ツクールなども、Node.js か、Ruby on Rails じゃないの?
0103デフォルトの名無しさん
垢版 |
2019/05/25(土) 17:51:36.28ID:UKk+E4BI
そもそもデスクトップアプリ作るのにWPFがいまいちだからElectronって、後退してるよな。
0105デフォルトの名無しさん
垢版 |
2019/05/25(土) 18:58:35.19ID:QpbNX3PX
C#経験が評価されて今度ASP.NETの案件に参画するかもしれん
同じC#だが、覚えるのキツイな
だがついにデスクトップアプリマンの俺がデスクトップアプリから脱皮する時がきたわ
windowsサーバーだから個人開発では使えないし潰し効かないのが難点だがな・・・
0107デフォルトの名無しさん
垢版 |
2019/05/25(土) 19:43:52.34ID:QpbNX3PX
>>106
そうなんだ
まだASP.NET MVCの基本しか勉強してないから知らなかったよ
個人でLinuxサーバー構築してずっとパソコンつけっぱなしで扇風機でもつけて冷やしとけば良いのか?
しかしインフラの知識が少し弱いし、それだとPC一台専用で買って常に動かしとかないといけないよな?現実的じゃないわ
あとアーキテクチャがMVCの方とどの程度違うのかによるな
アーキテクチャが全然違ったらまたかなりの勉強が必要になるし
0108デフォルトの名無しさん
垢版 |
2019/05/25(土) 19:53:56.15ID:QpbNX3PX
あ、違うか
linuxのレンタルサーバーに実行環境をデプロイして自分で環境構築しちゃえばいいのか
レンタルサーバーって最初からApacheとかは入ってるから自分で環境構築という発想がなかったわ
いけそうな気がするな、うん
0109デフォルトの名無しさん
垢版 |
2019/05/25(土) 20:24:09.29ID:Tic4GHY3
>>107-108
VMwareなりVirtualBoxとか使えばいいだけだろ
メモリー8GB程度あればCentOSの最小インストールなら普通に動くし
0110デフォルトの名無しさん
垢版 |
2019/05/25(土) 20:36:18.47ID:6cjkDEDO
>>109
常時起動ならレンタルサーバ借りたほうがいいよ
てかVMwareにLinux入れるくらいだったらBash on Ubuntu on Windowsでええやろ
0112デフォルトの名無しさん
垢版 |
2019/05/25(土) 21:19:40.28ID:P9kv6fd4
バインドについて勉強してます
チュート試してみたのですが、うまく動かないので間違いの指摘をお願いします
https://ideone.com/Dgu2QJ

https://araramistudio.jimdo.com/2016/11/25/wpf%E3%81%AE%E3%83%90%E3%82%A4%E3%83%B3%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0-%E3%81%9D%E3%81%AE%EF%BC%91/

参考ページです



また、viewmodelの役割を大雑把に言うと何になるでしょうか?
仲介役ということで、上のコードでいえばclass1.csの部分かと思います。
viewとmodelだけで事足りるような気がするのですが。
0113デフォルトの名無しさん
垢版 |
2019/05/25(土) 21:22:05.45ID:UN9uDEfa
>>110
ケースバイケースだろ
個人開発でテストだけでレンタルサーバーまで借りなくてもいいだろうし小規模ならRaspberry Piとかでもいいし
0116デフォルトの名無しさん
垢版 |
2019/05/26(日) 08:21:06.40ID:7w4cgfO4
UWPの次の将来性のあるフレームワークができるまではWEBで食ってようかな
windowsアプリなんて金にならなさそうだし
0118デフォルトの名無しさん
垢版 |
2019/05/26(日) 15:10:46.67ID:WAmAGMjw
>>116
どちらにしろ、受託じゃたかが知れてる
0120デフォルトの名無しさん
垢版 |
2019/05/26(日) 19:50:11.76ID:KIe0CODm
hoge{get;set;}
これの意味がわからないのですが、超絶シンプルな例ってないんでしょうか?
例えばテキストボックスコントロールのTEXTにhogeという変数をバインドして、
hogeにプログラムないでhoge="文字";などと代入する

その歳の仲介というイメージなのですが、具体的にどういう動きをするんでしょうか
プログラム内で"文字"をgetして、バインドされたhogeにsetする?なんて意味ですか?
0121デフォルトの名無しさん
垢版 |
2019/05/26(日) 19:50:57.04ID:KIe0CODm
要は通常はxamlからhogeの値は参照出来ない
それを許可するための宣言がgetということですかね?
0125デフォルトの名無しさん
垢版 |
2019/05/26(日) 20:15:28.64ID:7w4cgfO4
>>120
君にはプログラミングは無理
肉体労働するといい
0127デフォルトの名無しさん
垢版 |
2019/05/26(日) 20:34:08.79ID:bvJijhhT
基礎からやろう?って何週間も前からいろんな人から散々言われているのにそういうアドバイスは一切無視して延々と質問続けるだけだからね
ツールは当然一生完成しないし技術は大してつかないで終わるよ
0128デフォルトの名無しさん
垢版 |
2019/05/26(日) 22:17:35.93ID:lD8uie1v
>>120
wpfはviewとviewmodelをdatacontextを介してやりとりするんや
例えばmainviewのdatacontextにmainviewmodelクラスを指定した場合、
mainviewmodelクラスのプロパティの値をバインディングすることでviewに表示することができる

c#でもJavaでもプロパティは外部への情報公開を目的としてるから
その意図をそのまま利用しとるだけ

大分ざっくりした説明だけれど、もし全く理解できないのなら前でも誰か言ってたけど、
windows formにするかコードビハインドに書くやり方でまずはやったほうがいい
JavaScriptにもMVVMの概念はあるからそっちから攻めるのもありかもしれない
0131デフォルトの名無しさん
垢版 |
2019/05/27(月) 11:51:22.51ID:JRCNDAml
>>120
自動実装プロパティっていつ使うのって話ならWPFはほぼ関係ない
自動実装プロパティは.netの機能でWPFは.netの一部
というだけの話

これは基礎からやれって話なのか?だけど
今からならwindows formsは勉強しなくていいと言う人もいるし
実際しなくていいだろう
ただWPFの解説書に.netについての解説なんかないよね
1からやる場合こういう.netの知識が曖昧になっても不思議はないと思う
.netは追加機能も多いし巨大すぎる
0132デフォルトの名無しさん
垢版 |
2019/05/27(月) 18:13:11.10ID:g3rj1HTz
> 今からならwindows formsは勉強しなくていいと言う人もいるし
> 実際しなくていいだろう

何を馬鹿なことを言ってるんだw
最近の初心者向け本では逆にwinformsしか説明してない
WPFなんて眼中にない
0133デフォルトの名無しさん
垢版 |
2019/05/27(月) 18:24:54.78ID:Y0xP1Rix
>>132
素人向けだからだろ?
wpfはMVVMとかxamlがくっついてくるから、winformの方が初心者向けなのは当たり前だ
0138デフォルトの名無しさん
垢版 |
2019/05/28(火) 19:02:40.16ID:ZZsS+Znm
xaml islandが出てきて、UWPじゃないとできないという制約が
なくなってきたね。
0140デフォルトの名無しさん
垢版 |
2019/05/28(火) 19:38:30.31ID:MzojxIZT
逆に今後の新規開発や追加開発ではWPFもういらないってことなんだけどな
既存のWPF部分に手を入れざるを得ない場合を除き、常にWindows Runtimeで作る
それが今後のWPFアプリケーションの唯一の正しい作り方だ
0143デフォルトの名無しさん
垢版 |
2019/05/29(水) 09:50:06.92ID:v46ep+GI
>>141
スタープラチナのザワールドだろ

通常はスタープラチナの精密で力強い攻撃で対応して無理なら時を止める
0144デフォルトの名無しさん
垢版 |
2019/05/29(水) 12:19:09.94ID:1hOUMMYr
Double型をバインディングしたTextboxに小数点を入力するとエラーになり問題、Extended Wpf toolkitのDoubleUpDownをTextboxの代わりに使ったらあっさり解決...
今までわざわざstring型でバインディングして数値だけ入力制限したりあれこれしてたのが無駄だったわ
0145デフォルトの名無しさん
垢版 |
2019/06/01(土) 16:43:20.75ID:228VL8j4
Windows API Code Packというのは機能を拡張するものですか?
c#で使用できるんでしょうか?
0151デフォルトの名無しさん
垢版 |
2019/06/02(日) 10:36:47.06ID:VOFsXmY2
>>150
関数の仕様をリファレンスで調べてきて引数と戻り値と動作を読んで、それでも分からないことがあったらそこを具体的に質問すると丁寧に答えてもらえるぞ
0152デフォルトの名無しさん
垢版 |
2019/06/02(日) 10:59:47.73ID:bzcjxT5l
wpf関係ないじゃん
何がC#でなにがwpfかもわかってないんでしょ
散々チュートリアルやろ?って忠告を無視して延々と同じような質問繰り返してりゃ答える側も馬鹿らしくなるよ
0154デフォルトの名無しさん
垢版 |
2019/06/02(日) 21:42:55.58ID:1gGjmj25
画像ってのがサムネイルのことならWindows API Code Packで出来るんだが
もう少し自分で調べたほうが良いと思うよ
0155デフォルトの名無しさん
垢版 |
2019/06/02(日) 22:13:49.95ID:FzL8t6js
Windows API Code PackはForkがいくつもあってどれを使えばいいのか分からないな。
ライセンスも元のMSのページが消えてて良く分からんし。
0156デフォルトの名無しさん
垢版 |
2019/06/02(日) 23:35:24.11ID:1gGjmj25
ただ、ファイルシステムをCodePack使わずにWin32API使うと面倒になるからな
言うほど大変なわけでもないが、独特な管理方法で面食らったわ
0158デフォルトの名無しさん
垢版 |
2019/06/03(月) 15:10:33.38ID:kNKAj5df
社内業務用にpowershell+.NETで簡易GUIを表示するようなアプリケーションを作る場合、商用ライセンスとか必要なんでしょうか?
0160デフォルトの名無しさん
垢版 |
2019/06/03(月) 18:40:28.28ID:dutM1mQ+
どっちの意味だろう?
・(作成するアプリケーションの)商用ライセンス
・(VisualStudioの)商用ライセンス

よく主語が抜けてるとか言われてるけど
この場合、連体修飾語が抜けてるよね(今調べた)
0161デフォルトの名無しさん
垢版 |
2019/06/03(月) 18:46:53.35ID:oLmmsHsK
後者の意味にしか取れなかった、というか前者の意味がわからん
社内用に作ったアプリに商用ライセンスつけるか、って話?
0162デフォルトの名無しさん
垢版 |
2019/06/03(月) 18:50:14.74ID:Y6wyUKBm
社内配布でも基本的にはVSの開発者用ライセンス必要だし、
オープンソース使ってるならライセンス違反にならんように気をつけなあかん

自分個人だけで使うなら特にライセンス気にすることはないだろう
0163デフォルトの名無しさん
垢版 |
2019/06/03(月) 18:55:21.90ID:dutM1mQ+
うん
前者なら上長に聞けと思った

後者について VisualStudio Community のライセンスを調べたところ、
オープンソースプロジェクトや学習・研究目的ならどんな企業も問題ないが、
相談のケースはクローズドソースと思うので、以下の条件になるはず

・一般企業なら5ユーザーまで
・大企業(250台PCを所有、または売上100万ドル)なら、使用不可
0164デフォルトの名無しさん
垢版 |
2019/06/03(月) 19:23:31.03ID:iKNLzo07
VS Express2015なら無料で使用できますね
あとVS Codeを使うことも可能だが、WPFを開発って結構苦行かもしれんね
0165デフォルトの名無しさん
垢版 |
2019/06/03(月) 19:31:36.01ID:gHWgGxDB
メモ帳とかでソース書いてWindowsにプリインストールのcsc.exeでコンパイルした場合はVSのライセンスっていらないのかな?
スレチだけど
0166デフォルトの名無しさん
垢版 |
2019/06/03(月) 19:43:46.22ID:kNKAj5df
質問の仕方が悪かったですね
すみません

テキストエディタでpowershellのコードを書き、その中で.NETのFormオブジェクト達を呼び出してGUIを作ります
そのときに、powershellや.NETの商用ライセンス的なものが必要なのか知りたかったです

よろしくお願いします
0169デフォルトの名無しさん
垢版 |
2019/06/03(月) 22:12:25.81ID:D/nGT1NT
OSSなんだしいらないんじゃね?(適当)
社内用ならそんなシビアに調査しなくていいんじゃね?って気もするけど超大手とかだとやっぱしっかりしらべるのかね?
超大手なら周りなり法務なりに聞けで済むか
0173デフォルトの名無しさん
垢版 |
2019/06/06(木) 03:11:15.75ID:Q2PRQ2hH
>>166
不要
0178デフォルトの名無しさん
垢版 |
2019/06/13(木) 20:13:48.97ID:Qp/i0hmX
core3いいじゃん
これで少し手直ししたらlinuxにwpfもっていけるってことなのかい
0179デフォルトの名無しさん
垢版 |
2019/06/13(木) 20:59:16.46ID:vbUZdfMk
残念ながらWPFやWinFormsは.NET CoreでありながらWin限定
WPFは大部分がC++/CLIで書かれているしWindows APIに依存しまくってるから、
まずはそれを全てポータブルな形に再実装しなければならない
百人月クラスの壮大なプロジェクトだ
0180デフォルトの名無しさん
垢版 |
2019/06/13(木) 21:15:12.81ID:sfQNEli4
100人月で済むならやりゃいいじゃん
壮大なプロジェクトって少なくとも1桁違うやろ
0181 ◆QZaw55cn4c
垢版 |
2019/06/13(木) 21:31:32.83ID:RglcOoNZ
>>180
一桁はおろか、二桁=1万人月くらいは必要じゃないかな…
0186デフォルトの名無しさん
垢版 |
2019/06/13(木) 23:25:38.96ID:CND6SLBs
WPFはフルスクラッチでUIを描画してるから、アーキテクチャ的にはむしろWin限定にするほうが不自然
0189デフォルトの名無しさん
垢版 |
2019/06/15(土) 09:27:21.19ID:6PSH/Imj
過剰なクライアントサイド志向に対する最近の揺り戻しのムードの中で、サーバーサイドBlazorだけならワンチャンあったかもね
Blazorを正式なプロダクトとして推していくと決めた時点で、クライアントBlazorは廃止してサーバーサイド一本にするべきだった
Blazorといえばwasmのオモチャというイメージを払拭できない限り普及はない
0190デフォルトの名無しさん
垢版 |
2019/06/15(土) 09:42:50.74ID:Ga3aXpPN
SSRはもとはクライアントでしか動かないjsが鯖で動くすごいって技術
だからjs以外の言語だとSSRはなにも真新しさはない古典的な技術だ
なのでBlazorでサーバーサイドをやる意味はない(api、MVC、Pagesで十分)
クライアントで.NETを動かすことに意味がある
0192デフォルトの名無しさん
垢版 |
2019/06/15(土) 10:13:25.41ID:Ga3aXpPN
>>191
Blectronは知らないがElectronの.NET版という意味ならまさにそうだな
ググったらもうすでに同じ発想で取り組んでるOSSユーザーが少なからず居たから
もう暫くしたらBlazorでクロスプラットフォームデスクトップアプリが実用化するんじゃないかな
0194デフォルトの名無しさん
垢版 |
2019/06/15(土) 15:17:17.19ID:xT5QU/B2
新卒で入った会社(5年前)がWinFormだったな。今も多分そう。
今はWindows用のコード書くことがなくなってしまったが、
あれはあれで生産性高いと思うわ。業務アプリだとデザイン性いらないし
0195デフォルトの名無しさん
垢版 |
2019/06/15(土) 15:30:24.49ID:RNWBuCRz
WPFも主ターゲットは業務向けだけど、日本のITドカタが業務システムと聞いてイメージするオーダーメイドなシステムとはだいぶ違う
米国では早くからシステムのパッケージ化が進んでいて、
パッケージベンダーにとっては一つ作れば多くの客に売れるから多くの開発リソースを投資してリッチなUIを作ることができる
そういう事情を踏まえて誕生したのがWPFなんだよ
日本でも近年は脱オーダーメイドが進みつつあるけど、既にリッチクライアントの時代が終わってSaaSになっちゃったからWPFの出番は来なかった
0196デフォルトの名無しさん
垢版 |
2019/06/15(土) 16:35:30.94ID:hWID9DJj
日本の業務アプリには御託並べるWPFプログラマは不要。
黙々と作業に徹するWinformコーダーが居ればよい。
0197デフォルトの名無しさん
垢版 |
2019/06/15(土) 17:08:33.15ID:RjknjEo7
業務にアクティブ要素、動的要素なんていらないからな。
コントロール全部並べてあって使えないところは無効化されてるだけでいい。
状況によって位置が変わるのをすげー嫌がる。操作ミスが増えるだけ。
0198デフォルトの名無しさん
垢版 |
2019/06/16(日) 01:46:25.54ID:AXRRwyW/
バインドしてみたけど、まったくメリットが分からん...

http://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();
}

誰か、バインドのメリットをアホな俺に教えて下さい...
0199デフォルトの名無しさん
垢版 |
2019/06/16(日) 01:47:53.07ID:AXRRwyW/
>>198
空白文字消されるんですね; 読みにくくてすみません💦
0201デフォルトの名無しさん
垢版 |
2019/06/16(日) 09:03:33.98ID:muf2QdNo
>>198
あなたの作りたいツールがボタン押したら
カウントアップするだけの機能だけでよいなら理解する必要はない

でもたいていはそのテキストボックスには外部ファイルを読み取ったり、
データベースからデータをとってきて、集計したり加工した値が入るはずだ
その時にはbtn_clickのコードは肥大化して容易に1,000行を超える
その時には関数に切り分けたりすることを覚えるだろう
さらに進んでいくと、画面を凝ったデザインにしたくなったりユーザーの入力値を検証したくなったりする
そうすると画面のデザインを少し変えただけなのに
うまく動かなくなったりコンパイルエラーを起こすようになってきた
そこで画面は画面だけにしたほうが改修がしやすかったり、
デザインの得意な人にそれを任せることができるようになってくる
システムは機能や役割ごとに適切に分離していたほうが将来的にメリットがあり、
バインディングはそれを実現する仕組みの一つだ
0203デフォルトの名無しさん
垢版 |
2019/06/16(日) 10:11:25.65ID:X9An2SCt
バインディングは逆に手順が可視化されないのが弱点

よくわからないけど動いていればいいならバインディング
そこまでしっかり自分で制御したいなら通常のコードで
0204デフォルトの名無しさん
垢版 |
2019/06/16(日) 10:14:27.54ID:yX0oMZwq
手順の管理は量が増えると難しくなってスケールしないから
そもそも手順気にしなくていいように宣言的プログラミングしようぜってなったんだよ
ちっぽけなアプリ作るだけなら好きにすればいいさ
0206デフォルトの名無しさん
垢版 |
2019/06/16(日) 10:22:58.12ID:X9An2SCt
バインディングにも弱点がある
相互関係で値が決まるときにその相互関係を結局人間が追わなくてはならない場合が出てくる
その時に非常にバグが取りにくい
それでFBはMVVMを捨てた
0207デフォルトの名無しさん
垢版 |
2019/06/16(日) 10:24:41.66ID:X9An2SCt
スケールと言うけど小規模ならバインディングで対応可能だろうけど
それを超えるとまあ無理だろう
0208デフォルトの名無しさん
垢版 |
2019/06/16(日) 10:30:24.72ID:yX0oMZwq
手続き的だと非同期処理も非常に弱い
今の時代非同期が無いということはまずない
非同期処理ではやはり宣言的プログラミングが強い
手順すなわち処理の順番に依存すると非同期処理は急激に難しくなる
0209デフォルトの名無しさん
垢版 |
2019/06/16(日) 10:33:01.62ID:X9An2SCt
従来型はスケールしないと言うけど世間の大規模プロジェクトはほぼ100%
従来型(手続き型)で作られているだろう
手続きが書いてあればツールと人手を使えば解消のめどはつく
宣言的な組み合わせの場合はロジックをすべて脳に入れて考えなくてはならないので
大きくなればなるほど人間が追いつかないと思う

逆にバインディングで大規模プロジェクトが今現在も使われているとは思えない
0210デフォルトの名無しさん
垢版 |
2019/06/16(日) 10:34:56.59ID:X9An2SCt
人間が追い切れない場合は実行してデバッグしかないけど
それがまたバインディングの場合はやりにくい
0211デフォルトの名無しさん
垢版 |
2019/06/16(日) 10:36:05.79ID:yX0oMZwq
>>209
スケールしないのを金と人数に物を言わせて無理やり作った
それが従来型の大規模開発だな
スケールはしてないんだよ無理してるだけで

脳に入れなきゃいけないことが多いのは手続き的なほう
なぜなら手続==処理の順番に結果が依存するから
長い処理を扱うときに最初から最後まで手順を頭に入れてなければいけない
0212デフォルトの名無しさん
垢版 |
2019/06/16(日) 11:36:30.06ID:0yrhG5qH
画面単位で独立したロジックを記述してDBのみ共有する従来のスタイルなら余裕でスケールするよ
WPFは頭のいいアーキテクトがトップダウンでスマートな設計をするスタイルには適している
MSのプロダクトは基本そうやって作られている
一方、従来のバカでもスケールするスタイルで作ろうとするとWPFはフリーダムすぎて無茶苦茶になる
0213デフォルトの名無しさん
垢版 |
2019/06/16(日) 12:48:19.67ID:BOJP8Jll
そういうけどできてから10年以上立つけど
そんなに大規模のプロジェクトでWPFが使われてるような形跡がない
webでもMVVMは中規模から小規模向けで大きくなると使い物にならないという評価
0215デフォルトの名無しさん
垢版 |
2019/06/16(日) 12:59:52.96ID:6qqET37p
大規模で使い物にならなくなるのは、学習できない月収14万円のコーダーばっか集めてるからやろ
0216デフォルトの名無しさん
垢版 |
2019/06/16(日) 13:00:12.87ID:Fx7TO0Mh
大規模な画面アプリなんてあんの?
普通サブシステム単位とかで実装別れると思うけど
0217デフォルトの名無しさん
垢版 |
2019/06/16(日) 13:32:34.96ID:yX0oMZwq
>>212
それは別の意味でスケールしない
DB処理にビジネスロジックが蔓延してメンテナンスコストが跳ね上がる
実行時パフォーマンスも悪い
0219デフォルトの名無しさん
垢版 |
2019/06/16(日) 14:11:05.99ID:UANb65jp
DBとはバインドするのは良くて、画面とのバインドは良くないという論調?
大規模な画面改修を想定しない限り、画面要素のバインドは良い事無いと思う。
作り変えるのが前提のプロトタイプならメリット有るだろうね。
レジに支払い方法追加するみたいに、旧来のロジックはそのままでレイアウトが変わるならバインディングも有効だろうね。
0220デフォルトの名無しさん
垢版 |
2019/06/16(日) 16:05:42.44ID:X8m3/+hI
>>219

one-way binding(射影)なら良いと思う。

個人的には当初MVVMの利点と言われていた「View(UI)のすげ替えが楽」なんてのは幻想で、
「自動テストが書きやすい(手動によるE2Eテストを減らせる)」というほうに重きをおくべきだと。
0222デフォルトの名無しさん
垢版 |
2019/06/16(日) 17:08:33.07ID:X8m3/+hI
そう、だから自動テストという意味で >>198 を考えると、
btn_Click()イベント内部では"tb1"という他人のControlオブジェクトへ直接アクセスしている。
したがって"tbl1"Controlの存在無しに実行することができないから自動テストを書くのが困難になる。

これを、
・画面に表示されている値と常に一致しているカウント変数、という概念(=データバイディング)
・実際にカウントアップする処理(=ビジネスロジック)
・カウントアップするきっかけ(=イベント or コマンド)
に分けて考えることでビジネスロジックの自動テストを書くのが容易になる、というのがMVVMのメリット。
0223デフォルトの名無しさん
垢版 |
2019/06/16(日) 18:25:01.50ID:3DdY3936
>>212
WPF登場以降、MSのアプリ、ツールに一貫性がなく碌に使われずに開発が放棄され、
サポートしきれずオープンソース化される理由はそこにあるのですね。
0226デフォルトの名無しさん
垢版 |
2019/06/16(日) 20:45:27.52ID:3DdY3936
>>224
オープンソース化の経緯も知らずに何頓珍漢なこと言ってんだよ。

プレミアサポートが碌に質問に答えれなくなってる現実まで知らないとか、
MSと契約してないか、開発してないかのどちらか。
0230デフォルトの名無しさん
垢版 |
2019/06/16(日) 21:30:04.16ID:GzHLSBJo
内容はともかく >>224の言い方も若干煽り入ってるし、ムキになる方もガキ
0232デフォルトの名無しさん
垢版 |
2019/06/17(月) 01:08:20.00ID:kwIqiH/S
こんなオワコン老害スレにガキなどおらん。

いるのは無職とヨコからマウンティングするだけの糞じじぃのみ。
0234デフォルトの名無しさん
垢版 |
2019/06/17(月) 12:15:35.07ID:IT0P3J54
WPFの使い勝手はともかく、使い手数に対して仕事はそれなりにあるんだからオワコンではないっしょ
0236デフォルトの名無しさん
垢版 |
2019/06/17(月) 21:35:53.79ID:Z9iR9gFd
60年現役のCOBOLさんを いつ消えるか分からんWPFなんぞと一緒にしないでくれたまえ笑
0237デフォルトの名無しさん
垢版 |
2019/06/18(火) 06:15:24.31ID:3nOE2mBA
プログラム板にキチガイ降臨中!botに一晩も反応する異常さ
一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。
https://mevius.5ch.net/test/read.cgi/tech/1559872586/

142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO
>>141
名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、
片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか?
一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人なんて復活ねーから。
0238デフォルトの名無しさん
垢版 |
2019/06/18(火) 20:27:06.42ID:ei8mZ0vT
設計が糞すぎたから普及に失敗した。これがすべて。
0240デフォルトの名無しさん
垢版 |
2019/06/18(火) 22:46:24.39ID:1c5MtUw2
XAMLのデザイン要素は悪くないと思うけど
MVVMとかに関しては労力に見合ったリターンがあるか疑問

個人的にはバインドとかいろんな書き方できるのがすごくイヤ。
バインドでもx:Name=でも良いんだが、Pjによって原則どっちかでしか書けなくしてほしい。
0242デフォルトの名無しさん
垢版 |
2019/06/19(水) 20:02:02.54ID:Td37eomm
両方じゃない?
昔の言語でgotoでスパゲッティの成果物があったとして、書いたヤツや規約も悪いしgotoオッケーの言語も悪い。
0243デフォルトの名無しさん
垢版 |
2019/06/20(木) 19:00:34.81ID:OKnd5gHF
WPFで業務用アプリを作ってみたけどなかなかいいじゃない。
Material Design XAML Tool Kitのおかげでサクッと今風のUIが実現できて褒められたわ。
データバインディングしなかったからだと思うけどわりかし簡単に作れるし便利。
0244デフォルトの名無しさん
垢版 |
2019/06/20(木) 22:52:20.47ID:HND361/m
バインドは自分で全部やるにはまだ良いのだけど、他人のバグを解析する時のめんどくささが半端ない。
0248デフォルトの名無しさん
垢版 |
2019/06/22(土) 01:00:34.07ID:65ybortV
イベントがバブルがどうとかちゃんと理解できてないまま廃れ始めてしまった
0249デフォルトの名無しさん
垢版 |
2019/06/22(土) 11:40:15.33ID:rEuWV0gj
言語がはやるかに、入りやすさは大事だからな。
バインドでキレーに実装したのに、メンテした奴が手続き型でやってるとスゲーがっかり。
人材確保がむずいなら、最初から手続き型でやった方がいーわ
0250デフォルトの名無しさん
垢版 |
2019/06/22(土) 11:53:14.62ID:rEuWV0gj
バインドのメリットとして分業しやすさが挙げられるけど、xaml と vmを別の作業者がやることなんてあんまり無いと思う。ほとんどのケースではコード量が増えてメンドイだけw
0251デフォルトの名無しさん
垢版 |
2019/06/22(土) 12:11:23.53ID:8ehMgppn
MVVMはクラスの数が増えるけど画面更新が楽なのがいい
ReactivePropertyと組み合わせるのが好き
0255デフォルトの名無しさん
垢版 |
2019/06/22(土) 12:58:17.43ID:Y4Y2JNgB
VMのテストをしてもE2Eテストをしなくていいわけじゃない
振る舞いが複雑化する傾向が強いMVVMはテストにおいてもデメリットが大きい
単純なMVCならE2Eテストも楽ちん
0258デフォルトの名無しさん
垢版 |
2019/06/22(土) 13:10:11.63ID:gdHFdK5j
ジャ…どこかのSIerらはE2Eテストを人力でやるのが最良だとみなしてる節があるがな
0259デフォルトの名無しさん
垢版 |
2019/06/22(土) 13:16:43.11ID:Y4mhjvqt
>>258
それは正しいよ
一度きりのテストなら自動化はコストに見合わない
SIerなら納品後はどうせあまり弄らないし、仮にメンテが必要になったとしてもは都度工数を請求できるから無問題
0260デフォルトの名無しさん
垢版 |
2019/06/22(土) 13:23:15.77ID:opiN2/uR
なんと言っても数字でレイアウト出来るのが良い
マウスでポトペタは楽だけど美しくするには可也面倒だからね
0261デフォルトの名無しさん
垢版 |
2019/06/22(土) 13:24:06.96ID:1mmW7z7g
単純なMVCアプリしか作ったことない人:「MVVMは複雑だからテストが大変」

こういうこと?
0263デフォルトの名無しさん
垢版 |
2019/06/22(土) 14:23:52.15ID:Y4mhjvqt
>>262
事実やで
というか論理が逆で、そもそも複雑だからMVVMを使うんだよ
だから典型的なWebMVCに比べてテストが大変なのは当たり前
0264デフォルトの名無しさん
垢版 |
2019/06/22(土) 14:42:56.00ID:rEuWV0gj
MVVMのテストは楽だと思う。
コーディング・テスト・バグ修正の合計時間で考えると得してるかは疑問だけど。
0266デフォルトの名無しさん
垢版 |
2019/06/22(土) 15:56:59.09ID:1mmW7z7g
>というか論理が逆で、そもそも複雑だからMVVMを使うんだよ

なら原因はMVVMであることではなくてその前に複雑であることになるが、
自分が何を言っているか理解しているんだろうか。
0270デフォルトの名無しさん
垢版 |
2019/06/22(土) 16:37:06.55ID:rEuWV0gj
少なくともUIに関しては複雑だからより、見た目的な理由でWPFだと個人的には思ってるw
0271デフォルトの名無しさん
垢版 |
2019/06/22(土) 16:39:59.61ID:ykSXq++N
>>267 >>269
中身なしで罵倒し合うのって、ガキの喧嘩過ぎて見苦しい
0277デフォルトの名無しさん
垢版 |
2019/06/23(日) 00:17:08.67ID:x4qCzVIO
上でテストの話が出てるけど

エンジニアたち「できたっぽい!」
上司「テストして」
エンジニアたち「一通り動いてます!」
上司「エージングもたのむ」
エンジニアたち「丸一日動かしっぱなしでもOKでした!」
上司「了解」

という雑な開発しかしたことない自分にはついていけない…
0278デフォルトの名無しさん
垢版 |
2019/06/23(日) 00:50:10.75ID:+hNeL9sR
むしろ簡単なPJの方が世の中多いし、自動テスト作らなかったら困ったであろうことは5年やってて一度しかないw
0279デフォルトの名無しさん
垢版 |
2019/06/23(日) 06:37:29.75ID:0ZLQVu14
俺は自動テストは一部のモジュールの単体テストでしか使わんなぁ
プロジェクト単位で導入するんじゃなくて、個人で導入するものかと
0280デフォルトの名無しさん
垢版 |
2019/06/23(日) 07:42:47.22ID:P8H0jYp7
自動テスト無いと困るよ
エクセルスクショは精神を病んでしまう
病んだら困る
0281デフォルトの名無しさん
垢版 |
2019/06/23(日) 09:04:47.66ID:ATNbze7o
SIerは縦横に広がるテスト書に満足する顧客が多いからな〜
金持ってる大手ほどその傾向が強い(笑
0282デフォルトの名無しさん
垢版 |
2019/06/23(日) 10:23:02.87ID:Mn96V+f7
大概自動テストのシナリオ書いてる手間で打鍵した方が早かったな
シナリオが使い回せるならまた違うだろうけど
0283デフォルトの名無しさん
垢版 |
2019/06/23(日) 10:29:23.44ID:x+1RTwK/
大手だとテストシナリオ書いてる人と実際にコード書いてる人は別

SEが馬鹿みたいに多くいて何か月もずっとテスト仕様書を書いてる
0284デフォルトの名無しさん
垢版 |
2019/06/23(日) 10:54:16.26ID:P8H0jYp7
エクセルよりコードのほうがシナリオ書きやすい
コードでシナリオ書いたら実行工数は0
1回しかテストしない場合でもコードで書いたほうがいい
0285デフォルトの名無しさん
垢版 |
2019/06/23(日) 12:21:50.63ID:7s8J8D/4
>>283
タウンワークで時給1600円のテスト要員募集してたな。
「コードは書きません、短期長期どちらも可。」みたいな
0286デフォルトの名無しさん
垢版 |
2019/06/24(月) 01:03:52.09ID:Y9x0dRru
Prism 7.1 のチュートリアルサイトないっすかね
妖精作戦さんのところは読み物としてはとても良いけどソースはGitHubな!なスタンスなので使いにくい…
公式のチュートリアルは WPF (Legacy) で 6 版のままだし
モヤモヤしながら勉強中
0287デフォルトの名無しさん
垢版 |
2019/06/28(金) 17:52:56.52ID:lioMzEvp
NVVMでは~.xaml.csには何も書かないのが理想とのことですが、例えば他のwindowを開くような処理はビューモデルに記述するのでしょうか?
根本的な疑問は、~.xaml.csに何も書かないということはモデルでできることが何もなくなり、その代わりモデルに記述するのでべきことを全てビューモデルに記述することになってしまっておかしいのでは?ということです。
私が何か勘違いしてるのは間違いなさそうなのですがそれがわかりません。。
0290デフォルトの名無しさん
垢版 |
2019/06/28(金) 18:43:28.81ID:IeC+ybxD
>>287
あくまで自分の場合だけれど、
画面を開くとかメッセージ出すとかはそれ専用のサービスクラスを作ってる
そしてviewmodelからそのサービスを呼び出すようにしている

viewはicommandを介してviewmodelに通知するだけで、
その後どのサービスを呼び出すかはviewmodel、
実際の処理はサービスクラスに書かれている
コードビハインドに書いた方が圧倒的にシンプルになる場合はコードビハインドに書く
0291デフォルトの名無しさん
垢版 |
2019/06/28(金) 20:11:16.63ID:1dGBh4nf
VSMでストーリーボード動かすよりイベントハンドラから動かしたほうが圧倒的に楽なんだよな
その場合はコードビハインドに書くしか無いが
0292デフォルトの名無しさん
垢版 |
2019/06/28(金) 20:17:39.65ID:anlRZAoa
今時アニメーション?
世界で唯一の成功したWPFアプリケーションであるVSはもうアニメーションなんて全く無くなってるのに
0293デフォルトの名無しさん
垢版 |
2019/06/28(金) 21:25:24.69ID:lanM6mt5
なるほどありがとうございます。
~.xaml.cs=モデルだと思い込んでました。
~.xamlと~.xaml.csはコンパイルされて一つのクラスになるってのは知ってたんですが、つまり2つ合わせてビューなんですね。
おかげでWPFのMVVMの説明がわかるようになってきました。
0295デフォルトの名無しさん
垢版 |
2019/06/29(土) 00:07:12.29ID:CfES0TXk
WPFって、直感的にはすごく簡単そうなのにいざ実現しようと思うとやたら難しいってことが多くない?
テキストの内容が変わったらその時にテキストを2回点滅させるっていうシンプルなことをしようとしたら大変だったんでそう思ったってだけだが。
0297デフォルトの名無しさん
垢版 |
2019/07/01(月) 20:08:29.98ID:yYlRZT4H
>>287
ビューにはビューの処理だったら書いてもいい
無理してコードビハインドを避けても自己満足できるくらいしかメリットはない
0298デフォルトの名無しさん
垢版 |
2019/07/01(月) 20:38:17.63ID:lLZwoOoz
Listboxにバインドされたコレクションがあってlistboxitemを
右クリックしてコンテキストメニュー出して元のコレクションからitemを
削除するのってどういうのが一番シンプルなんだろうか
0300デフォルトの名無しさん
垢版 |
2019/07/02(火) 00:01:51.84ID:4m9hOiGn
>>297
クラスを継承して機能を拡張するのはよくないと思う
理由いち 代替策があればそれを使ってクラスの肥大化を回避する
理由に 機能をビヘイビアにすれば再利用が簡単
0301デフォルトの名無しさん
垢版 |
2019/07/02(火) 09:06:12.90ID:gPm+QAeN
継承じゃなくてイベントハンドラじゃね?主に
ビヘイビア化は後で別のところに使いたくなってからでも遅くない
0302デフォルトの名無しさん
垢版 |
2019/07/03(水) 01:42:37.28ID:wg/xgQnm
>>300
再利用するための仕組みは再利用される可能性ができてから考えればいい
再利用しないのに手間をかけるのはムダ
ちなみにここで言ってるのはメインウィンドウとかオプションダイアログの話な
メッセージボックスみたいな再利用性の高いものはWPFの機能を駆使してもいい
玄人はコードビハインドを書かないみたいな風潮があるけど、それを信じ込んでコードビハインドを避けて泥沼にはまり込むのは素人
0304デフォルトの名無しさん
垢版 |
2019/07/04(木) 09:51:39.53ID:PdwtXR4j
UserForm内のDatagridが展開されるときにチラチラするんだけど、何とかならないかな...最小サイズから最大サイズに拡大するような描画がある。MainWindow直ならない現象
0306デフォルトの名無しさん
垢版 |
2019/07/04(木) 10:56:54.65ID:PdwtXR4j
自分で作ったユーザーフォーム内のDataGridのItemsSourceにバインドしたコレクションに要素を追加するとチラつきます
0309デフォルトの名無しさん
垢版 |
2019/07/04(木) 23:09:08.06ID:LkrEOqlD
>>307
どこら辺がゴミ?
0310デフォルトの名無しさん
垢版 |
2019/07/04(木) 23:11:07.32ID:OMb74HbU
MSから新しいGUIライブラリが出たらまずDataGridを調べて絶望するまでが儀式だぞ
0311デフォルトの名無しさん
垢版 |
2019/07/05(金) 00:36:29.15ID:CQGNs6dF
DataGridの問題の殆どは、万単位のデータを突っ込むPG、SE,
クライアントの何れかだとは思うんだがね
実際に使う人は万もスクロースしちゃいないのに
0312デフォルトの名無しさん
垢版 |
2019/07/05(金) 00:43:44.52ID:auH9BNOV
それは一見意識高いようでいて矛盾した意見だと思うね
十分に練られた優れたUIにはデータグリッドの出番はない
データグリッドはそもそもUIの作り込みに工数をかけたくないときに使うもんだ
そもそも手抜きの道具なのだから、データグリッドの使い方として、面倒だからもう全部突っ込めというのも自然な発想だろう
0313デフォルトの名無しさん
垢版 |
2019/07/05(金) 14:41:18.94ID:H4UuFejG
MVVM原理主義派とカジュアルMVVM派では話が交わる事はない

どこまでMVVMの作法に則るのがベストかで線引きして適用するのがいいよね
0314デフォルトの名無しさん
垢版 |
2019/07/05(金) 18:35:21.37ID:Zc5sU972
wpfをマスターしきればMVVM原理主義でいっても苦労せず実装できるので原理主義でいいと思うんだよ。
ただwpfは難しい。並大抵のエンジニアでは原理主義で押し通そうとすると実現できない機能がでてきて挫折する。
と思った。
0315デフォルトの名無しさん
垢版 |
2019/07/05(金) 18:51:13.41ID:cjl7UwcZ
WPFに携わってだいぶ経ったが、Adorner関連は苦手。
なんでペタっとUserControl貼れないのか
0317デフォルトの名無しさん
垢版 |
2019/07/06(土) 08:26:36.67ID:WmAexti4
すっかり忘れ去られてLivetだが、ビヘイビアが物凄く充実しているから
そこだけ引っ張って使うのもありだとは思う
0318デフォルトの名無しさん
垢版 |
2019/07/06(土) 15:34:02.12ID:G3GVBuNF
更新が続いてればprismとためはるレベルでスタンダードだったんだけどな…
惜しいライブラリをなくしたもんだ
0320デフォルトの名無しさん
垢版 |
2019/07/06(土) 15:56:25.42ID:6I0IcNLp
MVVMやろうと思ったらフリーのライブラリを利用しないといけないと判って取り組むの止めた
MSから標準で出して欲しかったな
0321デフォルトの名無しさん
垢版 |
2019/07/06(土) 16:27:06.95ID:u4I8JAFv
Livetは形骸化した原理主義に陥ってコードビハインドを書かないことが目的化していた印象
コードビハインドの代わりにXAMLでプログラミングをし始めて、結局ビューとロジックの分離とは何だったのか状態になっちゃった
MVVMの根本的思想はWebにも受け継がれている優れたものだけど、ビヘイビアは明らかに失敗
0323デフォルトの名無しさん
垢版 |
2019/07/06(土) 18:01:17.99ID:u4I8JAFv
>>322
貴方が思っているほどjsonはスタンダードではありません
ドカタ業界ではjsonを知らない自称ITスペシャリストは決して珍しくはないのです
0333デフォルトの名無しさん
垢版 |
2019/07/06(土) 19:39:18.34ID:u4I8JAFv
>>332
元々はMSが作ったサンプルコード
今はMSが開発やめてMSとは何の関係もないコミュニティプロジェクト
0337デフォルトの名無しさん
垢版 |
2019/07/06(土) 20:47:01.22ID:NPkITZNc
設定ファイルとしてはXMLよりJSONの方が見易いんだけどコメント書けないのがなぁ
0341デフォルトの名無しさん
垢版 |
2019/07/07(日) 11:13:03.83ID:bwq41KU1
復活じゃないと思う

win10ではUWP使え!から他のものも使ってもいいよになっただけ
0343デフォルトの名無しさん
垢版 |
2019/07/07(日) 12:58:17.74ID:nrsoMb6V
>>342
最近はMicrosoftも脱Json.NETの流れだけどね
レガシーなコードの塊で、後方互換性を担保しながらパフォーマンス改善は難しいことがわかったから
0344デフォルトの名無しさん
垢版 |
2019/07/07(日) 13:00:18.65ID:bwq41KU1
VS2019の横のニュース欄にjsonの新しい標準ライブラリの話が書いてあったね
みんなあんなの読んでるのかな?
0345デフォルトの名無しさん
垢版 |
2019/07/07(日) 13:09:03.68ID:1HKUEekm
>>344
一般ユーザーは知らなくても、フレームワークが裏で使っているライブラリが変わることでこっそり恩恵を受けている
0346デフォルトの名無しさん
垢版 |
2019/07/07(日) 13:12:24.83ID:Cqnlo2q6
Visual StudioのRESTクライアント生成機能使うとJson.NETを使用するコードが生成されてたけどこれ標準ライブラリ使用に置き代わったの?
0353デフォルトの名無しさん
垢版 |
2019/07/07(日) 13:47:39.03ID:C3Myo4MP
>>351
糞かもしれないけどわかりやすくてそこそこ早いから流行ったんでしょ?
もとからあった標準ライブラリがクソ中のクソすぎてMS内部の人から見限られてる状態だから
0354デフォルトの名無しさん
垢版 |
2019/07/07(日) 13:53:28.39ID:zdokh1sS
>>353
うん、くそだけど一番人気あるのは事実。
俺の用途に全く会わなくて俺は自作したわw
だから、.ner core 3の標準ライブラリはwelcome
0362デフォルトの名無しさん
垢版 |
2019/07/07(日) 17:14:25.68ID:Fr9+4/3b
久しぶりにUWPからWPFに戻ってきたけど、FormattedTextやら、Obsoleteが多くなってるね。
しかし、IOをフルに使う身としては、WPFは快適だ。 UWPでは、FTDIチップ使うのさえ四苦八苦。
0368デフォルトの名無しさん
垢版 |
2019/07/09(火) 14:15:51.32ID:utWXujxk
>>318
Livet一応生きてるよ
0370デフォルトの名無しさん
垢版 |
2019/07/09(火) 18:39:48.90ID:NP6oYl9g
亀すまん
>>301
すべてのコントロールのイベントハンドラをMainWindowに書くのか
0376デフォルトの名無しさん
垢版 |
2019/07/10(水) 01:00:09.57ID:cBFGEq/D
reactivepropertyだってもとはneueccって人じゃなかったっけ?
okazukiは他人に寄生してるだけのイメージ
0380デフォルトの名無しさん
垢版 |
2019/07/10(水) 08:10:05.16ID:R2F1hs2d
reactivepropertyは便利だよねぇ。 打ち込み量が減って、本来のNotifyPropertyChangedの書き方忘れちもうた。
0381デフォルトの名無しさん
垢版 |
2019/07/10(水) 09:06:54.62ID:nPFkOLYt
なんでメンテナーが個人か企業かで扱いがかわるの?
ライブラリの良し悪しとかライセンスが問題ならわかるけど
0385デフォルトの名無しさん
垢版 |
2019/07/10(水) 12:46:00.89ID:d065zGS3
>>383
むしろ個人メンテナーなライブラリを避けるほうが正気か?って思うよ
メンテナーがどうのこうのより使いやすい、利用者が多いで選定すればいい
0388デフォルトの名無しさん
垢版 |
2019/07/10(水) 15:20:47.42ID:nPFkOLYt
>>387
業務でも一緒だよ
おかたいところでライブラリの使用許可云々が厳しいところもあるだろうがそうじゃないとこもあるよ
スマホアプリなんかだとわかりやすいと思うけど権利表記に並んでる使用ライブラリには個人メンテナのものなんて山ほどある
↑で出たreactivepropertyなんかもそうだし、unity製ゲームなら多くのアプリでunirx使われてる
任天堂が出すゲームアプリですら趣味の範囲というなら話は別だけど
0389デフォルトの名無しさん
垢版 |
2019/07/10(水) 16:28:17.34ID:R2F1hs2d
そういえば、Prismって今はメンテ二人だけなん? すごいよねぇ。 Prism無しでは、何もできん身になってしもうた。
業務ユーザーも趣味ユーザーもかなり多いんとちゃう?
0392デフォルトの名無しさん
垢版 |
2019/07/10(水) 19:46:03.84ID:R2F1hs2d
WPF語るならPrismだよねえ。
WPFの、DDDとかアジャイルプロジェクトでデスマーチ一杯見てきた。
Prism使わなんだら、簡単にロジック分離できないのに、全く理解しないんだから・・・
しっかし、.NETにPrism組み込まなかったのはなぜなんだろ?
0393デフォルトの名無しさん
垢版 |
2019/07/10(水) 20:17:10.68ID:J5NG6fJu
企業がメンテナンスしてるOSSでも使い物になる保証は無いしな
金出して直させるなら話は別だけど
0394デフォルトの名無しさん
垢版 |
2019/07/10(水) 20:24:44.33ID:mLQ0O0Gx
結局そこじゃないの
トラブった時に企業なら最悪札束でなんとかできる可能性はあるけど、個人に対してそれは無理だろう
0395デフォルトの名無しさん
垢版 |
2019/07/10(水) 20:28:40.60ID:R2F1hs2d
OSS GitHubにIssueして問題解決する実力無いなら使うなというだけでは?
OSSを避ける理由は実力問題以外の何物でもない。
0396デフォルトの名無しさん
垢版 |
2019/07/10(水) 21:17:42.66ID:+MeP9mdJ
札束使えるなりゃ不具合とかはその金で直せばいい

責任転嫁する先が欲しいって意味ならどこがメンテしてようとOSSな時点で同じ
最悪のケースを想定するならライセンスにあるとおり責任転嫁にはならん

企業ならメンツもあって真摯に対応する可能性はあるかもしれんが、そんなこと考慮してライブラリ選定するような開発環境なら始めからOSSなんか候補に入れるなよと思う
0397デフォルトの名無しさん
垢版 |
2019/07/10(水) 23:56:19.51ID:ifa1zTTZ
>>380
それはBindableBase使ってるだけで忘れるw
0398デフォルトの名無しさん
垢版 |
2019/07/11(木) 02:01:32.70ID:j5kiUrVb
>>395
いやいや、いざ商用稼働してからバグって損害だしたら、それからissueだして対処しても無意味でしょ。
例えばmariadbなど無料のDBがあるにも関わらず企業が大金払って有料のDB使うのは実力不足とかではないと思うぞ。
0400デフォルトの名無しさん
垢版 |
2019/07/11(木) 18:20:10.18ID:Cvm2NOy6
普及してるけどそれじゃ不足するケースなら大金払うってだけでは?
システムに合わせたパフォーマンスチューニングしたいとか大規模運用ノウハウの知見を活用したいとか
そらそういう規模なり性能なりを求められる世界も山ほどあるでしょうね、としか
0404デフォルトの名無しさん
垢版 |
2019/07/11(木) 19:39:35.81ID:NtwX9wgZ
プロプラだってほとんど免責条項付いててサポートの質が違うってだけの話なのに
日本だと>>402の言うような意味合いに変わるからよく分からん
0405デフォルトの名無しさん
垢版 |
2019/07/11(木) 19:41:08.58ID:M78ln9aD
まあDBでOSSを使うかどうかと、他のモジュールでOSSを使うかどうかは同じ基準ではないだろうね。
DB周りは障害が起きると金銭的に大きな損害がでる部分だから、DBの選定は間違いなくお金の話になる。実力があるからOSSとはならんだろう。
0410デフォルトの名無しさん
垢版 |
2019/07/11(木) 22:07:42.14ID:EzvhdD4E
>>394
動かなかったら他に入れ替えるほうが健全だし早いと思うがね
いくら金積んでも速攻で直るとは限らん
0411デフォルトの名無しさん
垢版 |
2019/07/11(木) 22:12:26.29ID:EzvhdD4E
まあそれなりにユーザーが居るライブラリなら普通の使い方すれば大体動くわけで
何か起こったときは、大抵他のやり方があるものだが
0412デフォルトの名無しさん
垢版 |
2019/07/11(木) 22:18:21.97ID:/+joyl+w
入れ替えるのだって手間はかかるしノーコストというわけにはいかんだろう。
というか、金積んで入れ替えられるならまだましで、OSSは下手したら全部自分で
面倒見なきゃならん可能性もあるしな。
0416デフォルトの名無しさん
垢版 |
2019/07/12(金) 07:38:05.38ID:3qkMVbCb
WPF使えるはおまえのような極一部の天才だけだからな。普及しないのは当然だ。
0417デフォルトの名無しさん
垢版 |
2019/07/12(金) 07:50:39.48ID:mH0eyMQz
WinFormsだと簡単にできることが
WPFだとひと手間かかったり代替できるシロモノじゃなかったのは普通にイタイ.

あと外部のライブラリの使用が前提みたいになってるのも使いづらさの象徴みたいなもん

まあライブラリ使わせるのは構わんよ.
重要なのはそこじゃないから
ただしMicrosoftが率先して作るようじゃなきゃだめだ

なんだかんだ言ってもWinFormsが未だに廃れる様子が全くないことがすべてを物語っている
0418デフォルトの名無しさん
垢版 |
2019/07/12(金) 10:58:35.11ID:hrlFpRc9
WinFormsでPerMonitorDPI対応とかって最新だと簡単なの??
0419デフォルトの名無しさん
垢版 |
2019/07/12(金) 10:59:26.59ID:hrlFpRc9
簡単ならWPF使う理由もあまりないかなと思って
簡単じゃないならWPFのほうが楽そう
0420デフォルトの名無しさん
垢版 |
2019/07/12(金) 12:32:31.57ID:ovV39x3a
> なんだかんだ言ってもWinFormsが未だに廃れる様子が全くないことがすべてを物語っている
>>417 みたいなお爺さんにはそう見えるんだろうねw
0422デフォルトの名無しさん
垢版 |
2019/07/12(金) 12:35:59.89ID:BgvsCAba
DPI非対応の時点で新規案件でWinFormsは選択肢から外れるな
適当なテストアプリなら使うが
0423デフォルトの名無しさん
垢版 |
2019/07/12(金) 12:45:06.78ID:vR3rPRrK
いやいや、高DPIがWPFしかまともに対応できないとか釣りだろう?
むりに若者ぶっているが話が古くないかな?
0425デフォルトの名無しさん
垢版 |
2019/07/12(金) 13:16:48.37ID:2XKZE4HT
WPFは衰退の一途だが、WinFormsも広く見れば廃れてまくってるよ
どんどんWebへ流出してる
WPFに比べるとWinFormsの方がWebとの間の開発者スキルのギャップが大きいのと、
年季の入った比較的重要なシステムに使われていることが多いのとで、WPFに比べるとWeb移行のスピードは緩やかだけど
0426デフォルトの名無しさん
垢版 |
2019/07/12(金) 14:16:13.28ID:JjzvAIHZ
現実問題としてWindows Server環境でもWeb化の勢いが止まらないからなあ。クライアントがブラウザに慣れたのとクライアントPCの性能向上もあって多少操作性が落ちてもアプリのインストールが不要なWebシステムが評価されるようになったんだよね。
0428デフォルトの名無しさん
垢版 |
2019/07/12(金) 15:01:55.68ID:ouq9dw9u
リッチクライアントとWebクライアント隆盛はいつも繰り返してるよな
以前よりマシになったが、WebAppで作ると
前にできた事がなぜ出来ないんだコラ
って客がおこぷんしちゃう事がままある
0430デフォルトの名無しさん
垢版 |
2019/07/12(金) 17:39:30.76ID:3qkMVbCb
WEB技術は流行だの古いだのと使い捨てばかりで追っかけるだけムダ。
ユーザーからすればウザい広告の技術でしかない。
いかに客を騙して金を取るかってだけ。WPFと同じ。客にメリットはなし。
0431デフォルトの名無しさん
垢版 |
2019/07/12(金) 18:27:06.83ID:rEJcXzGF
Web技術というか最近の技術はサポートライフサイクルが長くて数年と短いから、作って何年かは ほそぼそと保守契約して5年後とかに改修みたいなやつには入れにくいよね

.NET Coreも長くて3年のサポートだしやりにくい
0433デフォルトの名無しさん
垢版 |
2019/07/12(金) 22:44:42.09ID:OQF1XzE6
Windowsアプリ希望 → 安定体質の企業 → 大抵外観にこだわらない → 大抵WinForms
0434デフォルトの名無しさん
垢版 |
2019/07/12(金) 22:49:10.44ID:7tlH/3uz
然程外観に拘らないけど、Hi-DPI対応はしておきたいからWPFだな
WinFormsでも対応出来なくもないけど面倒だ
0435デフォルトの名無しさん
垢版 |
2019/07/12(金) 22:57:18.55ID:hON+ItQO
WinFormsでも対応すべき解像度が限られてるし複数解像度対応とか簡単なのにそれすらできないのは技術が無さ過ぎる。
0437デフォルトの名無しさん
垢版 |
2019/07/12(金) 23:34:54.47ID:7tlH/3uz
>>435
解像度が限られてるってどういうこと
そんなんで任意の倍率のスケーリングに対応出来るの
0441デフォルトの名無しさん
垢版 |
2019/07/13(土) 00:00:56.44ID:5nQhdEBd
外観に拘るからwinformなんだよな。UIをコロコロ変えるなって業務じゃ当たり前の話。
0443デフォルトの名無しさん
垢版 |
2019/07/13(土) 01:09:23.10ID:82wAf4q1
FHDで作っておいてそれを6/3,5/3,4/3,2/3に拡大縮小すれば
3840*2160,3200*1800,2560*1440,1280*720になる。
画面解像度を取得して変更後解像度を決定しthis.Controlsに対してLeft, Top, Width, Height, Font.Sizeを再帰関数でまとめてリサイズしてやれば大体のことは終わる。
この時ポイントは元のレイアウトを3の倍数で作っておくことでそうすれば縮小後のレイアウトがギザギザになることはない。
後はFormの部品と特殊なcontrolを調整するだけ。
これをFormのカスタムclass化しておけばForm毎に書く必要もない。
0445デフォルトの名無しさん
垢版 |
2019/07/13(土) 01:56:55.90ID:7P4pnQbe
Coreの方のWinformsだか忘れたけどソースにPerMonitorV2の処理が入ってるの見たな
動くのかは知らんけど
0446デフォルトの名無しさん
垢版 |
2019/07/13(土) 02:06:30.51ID:wLbo3yCa
>>443
レイアウト倍数に揃える時点で面倒だけど
Windows10の標準のスケーリングサイズは25%刻みだから4の倍数の方が都合が良い
0447デフォルトの名無しさん
垢版 |
2019/07/13(土) 03:10:50.07ID:82wAf4q1
>>446
爺がFHDのノートを125%とか150%にして使ってるだろ。
そうすると仮想解像度は1536*864とか1280*720になる訳だ。
1600*900の125%も1280*720。
だから1280*720対応が必要なんだよ。
0449デフォルトの名無しさん
垢版 |
2019/07/13(土) 06:01:54.50ID:bPr3gdFr
若者と老人の人形で延々と遊びたがっているやつって中身はどっちなんだろうな
0454デフォルトの名無しさん
垢版 |
2019/07/13(土) 12:18:47.98ID:N+VPDfLY
解像度の話なら、画面の大きさでダイナミックにレイアウト変更できるUWPが最強なんだけどね
縦置きにしたら邪魔になるパネルを下の方に移動とか自由自在
0457デフォルトの名無しさん
垢版 |
2019/07/13(土) 12:46:23.89ID:uYMBN7vu
業務アプリは解像度ほか動作環境を限定してしまっていい状況が多いからwinformsで十分かな
0459デフォルトの名無しさん
垢版 |
2019/07/13(土) 13:14:02.62ID:7P4pnQbe
縦置きってかウィンドウを縦長にした時とかの話じゃね
XAML上でブレークポイント設定してテンプレート切り替えるという単純なサポートはあるね
0460デフォルトの名無しさん
垢版 |
2019/07/13(土) 16:11:06.70ID:N+VPDfLY
例えば、しきい値より横幅が狭くなったら上部のツールバーを縦型に変更する処理などがXamlで書けたりする
0464デフォルトの名無しさん
垢版 |
2019/07/13(土) 17:29:06.39ID:EdaTEXa+
>>462
時代に取り残されたことを受け入れられないまま終わった技術に固執しているという点では、
もはやWinFormsもWPFも外から見りゃ大差ないけどな
さんざんそうやってWinFormsを煽ってきて、自らも煽られる側になったということだ
受け入れ難いかもしれないが、時代の変化というのはそういうもの
0465デフォルトの名無しさん
垢版 |
2019/07/13(土) 17:54:43.19ID:RwUYPbHu
WPF MahAppsを調査してるんですが、HamburgerMenuコントロールにEffectをつけると、コンテンツの内容すべてに、そのEffectが継承されてしまいます。HamburgerMenuのみにEffectをつけるには、XAMLでどう指定すればいいんでしょうか?

皆様のお力をお借りしたいと思います。
0466デフォルトの名無しさん
垢版 |
2019/07/13(土) 17:55:06.37ID:5nQhdEBd
無職が何かいろいろ勘違いしてるようだな。基本的な事実をおさらいしよう。

vb6 & winform 普及した。今後も保守しなきゃならないシステムがいっぱい。
wpf 普及に失敗した。保守しなきゃならないようなシステムなんてほとんどない。
0469◆QZaw55cn4c
垢版 |
2019/07/13(土) 18:18:08.34ID:KfP9prYE
>>468
エクセル VBA に移植すればいいだけなのでは?<VB6
0471デフォルトの名無しさん
垢版 |
2019/07/13(土) 18:49:10.68ID:sBwjlCef
よほどトラウマでもあるんだろうな…
まあコボラーも保守で食えてるみたいだからそういうのを目指すならいいんじゃね?
0473デフォルトの名無しさん
垢版 |
2019/07/13(土) 18:54:09.69ID:EdaTEXa+
>>470
何を今更
保守で必要ならWinFormsも使うし、新規なら当然Webを最初に検討するよ
今時Webできないとかさすがにあり得ないでしょ
0474デフォルトの名無しさん
垢版 |
2019/07/13(土) 19:03:02.63ID:5nQhdEBd
Winodws10は仕事に向かない。この失敗をMSは修正する気ないみたいだから、
もう新規案件はJavaでいいやって流れかな
0477デフォルトの名無しさん
垢版 |
2019/07/13(土) 19:06:33.81ID:gtVCL9Bz
>>474
その意見に対する素朴な疑問だと思うが・・・
次のPC OSは何?
WIN7とか先祖返りの話じゃないだろうな?
0479デフォルトの名無しさん
垢版 |
2019/07/13(土) 19:14:28.58ID:82wAf4q1
更新を機にPCを減らしてタブレットを入れるということは始まっている。
特定ソフト専用マシンがPCである必要がないから。
0480デフォルトの名無しさん
垢版 |
2019/07/13(土) 19:47:46.83ID:N+VPDfLY
>>465
MahAppの問題じゃなくてXamlの属性はカスケード式だからどうにもならん
素直にコンテント内に効果を打ち消すスタイルを設定するしか無い
0485デフォルトの名無しさん
垢版 |
2019/07/14(日) 08:28:37.45ID:VbZ1QWE/
タブレットOSの競争ではマイクロソフトが勝利した。一時はiPadがシェアを拡大したが、PCとしても使えWindowsが勝利した。

スマートフォンOSの競争ではGoogleのAndroidが勝利した。

アップルはまた没落が始まった。
0486デフォルトの名無しさん
垢版 |
2019/07/14(日) 08:31:03.76ID:VbZ1QWE/
それにしても言っていることが10年くらい前の話で変なスレッドですね。
0489デフォルトの名無しさん
垢版 |
2019/07/14(日) 11:52:09.45ID:Ok2aTYrS
Prism7の勉強法おしえてくれ〜〜
0491デフォルトの名無しさん
垢版 |
2019/07/14(日) 13:57:55.26ID:M/u7qcG6
>>489
コードビハインドスタイルでアプリ作ったことあれば、それをPrismでドリブンドライブに書き換えていけばいいだけでは?
テスト駆動、保守堅牢のためのPrismだで、、、
WinFormsでも、アプリ一本も作ったことなければ、まずはそちらから。
0494デフォルトの名無しさん
垢版 |
2019/07/14(日) 15:28:51.43ID:venUw3Sd
>>489
Prism.Unityが7で思いっきり変わっていて面食らったな
AutoFacなどの別のDIと同じように扱えるようにガワを乗せた感じ
とりあえずサンプル見て適当に作ればなんとかなるよ
0495デフォルトの名無しさん
垢版 |
2019/07/14(日) 22:04:50.82ID:Ok2aTYrS
>>491
MVVM素組みはやったことあるんで
>>494
Prism自体ちょこっとしかかじってないんですわ
何かチュートリアル的なものがあればなーって思ったんだけど
地道にやります、ありがとう
0498デフォルトの名無しさん
垢版 |
2019/07/17(水) 08:53:22.30ID:HNOfBFZz
>>497
カレンダーとグリッドはだいたい標準のやつが使い物にならないからな…。DataGridViewはいい線いってた気がするけど。カレンダーは自分で作った方が使い勝手がいいよ。一回作れば使いまわせるし。

>>494
俺が多用してた UnityBootstrapper はどこにいったんだ
0499デフォルトの名無しさん
垢版 |
2019/07/17(水) 10:25:13.46ID:KBlqeI/v
カレンダーってせめてググルのライブラリより優秀なのを用意してもらいたいな。
0500デフォルトの名無しさん
垢版 |
2019/07/17(水) 11:45:00.51ID:2Hm3sgUC
MSが標準として出せるようなレベルのWPFコントロールを作るのって無茶苦茶難しいんだよ
テンプレートを当ててL&Fを自由自在にカスタマイズできるようにしなきゃいけない
カレンダーのように高級なコントロールほどそのための抽象化が困難、というか事実上不可能だ
まあ典型的な「過剰な抽象化」だわな
その反省でUWPでは色々諦めたけど、今度はガチガチすぎて融通のきかないゴミになっちゃった
設計って難しいね
0504デフォルトの名無しさん
垢版 |
2019/07/17(水) 12:23:31.73ID:QuDmOW+q
あんま漁ったこと無いけどカレンダーやチャートってgithubに転がってないの?
そういうの漁ってれば標準化がいかに大変かわかりそうなもんだけど
どうせ無茶な要求に答えきれない代物しかでてこないのなら別にいらないかな
0505デフォルトの名無しさん
垢版 |
2019/07/17(水) 12:25:04.21ID:QuDmOW+q
>>504
いらないってのは標準としてはってだけでOSSでいろんな人がいろんなパターンで作ってるのは欲しいってことね
0506デフォルトの名無しさん
垢版 |
2019/07/17(水) 15:16:40.30ID:6lrMFPv6
カレンダーは昔のWin32の時代からコントロールあるだろ。
UWPにもあるし、WinUIでもNumberBoxが2.2でくるのかも
0507デフォルトの名無しさん
垢版 |
2019/07/17(水) 15:23:16.75ID:6lrMFPv6
ごめん、『カレンダー』ってスケジュールアプリつくるとき用の高度のやつか?俺が言ったの単に日付や時刻を選択するコントロールだな。
0511デフォルトの名無しさん
垢版 |
2019/07/19(金) 19:10:45.56ID:tEkSjkHY
winui 3.0でUWPの依存を排除してxaml islandなしでも動くようになるらしいが、これはクロスプラットなUIフレームワークへの布石なのか?
どうなってるのかよくわからん
0514デフォルトの名無しさん
垢版 |
2019/07/19(金) 19:44:45.25ID:41z+JSnH
迷走じゃなく正常化だろ
とちくるって最新の機能を誰も使ってないUWPにだけ開放してたんだぞ
上がバカだとこうなるみたいな話
0515デフォルトの名無しさん
垢版 |
2019/07/19(金) 21:31:30.10ID:uL87l19N
もうこの際デスクトップ案件でもElectronとかでHTML5で作るようにしたほうがいいかもしれんね
個人的にはC#と.NET好きだけど最近は迷走しすぎる
0516デフォルトの名無しさん
垢版 |
2019/07/19(金) 21:57:59.32ID:IuwL/lPH
WPFやWinFormsの.NET Core対応も全く将来のこと考えてない必要最小限の場当たり移植で、リリースしきったら逃げる気満々だしなあ
.NET CoreならSCDが可能だから後々MSが.NETのバージョンアップに合わせてメンテしなくて済むという判断なんだろうね
0517デフォルトの名無しさん
垢版 |
2019/07/20(土) 01:28:56.34ID:VkxS/ZoP
SCDて何?
0519デフォルトの名無しさん
垢版 |
2019/07/20(土) 10:23:19.05ID:FOqnxKm1
>>515
そこでWebBrowserControlだけ貼ったWinFormsアプリの出番ですよ。
JSからC#のメソッドfooが`window.external.foo()`で呼び出せるし、
"IE7相当なのでモダンな機能が使えない"問題もHTMLに
<meta http-equiv="X-UA-Compatible" content="IE=11" />
<script src="https://cdn.jsdelivr.net/npm/babel-polyfill/dist/polyfill.min.js";>
の2行をおまじないとして入れとけば大概何とかなるし。
0520デフォルトの名無しさん
垢版 |
2019/07/20(土) 11:35:17.39ID:D7d7RY7Z
とちくるって最新の機能を大して使われてないWPFに開放されてもだな
上がアホだとこうなるみたいな話
0524デフォルトの名無しさん
垢版 |
2019/07/23(火) 10:50:30.31ID:tzcmPjKI
WPF Prism RegionでReact.js並みにコンポーネント画面にしたらおせーー。 もっと早く描画できねぇの?
0525デフォルトの名無しさん
垢版 |
2019/07/27(土) 14:52:40.76ID:b7Cm9ptD
ObservableCollectionをConverterでバインドしたいけど、初期化した時ぐらいしか発火しないから使い物にならない。どうにか中身が変わっただけで発火させる方法ないですかね...?
0526デフォルトの名無しさん
垢版 |
2019/07/27(土) 15:40:22.98ID:h5zsNncy
>>525
多分リストそのものじゃなくてザムルでアイテムテンプレートを定義してその中でコンバーター指定するんじゃなかったかしら
0527デフォルトの名無しさん
垢版 |
2019/07/27(土) 15:45:12.63ID:WtYjh7O4
記憶が正しければ、ObservableCollectionはT型のINotifyPropertyChangedの面倒まで見ないので、自分で実装するしかないはず
誰かNugetで配ってるかもしれない
配ってないなら配ったら喜ばれるかもしれない
0529デフォルトの名無しさん
垢版 |
2019/08/02(金) 00:41:38.73ID:/oIAm+R2
ObservableCollectionをそのまま使うのは面倒臭いから
ReactivePropertyのReactiveCollectionクラスのObserveElementPropertyメソッドを使うかな
0533デフォルトの名無しさん
垢版 |
2019/08/11(日) 09:05:27.57ID:JRum2LCS
WinUIは.NETで使用できますが、.NETに依存しません:
WinUIは100%C ++であり、たとえばC ++ / WinRTを介して標準C ++ 17を使用するアンマネージWindowsアプリで使用できます。
0534デフォルトの名無しさん
垢版 |
2019/08/11(日) 09:06:01.03ID:JRum2LCS
悲報

WinUIは、毎月のプレリリースビルドで、毎年3倍の新しい安定バージョンを出荷し続けます。
0535デフォルトの名無しさん
垢版 |
2019/08/11(日) 09:13:35.93ID:JRum2LCS
WinUI 3.0は.netに依存しない
ネイティブ(c++)で開発されている

WinUI 2.0との下位互換性を目指すが.netを多用したWinUI2.0の成果は捨てられるということ?
0536デフォルトの名無しさん
垢版 |
2019/08/11(日) 09:20:41.05ID:JRum2LCS
WindowsネイティブでAPIセットが提供されるから.net 5と何の関係もないし
クロスプラットホーム化も関係ない
そのページで挙げられているクロスプラットホームの例はReact Nativeの話だし
0540デフォルトの名無しさん
垢版 |
2019/08/22(木) 18:56:25.41ID:pU45imAC
windows提供のコントロールクソダサイので独自にフレームワークでクールに描画しよう→WPF

OSの進化でいろいろ新しいことができるようになったけど
WPFは独自描画なので標準提供の機能は使えず更新待ち
0541デフォルトの名無しさん
垢版 |
2019/08/22(木) 21:56:56.39ID:XilWkWiH
MSのWPF放置プレイっぷりは異常
0543デフォルトの名無しさん
垢版 |
2019/08/22(木) 22:11:34.96ID:XilWkWiH
WPFを世に出してから今までの話な
WPFにこれからなんてあるのか?w
0544デフォルトの名無しさん
垢版 |
2019/08/22(木) 22:20:08.43ID:4dnF12St
今後はWinUIというUWPのガワを.netから使えるようにするらしいね
x:Bindは良いよ。早いってのは体感しにくいが、コンパイルでバインドがミスマッチだとコンパイルエラーにしてくれるのが
その代わり型は厳密に合わせないといけないけどね
0546デフォルトの名無しさん
垢版 |
2019/08/22(木) 23:24:45.63ID:wEC59Q0u
更に.net 5でAOTコンパイル(.net native)もUWP以外に広げるし。オプション扱いっぽいけど
未来は.netにある
0547デフォルトの名無しさん
垢版 |
2019/08/23(金) 01:29:35.65ID:OjH+fhDT
>>544
WinUI 3.0はc++で開発される普通のwindows API群
".netもからも" 使えるようにはなるが,netの技術じゃない

MSはもう一度c++技術者をかき集めてるようだが…
0550デフォルトの名無しさん
垢版 |
2019/08/23(金) 03:24:29.83ID:jW/xEJQG
ああ、>>546で俺がWPFとかでもAOTでコンパイル出来るようになると言ってると勘違いしたのか。そんな事全く意味してねぇ。
ちゃんと主語書くべきだったな。
最近、>>531でクロスプラットなUI Frameworkのsurveyしたように、
そこらへんまでの未来の道筋の話しをしただけ。
0551デフォルトの名無しさん
垢版 |
2019/08/23(金) 03:25:26.93ID:JgM7HU4F
・.NET Nativeが.NET 5に含まれるのかどうかについては今のところ特にアナウンスなし
・現在予告されている.NET 5のAOTは.NET NativeではなくMonoを利用する。スマホやタブレット、およびwasmがターゲット。
・.NET CoreがAOTをサポートする予定はない。

これが現状
0554デフォルトの名無しさん
垢版 |
2019/08/23(金) 03:40:19.37ID:jW/xEJQG
・現在予告されている.NET 5のAOTは.NET NativeではなくMonoを利用する。スマホやタブレット、およびwasmがターゲット。
monoを利用するってどこにかいてある?
0555デフォルトの名無しさん
垢版 |
2019/08/23(金) 03:52:54.34ID:jW/xEJQG
後謝るのは.net nativeと言うと特定の実装になっちゃうね。そこは悪かった。ネイティブコンパイルぐらいの意味で使っちゃった。

後俺が勘違いしてたのはmonoは将来的には捨てないのか?
流れとして.net core1本に絞っていくのかと思った。
0557デフォルトの名無しさん
垢版 |
2019/08/23(金) 06:02:43.36ID:OHqCa1Gp
WPFも放置だし、C#もオワコン臭があるし、Windows10は結局糞UIのままで
Win7ユーザは移行先もなくサポート終了して路頭に迷うし、やっぱりゲイツのいないMSはダメだな。
0558デフォルトの名無しさん
垢版 |
2019/08/23(金) 07:52:54.28ID:N/2u5JYa
あれ? .NET CoreはCoreRTでAOT実装してたんじゃ?

と思ってレポジトリ見てみたら統合という名のフェードアウトに向かっててワロタ
0559デフォルトの名無しさん
垢版 |
2019/08/23(金) 19:26:44.10ID:gHWVc4H3
>>557
C#はこれから伸びる
Blazorの生産性と品質が高すぎて衝撃を受けたよ
これから先の業務系WEBアプリはもう全部こいつでいいんじゃないかな
Java相互運用とJDK提供で旧資産も活かせる
0561デフォルトの名無しさん
垢版 |
2019/08/23(金) 23:30:08.88ID:jcW1Xhhm
>>557
C#はそんなにオワコン臭あるかな?
むしろ破壊的変更も含めて脱皮しつつあるように感じるが
0563デフォルトの名無しさん
垢版 |
2019/08/24(土) 00:46:53.15ID:O3nGBIXv
C#自体は一番好きな言語だが贅肉が付きすぎで新規さんにはつらいだろう
それに構文が古い
10年以上前から行末の;なくせとかさんざん言われてたけどヘジたんはもうこれで設計されたからと拒否
javaとも文法がかなりかけ離れてきたからするっとjavaから移動はしてこないだろうな

c++みたいなゴミでも新しい改変どんどん入れるようになったけど古い部分は古いままでとっつきにくさは変わらない
0565デフォルトの名無しさん
垢版 |
2019/08/24(土) 00:50:13.66ID:O3nGBIXv
新しい言語はどうやったら記述量を減らせるかと学習コストを減らせるかを重視してると思われる
バカに使える言語を目指せば自然と人気が出てくる
でもバカが書いたコードを日常的に目にしなくてはならなくなる
0566デフォルトの名無しさん
垢版 |
2019/08/24(土) 00:52:27.40ID:O3nGBIXv
>>564
C#は必要な記述量が多いしブロックなどで行を食うような書き方が一般的なのでコードの一覧性が低い
0567デフォルトの名無しさん
垢版 |
2019/08/24(土) 00:55:14.92ID:O3nGBIXv
GOはバカが書いたコードも普通の人が書いたコードでも同じように見えるような工夫がされている
俺は嫌いだがそういう考え方もあるということで
0568デフォルトの名無しさん
垢版 |
2019/08/24(土) 00:56:09.06ID:jVZ9wxLH
そういうのは実例示してくれないと
個人的には行末記号なし&改行OKの言語は気持ち悪くてイヤン
0569デフォルトの名無しさん
垢版 |
2019/08/24(土) 00:59:50.82ID:jVZ9wxLH
つーかここWPFのスレじゃんw
0580デフォルトの名無しさん
垢版 |
2019/08/26(月) 17:45:31.71ID:dI1F1hPt
普及させたいなら
Forms廃止して社内開発リソースをWPFに集中させるから
頑張って移行してね!
ってやればいいのに。
んでForms無くすならVB.NETも切っていいし
0583デフォルトの名無しさん
垢版 |
2019/08/26(月) 20:46:52.41ID:5hrkIwVX
WPFは既存の技術すべて置き換えるために作られたはずだけど
実際はそこまでのスケールじゃなかった

HTML VB6 winforms MFC
全部生き残ってしまった
0586デフォルトの名無しさん
垢版 |
2019/08/26(月) 21:25:24.89ID:wSbsYOJ/
WPFはライブラリの出来は良かったのにGUI周りの出来が悪かったのが痛かったな。
あまりに貧相であれじゃ客が納得しない。
0587デフォルトの名無しさん
垢版 |
2019/08/26(月) 21:26:09.78ID:01TaglzE
あなたのような優秀な方には簡単かもしれませんが、
わたしのような底辺にはわかりにくいのです
つまり広まりません
0588デフォルトの名無しさん
垢版 |
2019/08/26(月) 21:33:06.34ID:5hrkIwVX
>>586
何のことを言ってるかわからないけどWPFは半端だったのでいろんな機能をwinformsに頼らざるを得なかった
winformsを置き換えるものとしては実装が不足してる
0589デフォルトの名無しさん
垢版 |
2019/08/26(月) 22:10:15.41ID:/h3P8awM
>>586
WPFのコアな部分はレガシーなウィンドウシステムを捨てて再設計するんだってそれなりに気合い入れて作られてると思う。
だけど色々出来る分複雑になってるのに、それをラップしてユーザーがお仕着せで良いから楽に使えるようにする支援ライブラリ的なものが足りな過ぎたね。
標準のコントロールもFormにあるのは一通り押さえておけば、MVVM抜きならそれなりに簡単に使えるのに。
0590デフォルトの名無しさん
垢版 |
2019/08/26(月) 22:12:50.23ID:ij5Jd0yF
XAMLでわかりにくいならhtml&cssのデザインは地獄だろうな
XAMLがいかに親切か実感できるぞ
タグで囲むデザインはもう飽きたからもっとシンプルにしてほしいけど
JsonかYAMLで
0594デフォルトの名無しさん
垢版 |
2019/08/26(月) 22:29:08.48ID:Wx9nEB+f
>>589
ほんこれ
気合いの入れ方が中途半端すぎ
0595デフォルトの名無しさん
垢版 |
2019/08/26(月) 23:04:10.96ID:MCFEqLYy
一度に全部学ばないといけないからだろ。xaml,データバインディング,MVVMと。最初俺も死にかけたわ。

androidやりはじめたときはレイアウトファイルのxmlくらいだったから敷居は低かった。で、随分後にandroidもデータバインディングに標準対応して、順番にゆっくり学べるからな。
0596デフォルトの名無しさん
垢版 |
2019/08/26(月) 23:17:19.25ID:MCFEqLYy
かたや、WPFは一度挫折した後に作戦変えて最初はデータバインディングとかMVVMとか無視してアプリ作ってみようとしたが、ListViewとかItemsControl系はアイテムテンプレート使わねぇと仮想化できないし、
やっぱデータバインディングとかすぐに学ぶはめになったし。
0597デフォルトの名無しさん
垢版 |
2019/08/26(月) 23:27:56.52ID:GeaqRBlJ
データバインディング便利でいいじゃん。
表示とロジックを分離できて見通しがいい。
0599デフォルトの名無しさん
垢版 |
2019/08/26(月) 23:37:29.50ID:Wx9nEB+f
わかるわー、
MVVM慣れるとレガシーは面倒すぎる
0600デフォルトの名無しさん
垢版 |
2019/08/26(月) 23:49:45.08ID:MCFEqLYy
というより、MVVM学ぶ前は、ソフトウェアアーキテクチャ?みたいの意識しないで適当につくってたから今になってMVVM以外で作ろうとすると困りそう
0601デフォルトの名無しさん
垢版 |
2019/08/26(月) 23:56:16.79ID:Wx9nEB+f
あんた自分が勉強嫌いなだけじゃん
MVVM以前にもMVCやらデザインパターンやら
意識しないといけないものはいくらでもあったでしょう
0608デフォルトの名無しさん
垢版 |
2019/08/27(火) 19:04:49.63ID:bW2ePtKS
無理だろ
windowsとは何かと言えばwin32のAPI群とそれで作られたコンポーネントとサービスの塊だから
0613デフォルトの名無しさん
垢版 |
2019/08/29(木) 19:55:13.55ID:dwig1eJB
思い付いたアイディアコーティングして形になったらそれで興味は失せてしまう
品質とか興味無い
0615デフォルトの名無しさん
垢版 |
2019/08/30(金) 15:32:23.77ID:ERkIjfvr
>>607
もし奇跡が起きて.NET5が大成功したら、多くの.NETアプリはWebアプリとしてクラウド上のLinuxでホストされるようになり、
デスクトップのWindowsが単なるシンクライアントに成り下がる未来は来るかもしれない
万一そうなりそうだったら、MSは.NETを事実上Azureでしか使えなくするような縛りを入れてくるだろうけど
0618デフォルトの名無しさん
垢版 |
2019/08/30(金) 18:17:06.08ID:ERkIjfvr
>>616
.NET5が普及することが必ずしも.NET5の成功を意味するとは限らない
みんながVSCodeやRiderでC#を書いて、AWS上のLinuxサーバーで運用するようになったら、MSから見れば大失敗だ
そうなれば当然MSは.NET5を放棄することになるだろう
MSにとって利益になる形での普及が成功の条件となると、なかなか難しいよ
0620デフォルトの名無しさん
垢版 |
2019/08/30(金) 23:03:11.02ID:uONjY6PZ
>.NET5が普及することが必ずしも.NET5の成功を意味するとは限らない

.NET5の成功だろ
言いたいのはMSの成功を意味するとは限らないだろ
0621デフォルトの名無しさん
垢版 |
2019/08/30(金) 23:15:11.32ID:daE1ezev
OSSとはいえ特許があるから、MSが.NET Foundationから手を引いたら現実には開発の継続は不可能だよ
もちろん、MSは当然そんな最悪の結果にならないように技術面や政治面でコントロールするだろう
仮にそのコントロールが普及を妨げる性質のものであったとしてもね
0624デフォルトの名無しさん
垢版 |
2019/08/31(土) 00:39:06.27ID:jKcP7puA
>>614
GitHubはただ買収しただけだし
そもそもgitはライナスの作ったものだし…

vscodeはGitHubがatomエディタ作るために作ったエレクトロンに乗っかってるだけだし
MSはあまり貢献してない
0626デフォルトの名無しさん
垢版 |
2019/08/31(土) 01:12:59.59ID:UM0UH3ls
GitHubのプライベート数無制限もMSマネー後だしな
評価すべきところはちゃんとしなきゃね


とはいえモダンなGUIに追従できるポジションのフレームワークが
悉く壊滅し続けている惨状を埋め合わせるものではない、というか関係ない
0628デフォルトの名無しさん
垢版 |
2019/08/31(土) 08:19:57.96ID:BTqmdo6K
blazorってviewあたりはどうなってる?reactととかならmaterialやら色んなデザインのが今や豊富にあるけど。
0629デフォルトの名無しさん
垢版 |
2019/08/31(土) 08:32:47.45ID:BTqmdo6K
dartとflutterはhammingbirdでwebのフロントエンドに進出だし、desktop embeddingでデスクトップも。dartは現状クソだからmicrosoftさんには頑張ってもらいたい
0630デフォルトの名無しさん
垢版 |
2019/08/31(土) 09:29:29.38ID:DOQSWUJb
blazor触ったこと無いんだけどwebアプリってことはローカルファイルの操作とかは難しかったりすんの?
開発補助ツールとか作ったりすんだけど、そういうのはやっぱデスクトップアプリのほうが向いてるよね?
そういうのもblazorでできるならちょっと触ってみようかなって思うんだけど
0632デフォルトの名無しさん
垢版 |
2019/08/31(土) 10:27:14.18ID:OiY9nyzL
今はviewはRazorのままだな。WPFをcanvasとwebglでエミュレートするとかできたらいいのに。
0633デフォルトの名無しさん
垢版 |
2019/08/31(土) 18:02:22.42ID:Yn5v13ie
BlazorっていえばWebAssemblyだと思い込んでたけどサーバーサイドがあるのか
やば、乗り遅れてるわ
https://blog.okazuki.jp/entry/2019/06/11/135621
0635デフォルトの名無しさん
垢版 |
2019/09/10(火) 23:16:19.51ID:wxmv+p95
WPF+XamlIslandでUWPのコントロールを使うとき
スタイルをどうやって設定するかご存じの方いますか?
WPFプロジェクトだとUWPのXAML書けないです…
0636デフォルトの名無しさん
垢版 |
2019/09/19(木) 23:16:30.45ID:o/5TVM4E
ちょっと古い質問かもしれないんですが、WPFのプロジェクトを新規作成して Prism.WPF、Prism.Core、Prism.Unityをヌゲットで適用したんだけど Microsoft.Expressions.Interaction が参照に入らないのです
やりたいことは Xaml で ei:PropertyChangedActtion を使って View の Xaml だけで他のコントロールのプロパティを変えたい(ElementNameとTargetPropatyとかでできた記憶があります)だけなんですが、これはどこにいったんでしょうか。
0637デフォルトの名無しさん
垢版 |
2019/09/19(木) 23:20:27.73ID:o/5TVM4E
補足です。当時はヌゲットがなかったから Expression.Blend とかをインストールして参照設定の拡張アセンブリから選んで使ってたと思います
0640デフォルトの名無しさん
垢版 |
2019/09/26(木) 17:08:59.96ID:RqohR87j
MediaElementなどを実装したUserControlを
MainWindowでItemsContrlを使用し複数表示しました。
その中の1つが選択されたときWindowいっぱいに広げたいのですがどうすればできますか?
ViewModel側で選択されたUserControlは取得できています。
0641デフォルトの名無しさん
垢版 |
2019/09/27(金) 00:31:03.92ID:zANlzt+z
>>640
UserControl(View)をViewModelから参照するのはMVVMに反してるからオススメしない。
ItemsControのSelectedItemプロパティと選択中のViewModelとがバインディングできてるなら、
選択後にViewModelで全画面表示用のプロパティに値を設定すれば良い。
そのプロパティ値が変化したときにどうやってUserControlを全画面表示するかは、純粋にView(XAML)の問題だ。
0642デフォルトの名無しさん
垢版 |
2019/09/27(金) 12:08:12.14ID:u+iGcBJm
>>641
やはりViewModelでUserControlを参照するのはマズいですよね。
プレイヤなので再生中の状態がそのままコピーされるとよいのですが。

全画面用のUserControlにどのプロパティを設ければよいでしょうか?
動画パスや再生時間を渡して読込からやらせるしかないですかね?
0643デフォルトの名無しさん
垢版 |
2019/09/27(金) 23:54:36.27ID:fjlgNlFb
ItemsControl上でも再生とか停止ができて、選択したらWindowいっぱいにしたい感じ??
0645デフォルトの名無しさん
垢版 |
2019/09/28(土) 14:31:06.45ID:7KAMFGQE
拡大されてるムービーがどれかっていうのが、アプリのロジックに関係ないならクリックのイベントハンドラで書くのでいいんじゃないかな
ItemsControlから画面いっぱいにひろげる方法は知らないんだけど、そういうパネル作るののかな?
0649デフォルトの名無しさん
垢版 |
2019/09/28(土) 23:32:48.35ID:dmYXSMEs
UWPならMediaElementにIsFullWindowってプロパティーがあって問答無用でフルスクリーン表示にできる
あと、ConectedAnimationつかえるんだがな
0654デフォルトの名無しさん
垢版 |
2019/10/02(水) 21:41:52.01ID:akptwudD
>>653
やはりそうなの?
調べたらそれっぽいこと書いてあった

Microsoft.Toolkit.Wpf.UI.ControlsのMediaPlayerElementを使ってみたのだが
Sourceにバインドしても再生されない
Xamlに直接書くと再生されるのだが…
0655デフォルトの名無しさん
垢版 |
2019/10/09(水) 14:09:07.32ID:0y9ABYBv
.Net Core 3.0のWPFのユーザーコントロールのデータバインディングに関して質問なんですが、
MainWindow.xaml.csのコンストラクタ内でPrice=1000と代入しているのですが
TextBoxのText(Value)の値が0から変化しないのですが、どこが間違っているのかわかる方いますか?
テキストボックス内にカーソルを合わせて上下キーを押すと1ずつ増える/減るの動作は正しく動いているようです。
DecimalBox.xaml
<UserControl x:Class="test.DecimalBox" ...>
<TextBox Text="{Binding Value}" PreviewKeyDown="TextBox_PreviewKeyDown"/>
</UserControl>

DecimalBox.xaml.cs
namespace test
{
/// <summary>
/// DecimalBox.xaml の相互作用ロジック
/// </summary>
public partial class DecimalBox : UserControl
{
public DecimalBox()
{
InitializeComponent();
DataContext = this;
}
public decimal Value { get { return (decimal)GetValue(ValueProperty); } set { SetValue(ValueProperty, value); } }
public static readonly DependencyProperty ValueProperty = DependencyProperty.Register("Value", typeof(decimal), typeof(DecimalBox));
private void TextBox_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Up ) Value += 1;
if (e.Key == Key.Down) Value -= 1;
}
}
}
0656デフォルトの名無しさん
垢版 |
2019/10/09(水) 14:09:33.92ID:0y9ABYBv
MainWindow.xaml
<local:DecimalBox Value="{Binding Price}"/>

MainWindow.xaml.cs
namespace test
{
/// <summary>
/// MainWindow.xaml の相互作用ロジック
/// </summary>
public partial class MainWindow : Window, INotifyPropertyChanged
{
public MainWindow()
{
InitializeComponent();
DataContext = this;
Price = 1000;
}
public decimal Price
{
get { return price; }
set { price = value; PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("PriceData")); }
}
public event PropertyChangedEventHandler PropertyChanged;
}
}
0657デフォルトの名無しさん
垢版 |
2019/10/09(水) 14:19:23.75ID:0y9ABYBv
以下の部分コピペミスです
set { price = value; PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("PriceData")); }

正しくはこうなってます
set { price = value; PropertyChanged?.Invoke(this, new PropertyChangedEventArgs("Price")); }
0658デフォルトの名無しさん
垢版 |
2019/10/09(水) 14:36:41.74ID:0y9ABYBv
ちなみに、以下の部分を
MainWindow.xaml
<local:DecimalBox Value="{Binding Price}"/>

以下のようにするとTextBoxの値は1000になります
MainWindow.xaml
<local:DecimalBox Value="1000"/>
0659デフォルトの名無しさん
垢版 |
2019/10/09(水) 15:38:14.92ID:zdauYmXS
<local:DecimalBox Value="{Binding Price}"/>においてデータコンテキストは
DecimalBoxのコンストラクタで設定されてるDecimalBox自身
DecimalBoxにPriceなんてプロパティは無いのでバインディングに失敗する

ユーザコントロール自身ではなく、その直下にGridとかのパネル置いてそれのDataContextに設定するようにする
0660デフォルトの名無しさん
垢版 |
2019/10/09(水) 16:14:04.43ID:0y9ABYBv
>>659
以下に変更したら動作しました。ありがとうございます。

cs側
public DecimalBox()
{
InitializeComponent();
textbox.DataContext = this;
}

xaml側
<TextBox x:Name="textbox" Text="{Binding Value}" PreviewKeyDown="TextBox_PreviewKeyDown"/>

もう一つ質問なのですが、
DataContextの設定を今はcs側でやっていますが、
これをxaml側で行うことって可能なのでしょうか?
0661デフォルトの名無しさん
垢版 |
2019/10/09(水) 16:24:35.37ID:0y9ABYBv
>>660

自己解決しました
RelativeSource FindAncestorでUserControlまで遡ればよかったみたいです。

<TextBox DataContext="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl}}" Text="{Binding Value}" PreviewKeyDown="TextBox_PreviewKeyDown"/>
0662デフォルトの名無しさん
垢版 |
2019/10/09(水) 19:13:21.44ID:Ce1FE6BG
>>659
> DecimalBoxにPriceなんてプロパティは無いのでバインディングに失敗する
こう言う時は実行時でもいいから例外発生させるなりしてくれればいいのにね
0663デフォルトの名無しさん
垢版 |
2019/10/09(水) 19:46:19.00ID:yz69DB70
Binding失敗してるとデバッグログとかにメッセージ出なかったっけ?
0664デフォルトの名無しさん
垢版 |
2019/10/09(水) 19:58:14.79ID:0fRzc22C
デバッグログに出るけど他にメッセージが多いと見落としがち
WPFにもx:Bind欲しい
0667デフォルトの名無しさん
垢版 |
2019/10/09(水) 22:16:15.27ID:mYLA6NTy
ないない
なんか勘違いしてるようだが、MSがWPFをCoreに移植したのはメンテナンスをしたくないからだよ
今後.NETランタイムがアップデートされてWPFが壊れても、Coreなら開発者は自己責任で古いランタイムをずっと使い続けることができる
0671デフォルトの名無しさん
垢版 |
2019/10/09(水) 23:31:18.85ID:bHkpFlre
WPFは.netframework+WinUIと入れ替わる予定じゃないかな
xamlソリューションとしてはこっちのほうができが良い
0674デフォルトの名無しさん
垢版 |
2019/10/10(木) 20:23:18.39ID:MeoT4exf
winui 3.0で新規に書き起こすんだから今なら下位のレイヤー取り替えられるようにするんじゃねぇかな?つまり、windowsから簡単に切り離せるように。
0675デフォルトの名無しさん
垢版 |
2019/10/11(金) 19:38:07.79ID:NbTMQOfE
もともとwindowsの機能に依存したUIにすると思う
下位を汎用にすると設計が大変だから
0676デフォルトの名無しさん
垢版 |
2019/10/11(金) 20:17:33.23ID:Mh9N3tse
下位を汎用にした結果がWPFの大失敗だもんな
まあWPFが下位に抽象化レイヤを入れたのは移植性を高めることではなくて自由度を高めるためだけど、
結局出来上がったのはゲロ遅くて無駄に複雑でMSによるアップデートも遅いゴミ
WinRT以降のOS側で高レベルなUIコンポーネントを提供する戦略は少々行き過ぎてる気もするけど、
少なくとも今更WPFの黒歴史を繰り返すことはないだろう
0678デフォルトの名無しさん
垢版 |
2019/10/12(土) 02:58:35.99ID:VvRjKpAi
下位を汎用ってもflutterだってやってることだしな。描画エンジンの部分と入力を汎用化するだけで、googleエンジニアが出来てMicrosoftのエンジニアができないとな?

もちろん、それなりの手間が発生するが。
0679デフォルトの名無しさん
垢版 |
2019/10/12(土) 03:11:46.71ID:SBuCcucL
でもデスクトップPCそのもののシェアが減ってる現状で下位を汎用化してマルチプラットフォームにする価値あるか?というと怪しい気がする
0680デフォルトの名無しさん
垢版 |
2019/10/12(土) 08:34:07.80ID:T5dO8LiA
下位に抽象化レイヤを入れたGUIフレームワークとしては既にElectronが成功を収めている
今更作る意味はないよ
0682デフォルトの名無しさん
垢版 |
2019/10/12(土) 08:44:21.47ID:VvRjKpAi
WinUIはFluent Design Systemのライブラリだし、別にタッチ専用という訳じゃないけど、クロスプラットホーム化狙うなら、まずはUWP/Android/iOSでしょうに。

WinUIはただのUIライブラリだから、プラットホーム特有のAPIも簡単に呼べるようにならんだが。
https://devblogs.microsoft.com/dotnet/introducing-net-5/
.net coreにもjava/swift interopelabilityが予定されてるし。
0684デフォルトの名無しさん
垢版 |
2019/10/12(土) 08:53:16.39ID:VvRjKpAi
まぁ、俺はflutterに乗っかりつつあるけど、Microsoftはやる気あるなら急がんと。googleのflutterへのやる気すごい。
0687デフォルトの名無しさん
垢版 |
2019/10/12(土) 21:11:44.74ID:fKbeXMkP
Webブラウザは明らかにPALと見做せるだろ
しかも対応するする詐欺ではなく既に各プラットフォームに実装が存在する
0688デフォルトの名無しさん
垢版 |
2019/10/13(日) 20:08:26.73ID:g3zENVi8
PAL (曖昧さ回避)

PAL方式 - アナログカラーテレビ規格
Pilot Activated Lighting - 飛行場の灯火に関するシステム
フィリピン航空のICAO航空会社コード
プログラマブルロジックデバイス (Programmable Array Logic)
年間熱負荷係数 (perimeter annual load) - 建物の省エネルギーの指標
パレスチナ自治区の旧FIFAコード
江釣子ショッピングセンター パル
0693デフォルトの名無しさん
垢版 |
2019/10/14(月) 20:28:57.08ID:ZDEVVSo/
>>690
INotifyPropertyChangedの実装をネットで拾ってくれば数十行のコピペで行ける
嫌ならライブラリなど使わなくてもいい
0694デフォルトの名無しさん
垢版 |
2019/10/14(月) 21:17:15.84ID:PUjSeEPC
オープンソース化したらソースが見れるからとドキュメントを書かなくなり、
ユーザもテスト丸投げで品質が下がって
誰も使わなくなって誰も保守しなくなるパターンはいっぱい見てきた。
0695デフォルトの名無しさん
垢版 |
2019/10/14(月) 22:25:51.44ID:xbNYMWcX
PrismとかReactivePropertyみたいなもんを
汎用化してフル機能で実装するのは難しいかもしんないけど
必要な範囲を作り込むだけなら現実的な工数でできるんじゃないかな
0697デフォルトの名無しさん
垢版 |
2019/10/15(火) 09:54:14.02ID:uXTdmEH6
今回のSDK更新でUWPDESKTOP完全に逝った? BLE等々使えなくなってるんだけど、、、
0699デフォルトの名無しさん
垢版 |
2019/10/28(月) 08:03:50.83ID:Q9FrB4sN
.NET Core 3.0 のリリース以降はコミットも激減してるね
順調に終了に向けて畳みに入ったようだ
0704デフォルトの名無しさん
垢版 |
2019/10/29(火) 09:12:27.78ID:5yTsnrxf
MS自身が終わったと公式にアナウンスしていないプロダクトが半端に世に残り続けるのは
良かったどころか地獄に巻き込まれかねんがな
0706デフォルトの名無しさん
垢版 |
2019/10/29(火) 19:46:47.87ID:wj5iFmjc
wpfけなしてるのって
winformしか分からない低スキルおじさんと思ってんだけど偏見だろうか
0708デフォルトの名無しさん
垢版 |
2019/10/29(火) 20:02:44.28ID:r3tx6fiI
それってとても重要なこと。低スキルには使えないなんて、
フレームワークとして致命的な欠陥品、ゴミと言わざるを得ない。

馬鹿でも使える、Delphi、VB6、C#+winformのユーザを取り込めるはずがない。

キミはwpf使えるおれ高スキルと自惚れてたようだが、実はこのスレでキミが一番滑稽だったんだよ。
0710デフォルトの名無しさん
垢版 |
2019/10/29(火) 20:17:06.23ID:YCAuRgWu
低レベルかどうか以前に使いにくい
listboxのアイテム右クリックして操作するのが非常にめんどくさい

ancestorのbindingとか見ると非常に汚いしこんなもん使いたくないけど使ってる
0712デフォルトの名無しさん
垢版 |
2019/10/29(火) 20:36:27.81ID:YCAuRgWu
RelativeSource FindAncestor, AncestorType={x:Type Window}

これが汚い
これが平気で使えるのは頭おかしい

データ構造で親クラスのコレクションにアイテムがあったと言うことにだけ依存して親にアクセスするならわかるが
Type Windowと言う変な依存を作ってしまうのが汚い
0713デフォルトの名無しさん
垢版 |
2019/10/29(火) 20:42:22.81ID:YCAuRgWu
元のデータ構造に依存してデータ操作するならわかるんだけど
GUIのオブジェクトの構造に依存してまたそこからDataContext参照してそこでまた型が違うかもしれないものに対して
平気でアクセスしてしまう異常性

WPFは汚いよ
仕組みを作るべきだった
0717デフォルトの名無しさん
垢版 |
2019/10/31(木) 14:51:30.77ID:lA+PWvZ+
vb6でもwinformsでもwpfでもuwpでもelectronでも何でも自分の用途にあってればいいわけで、テクノロジーや、それを使う人をdisったりする理由にはならないと思う

サポート切れてるのは新規採用は自分ではしないかなというくらいで後は好きなの使えばいい


そして俺はWPF好き
0719デフォルトの名無しさん
垢版 |
2019/11/01(金) 08:29:04.64ID:luUnrp0t
>>712-713
> RelativeSource FindAncestor, AncestorType={x:Type Window}
> これが汚い
> これが平気で使えるのは頭おかしい
それなー

> データ構造で親クラスのコレクションにアイテムがあったと言うことにだけ依存して親にアクセスするならわかるが
いやいやそれは逆にビューがデータ構造に依存しちゃうからまずいでしょ

> Type Windowと言う変な依存を作ってしまうのが汚い
型で検索すると言うのが気持ち悪い
なぜビュー内の名前で参照できるようにしなかったんだろう?
0721デフォルトの名無しさん
垢版 |
2019/11/01(金) 08:48:22.65ID:hqW7WiA1
>>719
別ファイルでDataTemplate定義してたりしたら使えないけど、ElementName使って名前で参照も出来る場所もあるよ
0723デフォルトの名無しさん
垢版 |
2019/11/01(金) 13:47:06.36ID:BwGO0cqt
.net coreでグラフ画像を作る方法ある?
chartコントロール使えなくなったから、新しいやり方知りたい
0724デフォルトの名無しさん
垢版 |
2019/11/01(金) 20:19:46.78ID:TtiCw1tS
そういうジャンルはHTMLにもう任せてしまえば楽なんだけどなあ
jsのライブラリを使えれば一番楽だしGUI操作などもインタラクティブに行える
大量の人間が常に開発を続け最新のトレンドを自分の製品に取り込める

けどWPFなんでしょ?
これからもJSと比べるとライブラリ大幅増の希望もないけどWPFなんだよね
0726デフォルトの名無しさん
垢版 |
2019/11/01(金) 20:25:10.00ID:TtiCw1tS
これからもOSSのライブラリ依存の状況は進んでいくだろうけど
そういうプロジェクトでユーザーや開発者が多いのはjsなんだ
最先端で使いやすいものを取り入れようとするとC#+WPFは選択から外れる

ごく限られた環境で使うときにWPF+MVVMは使いやすい
しかし実際にアプリを作ると使いたいライブラリがなくあっても貧弱で古い事が多い
0727デフォルトの名無しさん
垢版 |
2019/11/01(金) 20:30:59.87ID:TtiCw1tS
WPFを使うのは自分が開発しやすいからであるが特定の最新機能などを使おうとすると
OSSが無かったり貧弱であったりしてまあ思い通りのアプリが作れないことがある
そういうのは個人ではどうにもならないレベルだったりするんだよね

自分が開発しやすいから選んだはずなのに実際はしやすくない

いつか誰かが作ってくれるのを期待して待つかそこだけ他の技術に頼るか

それかあきらめるか
0728デフォルトの名無しさん
垢版 |
2019/11/01(金) 20:43:54.06ID:TtiCw1tS
ヘタするとWPFで開発十数年の人が作ったWPF上のグラフアプリより
入門三日目のhtml+jsの作ったグラフアプリのほうが評価が高くなるかもしれない

そしてwebアプリは3日で出来てWPFは一か月かかるかもしれない
これからどう生きていくかは自分で選択してできるだけ狭い世界に閉じこもらないようにしないと環境と一緒に死んでしまう
0729デフォルトの名無しさん
垢版 |
2019/11/01(金) 20:46:57.03ID:EqckBJhH
いやjsのほうが人選ぶだろ
型なし言語をスキルない奴に触らせると地獄
これからはBlazorな!
0730デフォルトの名無しさん
垢版 |
2019/11/01(金) 20:51:28.94ID:TtiCw1tS
ユーザーの目が肥えて期待される機能の完成度のハードルがあがっていくと
高機能のありものを使うしかない

WPFに限らずC#に高機能な既製品が少ない
0733デフォルトの名無しさん
垢版 |
2019/11/01(金) 21:05:47.08ID:esyAMMm3
>>731
もう夢は終わったんだよ。WPFは消える。だがキミの仕事は安泰だ。
WPFの保守案件はWPFマスターのキミが独占できる。コボラーと同じ身分だ。
0734デフォルトの名無しさん
垢版 |
2019/11/01(金) 21:12:23.60ID:TtiCw1tS
自分がWPF使ってるのはGUIデザインがやりやすいからでHtml+CSSは理解できないししたくない
自分が使いやすいから使ってる

トータルで優秀だとは思えないが自分の好みで使ってる
いつか死ぬのは見えているでも使ってる
愛があるとかじゃなく今自分のレベルで使えるのがWPFだから使ってる
使える部分だけ使ってる
0737デフォルトの名無しさん
垢版 |
2019/11/02(土) 17:54:38.37ID:akoaid8M
スレチだったらすみません
グラフ(データプロット)と表を並べるGUIを作りたいんだけど、最近のGUIプログラミングって、どの言語がおすすめ?
楽に覚えられてチャラいデザインにできたら御の字です
C#、MATLAB、Pythonは扱えますが、GUIプログラミングのことはよく知らないもので……
0739デフォルトの名無しさん
垢版 |
2019/11/02(土) 19:10:48.46ID:FxhpmPNy
俺はプログラムができてオシャレな物作れるんだぞと言うのをアピールしたいなら
java scriptがおススメ
0740デフォルトの名無しさん
垢版 |
2019/11/02(土) 19:15:30.51ID:FxhpmPNy
俺はデータサイエンティストだぞというのをアピールしたければpythonがおすすめ
メジャーなグラフアプリもある
0745デフォルトの名無しさん
垢版 |
2019/11/03(日) 16:29:59.14ID:kVBOYkVG
他人が書いたWPFコードは(>>744みたいな無能には)読めたものじゃないな。(>>744みたいな無能には)保守性ゼロ。
当たり前やなw
0747デフォルトの名無しさん
垢版 |
2019/11/03(日) 17:55:02.22ID:leaAuATv
これから.net frameworkと.net coreが統一されるというが実質は.net frameworkが捨てられるだけ
皆が.net coreに移るわけじゃないから結果として.net軍団は二分される

ゲームでunityに流れ込む人は多いけどWPFに流れてくる人は大幅に減ると思う
0748デフォルトの名無しさん
垢版 |
2019/11/03(日) 18:39:05.65ID:YzgyorL1
まあWpfフェードアウトしてUWPのWinUIベースになるのは予想できるね
基本的にはWpfとほぼ同じでx:Bindなどの拡張があるから良いと思うよ
WpfにできてWinUIに出来ないこともあるけど、UIタスク以外からコレクションイジられるようになればいいけどな
0749デフォルトの名無しさん
垢版 |
2019/11/03(日) 20:08:32.81ID:+IMA5W8O
プログラミングのモデルをがらっと変えてくるのはともかく
性能や機能面で以前より劣るものをこれからの主流で御座いと押し付けてきた挙句
そのへんロクに改善せずに開発者の移行も進まず以前のフレームワークもダラダラとサポートし続ける
WindowsのGUI方面はWin8から今まで5年以上は時間と金をドブに捨てとるわ
0750デフォルトの名無しさん
垢版 |
2019/11/03(日) 21:43:31.62ID:6/YkgK4q
正しい方向へ戻っただけだと思うけどね
Windows作ってる会社自身が、Windowsの進化が遅いから箱庭方式のフルスクラッチでOSから独立したGUIフレームワークを作るわーなんて言ってたんだぞ
糖質かよ
0751デフォルトの名無しさん
垢版 |
2019/11/04(月) 00:35:03.18ID:ViGCTZCn
MSの誰がそんなこと言ったんだ?
だいたいこんなゴミフレームワークですら叩くと信者がワラワラ出てくるがそいつらが本当の糖質だろ。
技術的な話題には一切入ってこない低スキルなのに。
0752デフォルトの名無しさん
垢版 |
2019/11/04(月) 01:41:28.60ID:uqYdx4m2
どうも、Microsoftのこれからの方向性
この1年で大きく変化しているのを理解できていない投稿が
多いように見受けられんだけど。
来週のIgniteを楽しみにしよう。
0753デフォルトの名無しさん
垢版 |
2019/11/04(月) 02:18:54.05ID:B36l93jf
MSのこれからの方向性?
「Azure全振り」だ
デスクトップアプリなんて商売としては最早どうでもいい分野であり戦略もクソもないよ
0757デフォルトの名無しさん
垢版 |
2019/11/04(月) 16:56:18.36ID:ViGCTZCn
過去ログも含めてこのスレの大半はWPFの悪口だが、
このようにWPFをゴミと言うだけで信者が顔真っ赤に絡んでくるから注意な。
0760デフォルトの名無しさん
垢版 |
2019/11/04(月) 18:30:40.97ID:ViGCTZCn
昔は普及したかと確認する奴もいたが今はそれすらおらず、MSも匙を投げたようだ。
GUIフレームワークの話には入らないが必死に煽るレスだけは必死の ID:7wrIz40y みたいな奴のレスが残りの半分だな。
0762デフォルトの名無しさん
垢版 |
2019/11/04(月) 19:43:13.47ID:ViGCTZCn
>>761
だからこっちは質問してんだよ。
質問に答えれないのになんでいちいちおれを煽るかね? まじ糖質だな。

MSの誰が言ったんだ? ヘジか? シノフスキか?
答えれないなら二度とおれにレスすんな、糖質野郎。
0765デフォルトの名無しさん
垢版 |
2019/11/04(月) 21:06:42.71ID:pMpWm31L
WPFが復権すると勘違いしてるやつらがいるんだよ
そもそもがメインストリームとして普及したこともないのに
winformsの方がまだ普及してた
0766デフォルトの名無しさん
垢版 |
2019/11/04(月) 21:10:05.13ID:mg/MfEhw
まだプレビュー品質だけどReact NativeをUWPに埋め込む機能をXAML IslandsでWPFに埋め込めるから、JSでやったほうが楽なものはそっちでやれるようになる日が、そのうちくると思う
0768デフォルトの名無しさん
垢版 |
2019/11/05(火) 16:20:02.41ID:+CgvG+1/
https://devblogs.microsoft.com/visualstudio/all-things-developer-tools-at-microsoft-ignite/

> XAML code editor pop up, merge resource dictionaries and more
> In this release there are multiple new features for desktop developers building WPF or UWP applications.
> One such feature is the ability to open the XAML code editor window separately from the XAML designer using our new “pop up” button next to XAML tab:
くらいかな
WPFの話は

あまりの注力度に腰を抜かしかけた
さすがMicrosoft
0769デフォルトの名無しさん
垢版 |
2019/11/05(火) 17:19:07.50ID:9cwA4daT
>>767
wpfとかで作ってるんだけど、このuiはJSならすぐできるのになぁ…というとき用を想定してた
0771デフォルトの名無しさん
垢版 |
2019/11/05(火) 20:14:08.87ID:C/ZEDMBc
>>769
誰やねんWPF採用したアホ、、、今更オワコン勉強したないしどないしょ、、、せや!Reactがあるやん!
こうだぞ
0773デフォルトの名無しさん
垢版 |
2019/11/06(水) 18:40:18.34ID:IJpGwucR
prsim のサンプルで
using Microsoft.Practices.Unity;の部分が

型または名前空間の名前 'Practices' が名前空間 'Microsoft' に存在しません (アセンブリ参照があることを確認してください)。

アセンブリの参照追加にもそれらしい名前がない
どうしたらサンプル使えるのか誰かおしえてください
0775デフォルトの名無しさん
垢版 |
2019/11/06(水) 20:04:32.13ID:fi/5YPdO
チュートリアルの手順通りにやればできるよ
何かをすっ飛ばしてるか異なるバージョン環境か
0776デフォルトの名無しさん
垢版 |
2019/11/06(水) 20:14:58.60ID:IJpGwucR
最初にPrism Template Packをインストしてその後nugetでunityはいれました。
参照にprism.UnityやUnityがあるのですが
ダブルくりっっくすると
このプロジェクトは、利用不可能か、またはビルドされていないため、オブジェクト ブラウザーで表示できません。プロジェクトが利用可能でビルド済みであることを確認してください。
一応ビルドはしているけど↑のメッセージがでるのは普通なのだろうか?
最新バージョン環境だと駄目なのかな
0777デフォルトの名無しさん
垢版 |
2019/11/06(水) 20:17:28.46ID:fi/5YPdO
VS2019の最新で開発してるけど問題ないよ
プロジェクト作るところからprism選択するけどそのへんもちゃんとした?
0778デフォルトの名無しさん
垢版 |
2019/11/06(水) 20:29:58.70ID:9VJ5I3NB
>>776
prismは7で大きく変わっているから、nugetする時バージョン下げないと動かないサンプルあるかもしれんね
0779デフォルトの名無しさん
垢版 |
2019/11/06(水) 20:30:27.16ID:IJpGwucR
新しいプロジェクトの作成で
Prism Blank App(.Net Core3)
Prism Blank App(WPF)
両方試したけど同じエラーメッセージがでます
WPFはフレームワーク4.8 4.72 4.6と試してみたけど同じだった
0780デフォルトの名無しさん
垢版 |
2019/11/06(水) 21:03:36.56ID:IJpGwucR
参考にしようとしてたところがPrism6.3でやってたようなので
公式のサンプルをまず参考にしてみます
0781デフォルトの名無しさん
垢版 |
2019/11/06(水) 21:18:46.92ID:fi/5YPdO
なぜ人は質問時にバージョンを明記しないしチュートリアル参考時にバージョンを確認しないのか
0782デフォルトの名無しさん
垢版 |
2019/11/06(水) 23:50:56.66ID:iZKL+aCc
WPFのスレあったんだね

<gridpanel>
<label>タイトルバー</label>
<textbox />
<stackpanel>
<button/>
<textbox/>
</stackpanel>
</gridpanel>

みたいな構成のコントロールがあるんだけど
タイトルバーをドラッグしたらcanvas上で移動するようにするには
どうしたらいいんだろう?
何かヒントをもらえると助かります
thumbでやろうとしたけど使い方がよくわからず
上手くいきませんでした…
0784デフォルトの名無しさん
垢版 |
2019/11/07(木) 18:32:16.09ID:X6meMw3h
動かせたとして今時点の希望の動作が通常の使用に充分な物とは感じられないと思う
canvasの中だけしか動かないのは非常に不都合だろう
0786デフォルトの名無しさん
垢版 |
2019/11/08(金) 18:44:46.91ID:d+a2qUuR
なんとなくcanvas上で動かしたいんだろうと思う
canvasなんて狭いしスクロールとかの制御も厳しい

実際に使うとゴースト出せて動かせるほうが絶対いい
0787デフォルトの名無しさん
垢版 |
2019/11/16(土) 15:42:14.29ID:+CnVgCxY
VS2019で、WPFプロジェクトを作って、MainWindow.xamlに対してデザイナを開き、
ツールボックスから「すべてのWpfコントロール」からメニューというものを
ドラッグ&ドロップしてみたのですが、普通のWindowsアプリのようなメニュー項目
にはなってくれませんでした。
FormアプリだとMenuStripなどで簡単に出来たのですが、WPFだと同様には
できないのでしょうか?
0789デフォルトの名無しさん
垢版 |
2019/11/16(土) 19:07:21.14ID:SnLvTGtj
winformsはデザイナが親切で楽に作れるんだよ
WPFは知識ないと無理
ググってやるしかない

.net core版WPFだとさらにデザイナすら整ってない
0791デフォルトの名無しさん
垢版 |
2019/11/16(土) 20:35:03.99ID:cIlNnlO0
普通のwpf使いはxamlを直接書くから気にならないんだよな
アニメーションの設定でBlend使ったりは駿河
0793デフォルトの名無しさん
垢版 |
2019/11/16(土) 21:36:31.61ID:SnLvTGtj
MSの人は目玉になりそうなものでこう決まったとなれば何でもかなりかっちり作ってくる
手間暇かけても作る
(blendもVSと別ソースで作ってたらしいけど)

逆に普段使いであれば便利だなと思うものはほぼ作られない
何年たとうがかわらず作られない
上からの指示がないんだろうなと思う
0794デフォルトの名無しさん
垢版 |
2019/11/16(土) 21:53:02.01ID:+CnVgCxY
>>788
単刀直入に言ってしまえば、メニューという名前が付いてますが、
パソコンの世界で伝統的に「メニュー」と呼ばれているものにはならないのです。
0795デフォルトの名無しさん
垢版 |
2019/11/17(日) 00:29:49.56ID:RwF92niu
>>793
最近はAzureの糞サービスの乱発で一概に品質が高いとは言えなくなりつつあるけど、
やっぱりスタンドアロンなソフトウェアに関してはMSの開発力は神がかってるよね
Googleと違ってゴミもそれなりに綺麗に仕上げてくるから、泥舟を回避しづらいのが難点ではある
0796デフォルトの名無しさん
垢版 |
2019/11/17(日) 00:37:49.46ID:jUhE2Dju
ドキュメントを碌に整備しなくなってからがMSの衰退の始まり。
昔からのルール破ってコード書かない人がプロジェクトリーダーになるようになったから
軽視するようになったんだね。
0797デフォルトの名無しさん
垢版 |
2019/11/17(日) 02:04:26.01ID:5dwJkF8Y
https://www.reddit.com/r/dotnet/comments/bmq1py/is_wpf_going_to_be_cross_platform_in_net_5/

6 months ago

No. The whole point is to move WPF and WinForms to be able to target .Net Core, that's it.
Just because something targets .Net Core doesn't necessarily mean it is cross platform.
There is just too much existing software using WPF and WinForms and the point is to have
a migration path to newer technologies. .Net framework is not getting any more new features
so if MS wants WPF and WinForms to live on, they need to make it work for core.

Maybe one day they will be cross platform, but right now they are just too reliant on Windows
specific features. At this time they have explicitly said they do not want PRs adding cross platform
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
capability. Maybe sometime in the future they will work on cross platform capability, or maybe
~~~~~~
a group forks it, who knows.

I'd love to see WPF being cross platform. While it has a steep learning curve, you can do
some great things with it.
0798デフォルトの名無しさん
垢版 |
2019/11/17(日) 02:05:25.06ID:5dwJkF8Y
6ヶ月前:

Q: Is WPF going to be cross platform in .NET 5

A: At this time they have explicitly said they do not want PRs adding cross platform
capability.
0799デフォルトの名無しさん
垢版 |
2019/11/17(日) 02:09:37.66ID:5dwJkF8Y
6ヶ月前の時点で「.NET 5 がクロスプラットフォーム能力を持つことになるという
PRをしたくない」ということをMSは明確に述べていたそうだ。

つまり、.NET 5 は、来年年末も、クロスプラットフォームにはなって無いという
ことらしい。似た説は、海外のサイトで何度も見た。MSがマルチプラットフォーム
に積極的になった事は無いとのことだ。
0800デフォルトの名無しさん
垢版 |
2019/11/17(日) 02:15:22.33ID:5dwJkF8Y
Q: WPFは.NET 5のクロスプラットフォームになりますか

A: 6か月前
これは、Windowsシェル全体とパッケージ化サブシステムをパッケージ化しないと技術的に不可能です。
これは、明らかにMicrosoftの予定リストにはありません。

Winformsは、グラフィックスデバイスインターフェイスであるGDI +に対する非常に薄い抽象化です。
アプリケーションのUIを直接描画する方法を変更できるように、非常に薄いということです。WPFは、
この抽象化を拡張し、コンポジターアプローチと新しいマークアップ言語に置き換えて、
その合成エンジンを活用します。また、グラフィックデバイスサブシステムの3D機能へのアクセス
(DirectXおよびDirectDraw経由)を提供します。これにより、WPFはWinFormsができないすべての
素晴らしいことを(とにかく多大な労力なしで)実行できます。

言うまでもなく、いいえ。今ではなく、実際にはありません。これらの技術はどちらも、Windows
コンテキスト以外では意味がありません。ターゲットプラットフォームのネイティブグラフィック
エンジンが何であれ、Quartz、Weyland、XOrgを介して両方の抽象化を再作成する必要があります。
繰り返しになりますが、これらのプラットフォームには既に独自の同等のツールがあるため、
そうすることに興味のある人はあまりいません。
0802デフォルトの名無しさん
垢版 |
2019/11/17(日) 04:37:35.56ID:jUhE2Dju
> WPFはWinFormsができないすべての素晴らしいことを(とにかく多大な労力なしで)実行できます。

いや、まずWinformsでできることをWPFにも労力なしでできるようにしてほしいんだが。
0803デフォルトの名無しさん
垢版 |
2019/11/17(日) 07:27:47.44ID:ADq5wcSz
xamlの場合はxmlに馴染みがあるかどうかが分かれ目だな。
それさえわかっていれば本当に楽。
0806デフォルトの名無しさん
垢版 |
2019/11/18(月) 22:43:55.11ID:GgI5BjsL
少なくとも画面レイアウトとテストは楽になった。
formsの方が良かったことって何かあったかな。もはや思い出せない。
0807デフォルトの名無しさん
垢版 |
2019/11/19(火) 16:42:13.40ID:8/4AEaZj
WPFアプリはおれおれレイアウトが多く使いにくいよな。とにかく操作に統一感がなく不便で最悪。
MFC、winform縛りだとレイアウト、操作性に統一性があって操作に迷わない。
無能デザイナというのは独自性、おもいつきばかりで使う人のことをまったく考えてない。
0809デフォルトの名無しさん
垢版 |
2019/11/19(火) 21:37:07.35ID:Q41+AXQm
>おれおれレイアウトが多く

たとえばどんな?
VSCodeとかElectronのアプリだと従来のUIガイドラインから遠いものが多い印象だが。
0810デフォルトの名無しさん
垢版 |
2019/11/20(水) 00:44:49.82ID:97D6zl40
13年頑張っても普及しなかったゴミをMSが切り捨てられない理由はなんだろうなw

MSの中にはもう技術的な話ができる管理職がいないんだろうな。
0811デフォルトの名無しさん
垢版 |
2019/11/20(水) 07:42:01.90ID:PB4QhTfG
そもそも普及に頑張ってたか? というレベルだしなあ
まあWindowsチームにWPFに限らず.NET技術自体が嫌われたってのは
MSのなかのひと達からもよく出てくる話よね
0812デフォルトの名無しさん
垢版 |
2019/11/20(水) 08:56:56.98ID:Lba1zpe5
WOW64は完璧だし、x86バイナリをARMで動かしたり、LinuxバイナリをWindows上で動かしたり、MSSQLのWin32バイナリをLinuxで動かしたりといったトンデモ技術も難なく実用化してしまった
これほどネイティブコードの移植技術に長けたMSに果たして.NETが必要だったのかは激しく疑問だよね
Windowsの進歩を見限ってWPFを作ったらWindowsに背後から殴られた件もそうだけど、Javaなど他社の成功を後追いすることに躍起になるあまり、
自社の強みに目を向けず、Windowsチームに技術的チャレンジをさせてこなかった反動が来てるんだろうね
0814デフォルトの名無しさん
垢版 |
2019/11/20(水) 09:17:33.09ID:Lba1zpe5
OCXはバージョニングの仕組みに問題があったが、だからといって全てを抽象化してWindowsから独立したシステムを構築しようなどというのはあまりにも暴論極論
現に.NET Coreでは.NETはWindowsの中核技術から単にアプリに組み込まれるインプロセスなランタイムに「格下げ」されたわけで、
当初の構想からすると成功と言うにはあまりにも残念な結果だ
0815デフォルトの名無しさん
垢版 |
2019/11/20(水) 18:18:01.46ID:6ps0JqqR
vs2017だと
1.デザイン画面でGridをDockPanelに変更する
  コンテキストメニュー/レイアウトの種類の変更
2.ツールボックスからMenuをDockPanelにドロップする
3.Menuのプロパティ/レイアウト/Dock/Top
4.Menuのプロパティ/レイアウト/Width,Height,VirticalAlignmentをクリアする。
5.Menuのプロパティ/共通/Itemsのボタンを押す。
6.コレクションエディターが表示される。
7.左下のコンボボックスからMenuItemを選び、追加を押す
8.右側のプロパティ/共通/Headerに文字列を入力してOk>90
9.DockPanelにGridをドロップして、GridのWidth,Height,VirtiacalAlignmentをリセット
ドロップダウンメニューは MenuItemのプロパティ/共通/Itemsのボタン
0817デフォルトの名無しさん
垢版 |
2019/11/22(金) 15:16:56.99ID:2jFqraTL
>>811
WinFormsはまだ、Win32のコントロールを使っていたそうですが、WPFは
使ってないそうですから、もっと嫌われている可能性もありますね。
しかも、WPFは書き方もWindows伝統とはかけ離れて、HTML+JSの書き方に
近いようですし。
0818デフォルトの名無しさん
垢版 |
2019/11/22(金) 21:16:37.05ID:Y24HLISL
Windows伝統ってWin32のことかねぇ?FormsやMFCだってだいぶかけ離れてるように思うが。
イベントドリブンなところは共通しているかもしれないがHTML+JSだってそうだしなぁ。
0820デフォルトの名無しさん
垢版 |
2019/11/22(金) 22:18:50.38ID:uXKfGYPK
主にコア部分の性能面での問題を抱えたまま
一級開発環境としてねじ込もうとしてたのが原因なので
WinformsだのWPFだのは関係ないのだ
0823デフォルトの名無しさん
垢版 |
2019/11/23(土) 20:40:22.92ID:gK3OO6AB
昔はjavaは遅いからダメだ!って主張多かったよねー
じゃあ今のjavaは良いのか?って言われると困るけど結果的には広がりは見せたわけで
速度なんてあとからどうにでもなるんじゃね?って思う
20年前のハード性能の向上比率と今のそれは違うので比較するようなものでは無いかもしれんが
0824デフォルトの名無しさん
垢版 |
2019/11/23(土) 20:53:06.15ID:OWOiuO7H
JavaのGUIコンポーネントはクソ遅いしダメダメだろ
結果的に広がってませんが。
0825デフォルトの名無しさん
垢版 |
2019/11/23(土) 20:53:25.02ID:ddVAIVMv
javaの代わりにspanだの今後はutf8string?とか高速化を頑張ってるc#で書けば、クラウド代金3割くらい減らせたりしないものなのか?
0827デフォルトの名無しさん
垢版 |
2019/11/23(土) 21:34:37.51ID:fN1eu2LC
バックエンドはクラウド時代になって多少遅くてもとか言えなくなっちゃったからしんどい
まあでもWPFはデスクトップだから多少遅くてもいいけど
0828デフォルトの名無しさん
垢版 |
2019/11/23(土) 22:02:36.52ID:jA/F562D
>>825
さすがにJavaとC#なら有意な差は出ない
少なくとも、書き直してる暇があったらその手間をボトルネックの最適化に注ぎ込んだほうが間違いなく速くなる
MS製のものを除けばC#はJavaに比べてOSSライブラリの品質が低い傾向があるしな
0831デフォルトの名無しさん
垢版 |
2019/11/23(土) 22:13:12.75ID:gK3OO6AB
javaが昔遅くてダメだって言われてたのはJVMを経由するからという部分
世界的には微妙かもしれんが国内では間違いなく相当普及してる
20年前のエンジニアに言えば卒倒するレベルには普及してる
これを普及してないと言うなら普及してる言語ってなんだよw
0832デフォルトの名無しさん
垢版 |
2019/11/23(土) 22:36:08.94ID:UrfR+MrU
Java開発してておせーしねって思ったことは数え切れないほどあるけどC#では滅多にない
ビルドも実行も速い
0833デフォルトの名無しさん
垢版 |
2019/11/23(土) 22:44:40.45ID:jA/F562D
Javaは100%完全にサーバー向けにチューニングされてるし、
MSスタックほど開発環境とランタイムが統合されてるわけじゃないから、
開発中に手元では遅く感じやすいよね
0834デフォルトの名無しさん
垢版 |
2019/11/23(土) 22:53:50.65ID:2slcREB7
>>831
昔は、ローカル変数をスタックではなくヒープで確保するアホ実装してたからだよ。
一度書けばどこでも動くなんていうJavaの理想はコードを碌に書いたことのないアホどもの夢だったのさ。
JVMの最適化が始まれば途端に処理系によって動きが違うようになって速度は速くなったが理想は捨てられ、
世界的なJavaブームは終わった。なのになぜか日本だけがずっと使い続けて今に至る。

Javaは日本ではCOBOLの代替の地位は得たが、C#は何も得てない。
0837デフォルトの名無しさん
垢版 |
2019/11/24(日) 11:03:43.31ID:0nk530rx
速さは究極的にはプログラマの能力次第
C#erってVBの存在のお陰でJavaに比べると平均的な能力は高いけど、
上位層同士で比べるとクラウドや分散処理には強くないイメージだな
0838デフォルトの名無しさん
垢版 |
2019/11/24(日) 13:05:13.65ID:JC4z1XvE
Javaで優秀だった人はみんな他の言語に行っちゃって今は残りカスしかいない
C#は今も昔も高スキル人材が安定してる
0839デフォルトの名無しさん
垢版 |
2019/11/24(日) 13:21:43.73ID:7cfX+7dD
親方のMSにも言えることだけど、C#の高スキル層って何でもC#のコード書いて解決しようとして
結果的に事業や開発のスケーラビリティを制約するような方法を選んでしまう傾向がある気がする
その辺、CLIツールやクラウドサービスなど出来合いの小道具をうまく使ってチョチョイとやっちゃうのはUNIX系の人のほうが遥かに上手い
0841デフォルトの名無しさん
垢版 |
2019/11/24(日) 13:33:12.26ID:7cfX+7dD
>>840
良いか悪いかは別にして、少なくとも「何でもC#書いて解決しようとする」は自分で心当たりあるだろ?
俺が今まで会った「C#が得意」
0843デフォルトの名無しさん
垢版 |
2019/11/24(日) 13:41:21.56ID:s1tpy+px
>>842
C#が得意と言った奴がたまたまC#だけが得意だったんじゃないか?色々できる人はわざわざC#が得意だなんて言わないだけで。
そもそも自分が会っただけの狭い範囲で語られても...
0844デフォルトの名無しさん
垢版 |
2019/11/24(日) 13:48:16.04ID:kdnOmkRS
なんでもC#で書いて解決
CLIツールやクラウドサービスなどの小道具
これ並列に語るもんなの?
C#erだってクラウドサービスは使うやろ
0845デフォルトの名無しさん
垢版 |
2019/11/24(日) 13:51:44.18ID:yrLXmC4S
今時はなんでもコンテナにして疎結合しちゃうから様々な言語やツールをそれなりに使えたほうがいい
既存資産ファーストで言語を選んでコンテナを実装することがやたら増えた
逆に言うと既存資産が無い新規開発のときは何を選んでもいいわけで
なんでもいいならC#やGoなど強力な言語が出揃ってる今、あえてJavaを選ぶ意味は殆どない
レガシーとコンテナの橋渡しが今のJavaが担ってる仕事
0846デフォルトの名無しさん
垢版 |
2019/11/25(月) 00:02:02.10ID:YM9ppnlN
javaとC#比べて速さ問題を比べてもあまり意味がない
ある程度しか変わらないから
10倍速いとかじゃないからな
速さを競うならC++
ネットゲームとか激しくパフォーマンスが要求される分野はC++が強い
俺は死んでもC++はもう触りたくない
0853デフォルトの名無しさん
垢版 |
2019/11/25(月) 11:55:35.63ID:d5oOI6iD
でも、C#は遅いプログラムが多い。
M/Bに付属のドライバや基本アプリなどのインストーラーも遅かったし、
MSのC# 製のExpression Web 4も同等のC++製のFrontPageよりだいぶ遅い。
PIXELAのテレビキャプチャーカードに付属のテレビ視聴/録画再生アプリも
極端に遅い。途中でGCが入って30秒間くらい全く何も出来なくなる事が
あるし、テレビ番組表を表示するのも数十秒掛かるし。
一番技術が分かってるはずのVisual Studioも遅い。
0855デフォルトの名無しさん
垢版 |
2019/11/25(月) 16:02:04.90ID:YrlIRd3B
他のC#スレ見ても、C#信者は配列が遅い、LINQが遅い、WPFが遅いと言っても受け付けない低スキルの馬鹿が多い。
CPUに関する知識が皆無。まるで20年前のJava信者、MIPS信者のようだ。
0856デフォルトの名無しさん
垢版 |
2019/11/25(月) 16:55:11.95ID:xlCLCIdV
配列遅いって言って受け付けないって人は何使うの?
linqは言ってる人居るけど配列遅いなんて人居る?
0858デフォルトの名無しさん
垢版 |
2019/11/25(月) 17:06:26.86ID:Opy8eUnC
>>856
おそらく、
僕(>>855)が遅い遅いって言っているのに誰も取り合ってくれなかった!僕の話を聞かないアイツらがバカなんだ!
っ言いたいんだと思う。
0859デフォルトの名無しさん
垢版 |
2019/11/25(月) 19:01:49.04ID:OmUgJu93
C++使ってる人はあらゆることにパフォーマンス求める人がが多いからなあ
C#使ってるとそこまで気にしない
例え10倍処理が速くても自分の糞アプリにはなんのメリットがないので速さはいらない
0860デフォルトの名無しさん
垢版 |
2019/11/25(月) 20:46:21.36ID:P3fBUw06
>>841
まっっっっっったくありません
で、説得力は?
0862デフォルトの名無しさん
垢版 |
2019/11/25(月) 21:57:22.45ID:2eomwteL
ポインタ使ったら早くなる?
配列使ったほうが最適化しやすくて早そうだけど
ケースバイケースかな?
0863デフォルトの名無しさん
垢版 |
2019/11/25(月) 22:30:54.03ID:qlvZ05cB
>>862
ケースバイケース
配列のインデックスを計算で求めてるような場合は最適化が効かず境界チェックが毎回実行されて遅い
そういう場合はポインタにするとめちゃくちゃ早くなる
0865デフォルトの名無しさん
垢版 |
2019/11/26(火) 18:13:42.70ID:GH1P3tUM
逆に言えばC++なら糞みたいなロジックでもよく検討されたロジックのC#より余裕で早い可能性もある
でも大体はC++プログラマの方が一段上
0867◆QZaw55cn4c
垢版 |
2019/11/26(火) 19:56:36.01ID:eitz3RWA
>>866
でも free()/delete が難しい環境では GC はありがたいですね
0868デフォルトの名無しさん
垢版 |
2019/11/26(火) 20:26:45.31ID:sE/nea3J
>>867
組み込みなどの事を言ってるなら、GCの中でfree()/deleteが呼び出されるので同じ
どころか、もっと複雑になってしまう。
0873デフォルトの名無しさん
垢版 |
2019/11/27(水) 03:03:20.91ID:kpkt6EZT
テンプレートはc++よりc#の方が早かったり
するので使い方次第だと思うのですけどね
0874◆QZaw55cn4c
垢版 |
2019/11/27(水) 06:33:20.48ID:N9ggbkQ1
>>873
それはコンパイル時間なのではないですか?
0876デフォルトの名無しさん
垢版 |
2019/11/27(水) 07:45:58.68ID:f5LIEDBI
定期的に湧く、C++より速いとか、C#は遅くないと言ってる低スキル君が、Java信者と言ってることがいつも同じでむかつく。
0877デフォルトの名無しさん
垢版 |
2019/11/27(水) 08:14:47.64ID:1pl90ndi
>>874
同じ内容の処理でC#がC++より速くなるケースが想像できないのだが、具体的なケースを教えてくれないか?
0878デフォルトの名無しさん
垢版 |
2019/11/27(水) 09:37:28.69ID:gi64Bf5v
>>877
coreclr見てみ。ネイティブからマネージドコードに置き換えてパフォーマンスとメンテナンス性向上させてるPRいっぱいあるから。
0879デフォルトの名無しさん
垢版 |
2019/11/27(水) 09:48:42.73ID:frXAtoYv
バカの自作C++コードよりC#libraryの方が当然早いだろう。
libraryの中身はC++だったりするが
C++の演算libraryも中身はアセンブラだから同じこと。
0880デフォルトの名無しさん
垢版 |
2019/11/27(水) 09:51:27.67ID:vYtjQlD0
それはC++が遅いんじゃなくて呼び出しのオーバーヘッドが大きかったりOSやネイティブライブラリの機能が不必要に豪華で遅かったりするのを回避してるだけ
0886デフォルトの名無しさん
垢版 |
2019/11/28(木) 01:38:13.56ID:xy0IaHJE
もう10年以上C#使って、自前ツールはほぼC#オンリーだけど、C#が速いと思ったことないよ。
ストールしまくる配列の遅さとか致命的だからライブラリとか作るには向かないが、
むしろ使い捨て、やっつけツールを作るにはちょうどよい。ポジション的は昔のPerlの立ち位置だな。
そういう立ち位置と理解すればWPFが普及しない理由も分かる。
0887デフォルトの名無しさん
垢版 |
2019/11/28(木) 01:42:58.33ID:TWMCNQEW
>>886
>ストールしまくる配列の遅さ
詳しくお願いします。

>そういう立ち位置と理解すればWPFが普及しない理由も分かる。
C#のポジションが昔のPerlの立ち位置であることが、WPFが普及しないこと
にどのように結びつくのか解説をお聞かせくだされば幸いです。
0888デフォルトの名無しさん
垢版 |
2019/11/28(木) 01:44:22.06ID:/6aNzyAQ
今はマシンパワーでゴリ押し出来るからねぇ
苦労してC++で組むメリットは少ない
0889デフォルトの名無しさん
垢版 |
2019/11/28(木) 01:48:59.29ID:TWMCNQEW
>>888
実は、C++を苦労と思わない人なら、C#で組む必要性も低いのです。つまり、
 「C++が出来るなら、C#を使う必要はない」
のです。
0890デフォルトの名無しさん
垢版 |
2019/11/28(木) 01:56:13.23ID:xy0IaHJE
>>887
> >ストールしまくる配列の遅さ
> 詳しくお願いします。

マジかw こんなとんでもない低スキルの馬鹿がWPFスレにいるのか。
こんな基本的なことはパソコン少年でも知ってると思うが、条件分岐はストールする。
君のようなパソコンはじめて素人君はあと5年くらいROMってろなw
0892デフォルトの名無しさん
垢版 |
2019/11/28(木) 01:59:55.35ID:TWMCNQEW
それもMSの経営戦略なのですが、Visual Studio は、C++ と C# で分かれて無い
ので、使われ方の比率は誰にも分からない状態になっていますね。
果たしてどっちがすかれているのかも、本当ははっきりしません。
「層」によって好みが明確に分かれている可能性も有り得ます。
また、新しいものは、時代に乗り遅れまいと試しに使う人も多いので、
その影響もあります。
0893デフォルトの名無しさん
垢版 |
2019/11/28(木) 02:18:04.46ID:TWMCNQEW
「新し物好き層」なるものがあり、その人達は新しいものが素晴らしいと思います。
ネットにはそのタイプの人による新しいものを褒める記事が多く見受けられます。
逆に新しいもの、古いものに限らず、ネットでは物事の欠点や負の側面
を書く人は少数派です。何故かは分かりませんが、炎上を恐れる人が多い
からかも知れません。
0897デフォルトの名無しさん
垢版 |
2019/11/28(木) 12:43:42.46ID:VOkh5kHm
C#界隈はWebやスマホへ移行できずに時代に取り残された人達が老害化してる印象だなあ
趣味でフリーウェアやシェアウェアを作って公開してた人も一昔前には沢山いたけど、みんな今どうしてるんだろうね
俺もその一人だけど、もうクラウド開発しかやってないわ
0900デフォルトの名無しさん
垢版 |
2019/11/28(木) 13:44:44.09ID:uRMHPae9
スマホゲーでは最大手ではあるだろうけどcocosも未だに強いしunrealも頑張ってる、どっちもC++
サーバー側までC#はあんま居ないはず
0902デフォルトの名無しさん
垢版 |
2019/11/28(木) 19:15:57.08ID:VOkh5kHm
クライアントがUnityだからサーバーにもC#を使ってるゲームはわりとあるらしい
ドカタITではASP.NET Coreは全く使われてないね
0903デフォルトの名無しさん
垢版 |
2019/11/28(木) 19:24:48.50ID:tdSAYOq3
分野ちがうがxamarinとasp.net coreどっちがまだ使われてるかっていったらasp.netの方?
0905デフォルトの名無しさん
垢版 |
2019/11/28(木) 19:55:19.37ID:uRMHPae9
彼はすごい人だから良いけど
大体はまだPHPかよくてruby
webソシャゲの頃の鯖エンジニア結構残ってるからね
0907デフォルトの名無しさん
垢版 |
2019/11/28(木) 21:26:06.24ID:qnF6NUyh
時代とかトレンドとか言っても、スタンドアロンで十分なものをわざわざWebにしたりしないしなぁ。
0909デフォルトの名無しさん
垢版 |
2019/11/29(金) 12:41:29.10ID:orOKhWyS
いまトレンド来てるだろ

752 デフォルトの名無しさん 2019/11/04(月) 01:41:28.60 ID:uqYdx4m2
どうも、Microsoftのこれからの方向性
この1年で大きく変化しているのを理解できていない投稿が
多いように見受けられんだけど。
来週のIgniteを楽しみにしよう。
0910デフォルトの名無しさん
垢版 |
2019/11/29(金) 12:49:47.89ID:gt8PUFBF
UWPのゴリ押しがうまくいかなかったからWPFもそれなりにサポートするみたいなのは見た気がする
0911デフォルトの名無しさん
垢版 |
2019/11/29(金) 19:40:31.05ID:5LiccEug
デスクトップアプリとスマホアプリに互換持たせても根本的に違うし、泥に展開出来ない時点で何の意味もない
0912デフォルトの名無しさん
垢版 |
2019/11/29(金) 22:45:11.37ID:LMfDTWZ+
そうか?モダンアプリ使いやすいだろ
UWPがどうというより、デスクトップアプリ自体がWebのフロントエンドの一つに成り下がってしまい、
簡易なUIで十分になっちゃったんだよなあ
0913デフォルトの名無しさん
垢版 |
2019/11/29(金) 23:09:59.57ID:ekCVDXy+
相談させてください。C# で

static class MyBindingHelper
{
  public static bool GetModeIsTwoWay(Binding binding)
    => binding.Mode == BindingMode.TwoWay;
  public static void SetModeIsTwoWay(Binding binding, bool value)
    => binding.Mode = value ? BindingMode.TwoWay : BindingMode.Default;
}

のようなクラスを作成すると XAML で

@
<TextBox>
  <TextBox.Text>
    <Binding Path="Hoge" local:MyBindingHelper.ModeIsTwoWay="True" />
  </TextBox.Text>
</TextBox>

のような書き方ができるようになりますが、

A
<TextBox Text="{Binding Hoge, local:MyBindingHelper.ModeIsTwoWay=True}"/>

と書いても期待に反して

Markup Extension の解析時に、型 'System.Windows.Data.Binding' に対する不明なプロパティ 'BindingHelper.ModeIsTwoWay' が見つかりました。

というエラーになってしまいました。
@のような書き方は冗長に感じるのでできればAに近い書き方をしたいのですが、
何か良い方法をご存じの方がいらっしゃればお知恵を拝借できないでしょうか。
どうぞよろしくお願いいたします。
0914デフォルトの名無しさん
垢版 |
2019/11/30(土) 10:13:13.46ID:0mH728ks
Blazorのデスクトップアプリ流用がすごすぎて既存のデスクトップフレームワークの存在意義が完全に消滅しちゃった
何も考えなくても自動的にクロスプラットフォームになるし既存のWeb系エコシステムも使い放題だ
FormsやWPFはメンテナンスすることはあっても新規で作ることはもう無いだろう
0915デフォルトの名無しさん
垢版 |
2019/11/30(土) 10:22:41.07ID:BcIjEIKq
さすがにWPFはもう絶滅したと言ってもいいが、現代においても未だにWinFormsが採用されることがあるのは
どっちかというと開発者のスキルの問題だからなあ
Blazorを採用できるだけのまともなWebのスキルがあるチームならとっくの昔にWeb MVC系へ行ってる
0916デフォルトの名無しさん
垢版 |
2019/11/30(土) 10:40:39.93ID:xhEM6aVw
スキルの問題じゃなく慣れてるからというだけ。未だにvi使い続けてる人がいるのと同じ。
同じことするのに言語やフレームワーク、ライブラリをコロコロ変える馬鹿はいないよ。
そんなに脳みそにキャパが余ってるなら医者に職業変えたほうがいいw
0918デフォルトの名無しさん
垢版 |
2019/11/30(土) 10:48:00.44ID:5l2Zf0lZ
Blazorでデスクトップアプリって、今だとどれくらいのことができるようになってる?
WPFやMFCを置き換えられるくらいになってたら検討したいが。
0920デフォルトの名無しさん
垢版 |
2019/11/30(土) 11:51:53.62ID:Lym1Qf3d
webアプリは重いからユーザー視点から使いたくねぇな。wasmはどれくらい速いのかしらんが
0924デフォルトの名無しさん
垢版 |
2019/11/30(土) 14:13:26.55ID:5l2Zf0lZ
ちょっと調べてみたがUIはやっぱりまだRazorのままじゃね?デスクトップを置き換えるには程遠い。
0925デフォルトの名無しさん
垢版 |
2019/11/30(土) 14:58:49.97ID:PlBmox+6
何を今更
この期に及んでHTML書く気がないんだったら引退するかバックエンド専門に転向したほうがいいよ
0926デフォルトの名無しさん
垢版 |
2019/11/30(土) 16:40:39.40ID:Lym1Qf3d
>>921
androidタブレットで動かしてみたが、快適に動くけど、3DCGじゃなくてもっとtwitterアプリとかそういうので動かしてみたいな。
0927デフォルトの名無しさん
垢版 |
2019/11/30(土) 16:45:33.42ID:CChXYwU6
htmlなんて書く気ないしバックエンドにも移らないな
もちろん引退なんてしない
0928デフォルトの名無しさん
垢版 |
2019/11/30(土) 17:00:09.38ID:5l2Zf0lZ
HTMLでWPFやMFC並のGUIが書けるようになってたら喜んで使うよ。
WebのフロントエンドならReactを使ってるが、あれでデスクトップアプリを書く気はしない。
0929デフォルトの名無しさん
垢版 |
2019/11/30(土) 17:42:20.39ID:NmwQ71Sb
主題じゃないからただの茶々入れだけど
この手のデモでGPUに仕事ぶん投げる要素入れて
なんの意味があるのだろうかと毎度思う
0934デフォルトの名無しさん
垢版 |
2019/12/01(日) 02:03:54.16ID:9shdIToq
Office365はReactNativeになってるね
MSがReactNativeのWindows版再実装したりMac版開発したりでそっちに熱心なご様子
0935デフォルトの名無しさん
垢版 |
2019/12/01(日) 10:46:01.58ID:jlfjhpdh
色々な種類のライブラリがあることは使う側にとって良いことばかりでは無いね。
0937デフォルトの名無しさん
垢版 |
2019/12/01(日) 11:44:27.75ID:SSj3LvZN
物も作らず、カタログ屋して偉そうな
事言う奴が出てくる。
JAVA界隈は既に腐海に飲み込まれた
0938デフォルトの名無しさん
垢版 |
2019/12/01(日) 11:58:49.28ID:x82DeScF
MFCのFeaturePackみたいにVSのWPFコンポーネント群を公開してくれることを期待していたんだが
結局それはなかったな。OfficeのReactNativeはどうなんだろう。
一般プログラマは今までどおりMeterialUIでも使ってろ、とかだとあまり食指が動かない。
0939デフォルトの名無しさん
垢版 |
2019/12/01(日) 12:22:56.55ID:SqfEoEmM
昔はWPF ToolkitというものをMSが公開していたんだよ
ゴミのようなな品質でゲロ遅く、WPFのアーリーアダプター達を幻滅させる結果になった
0941デフォルトの名無しさん
垢版 |
2019/12/01(日) 20:15:17.55ID:/00m1kV3
良く知らないけどカタログ配ってお歳暮とか受注して問屋に発注して届いたのをお届けする仕事の人なら身近にいる
0945デフォルトの名無しさん
垢版 |
2019/12/04(水) 16:57:21.10ID:jX3YnxCe
WPFの数倍重いElectron製アプリが増えてきてるくらいだから使ってもらえるだろ
0948デフォルトの名無しさん
垢版 |
2019/12/04(水) 18:08:23.47ID:+TqcdXsD
Officeなんかはさすがに既存のコードから書き換える意義が薄いだろうしな
最近でMSがWPF使ってる事例だと新生PIX(グラフィックデバッガ)かな
0949デフォルトの名無しさん
垢版 |
2019/12/04(水) 19:35:36.72ID:no4jCANi
>>948
いやOfficeは2010で描画周りがDirect2Dで書き直されてるんだよ
VSのように描画だけWPFにもできたはずだが、WPFは採用されなかったということだ
0950デフォルトの名無しさん
垢版 |
2019/12/04(水) 20:17:03.52ID:Un6TNOMl
>>949
Cの直接モードのAPIをC#かつ保持モードのフレームワークに置き換えるのはまた労力がダンチだろうね

ところでなんでVSはWPFを採用してまだそれを維持してるのかしら?
0951デフォルトの名無しさん
垢版 |
2019/12/04(水) 21:44:25.91ID:DFl2itg/
WPFでVisual Studioを作ってみせてWPFの有用性を示したはずが
同時にWPFの動作の緩慢さも示すことになってしまったという
0952デフォルトの名無しさん
垢版 |
2019/12/05(木) 03:20:14.90ID:MUccVRBb
しかしWebkit遅いわー
まあ、マシン性能向上とともに。。。かな
でもそうするとWPFでいいか・・・
0953デフォルトの名無しさん
垢版 |
2019/12/05(木) 04:51:21.88ID:KIwxMo9D
>>946
C++実装したNative呼ばずにC#+WPF使ってブラウザ書いてみればいいじゃない。
Java製ブラウザは遅くて誰も使ってくれなかったけど、なぜC#だと誰も書かないの?
本当は速いと本気で信じてる信者が誰もいないということだね。MSですら書かないのだから。
0955デフォルトの名無しさん
垢版 |
2019/12/05(木) 08:19:34.00ID:j8ShDTnb
Win32APIとかDirectXを叩けるC#と使えないJavaを比較するのはアンフェアじゃないのか。
0956デフォルトの名無しさん
垢版 |
2019/12/05(木) 08:34:11.19ID:q0kDwfyl
でも、それも言語の実力のうちですよね?
0957デフォルトの名無しさん
垢版 |
2019/12/05(木) 11:27:45.74ID:9zn59iXI
C#から Win32API や DirectX って、PythonからAIや数値計算用のCの
ライブラリを呼び出してPythonは遅くないと主張しているのと似てる
気がするのは俺だけか。

C#は、unmanagedコードでC/C++や、unsafeでC/C++のポインタも使える
けど、それまで含んでしまった場合、果たしてC#と呼べるかどうか。
それはC#の皮をかぶったC++じゃ。
0958デフォルトの名無しさん
垢版 |
2019/12/05(木) 11:40:44.19ID:dtUadt8o
DllImportやCOM interopでC/C++を呼ぶのはともかく、unsafeは普通にマネージコードの範疇
0960デフォルトの名無しさん
垢版 |
2019/12/05(木) 11:55:42.57ID:ksEXr90h
ポインタ使うことがCって意味がわからん
Cと同じような処理や記述ができるだけであってCを使ってるわけじゃないじゃん
0963デフォルトの名無しさん
垢版 |
2019/12/05(木) 12:42:15.88ID:P/hgT5Y1
そう、最後は成果物で速度競えばいいんだからやり方はどうでもいい
ただ、そのやり方をするのにどれだけ労力かかるかは考慮しないといけない
なのでCore部分をC/C++で書いて呼び出すとか言ってる奴はアホ
0967デフォルトの名無しさん
垢版 |
2019/12/05(木) 14:28:06.99ID:dtUadt8o
>>965
それはその通り
なりたきゃC++かRustでもやりなさい
C#の人はC#に閉じ籠ろうとする傾向があるが、プロなら言語なんか必要に応じて何でも使えて当たり前だぞ
0969デフォルトの名無しさん
垢版 |
2019/12/05(木) 15:06:59.69ID:A31OBEMZ
なんやC#erはすぐネイティブに逃げられてズルイ的な流れじゃないんかい
もうなんの話してんのかわからんな
0970デフォルトの名無しさん
垢版 |
2019/12/05(木) 15:37:51.07ID:dtUadt8o
.NET Coreもあるとはいえ、殆どのC#erにはそもそもWindows縛りがあるから選択肢が少ないのは当たり前
0971デフォルトの名無しさん
垢版 |
2019/12/05(木) 16:11:18.32ID:A31OBEMZ
むしろWindowsのコアなとこが.NETになってないから
逆にC#で完結出来ずにネイティブに下らざるを得んことの方が多いわ
0973デフォルトの名無しさん
垢版 |
2019/12/06(金) 07:49:10.65ID:X2lBJVtD
>>972
だからWPFの質問しても誰も答えてくれないじゃん。

MSオフィスやIE、EdgeはWPF使ってるの?なんで使わないの?
0975デフォルトの名無しさん
垢版 |
2019/12/06(金) 08:30:55.25ID:5tJLg0aa
MSはWPFをちゃんとやり遂げろよ
思想は魅力的だったのに途中で投げ出して
MS製フレームワークは信用できん
0978デフォルトの名無しさん
垢版 |
2019/12/06(金) 17:24:09.69ID:X2lBJVtD
>>977
おまえみたいな煽りしかできない無知な低スキルのバカには質問してません。
スルーしてください。二度とレスしないでね、リアルガイジクンw
0979デフォルトの名無しさん
垢版 |
2019/12/06(金) 19:20:34.65ID:mVxSuGhK
>MSオフィスやIE、EdgeはWPF使ってるの?なんで使わないの?
これが高スキルの質問!
0980デフォルトの名無しさん
垢版 |
2019/12/06(金) 20:11:52.25ID:hq74WDs3
別に何が何を使っていようが
自分が作りたいものが作れるフレームワークを
選べば良い話だと思うけどな
0981デフォルトの名無しさん
垢版 |
2019/12/06(金) 20:15:58.99ID:X2lBJVtD
MSの主要開発グループがC#+WPFを選ばなかった理由を教えてくれてありがとう。
0984デフォルトの名無しさん
垢版 |
2019/12/08(日) 08:09:16.68ID:EF3bH9/K
C#が速くないって使えばすぐ分かることなのにな。
C#信者なのにDelphi使ったことなかったんかな。
0988デフォルトの名無しさん
垢版 |
2019/12/08(日) 21:45:35.20ID:mTquKR0o
GuptaのTeam Developerって今WPFと連携するのか
Delphiはいいものだったけどヘジたんが抜けてから迷走してしまったな
0989デフォルトの名無しさん
垢版 |
2019/12/09(月) 07:19:11.29ID:9JRKUfUh
>>986
なんでそんな初心者みたいな質問するん?
アセンブリ言語、C言語、Object Pascal(Delphi)あたりで書けばC++より速いですよ。
0994デフォルトの名無しさん
垢版 |
2019/12/09(月) 11:05:00.80ID:T4jQEVxC
Win32のコモン・コントロールだけ使ってアニメーションとかしないのが起動も動作も一番速いよナー
0998デフォルトの名無しさん
垢版 |
2019/12/09(月) 14:17:49.16ID:9acD2Ap0
VBとVB.NETの区別がつかない初心者様と
全部C++でGUI書きたい上級者様が同居してんのかここ
0999デフォルトの名無しさん
垢版 |
2019/12/09(月) 14:25:28.26ID:ZDnVy+Tb
初心者と上級者というより
若者と老人だろ
若い子は大昔のくだらない経緯なんて気にせず最新技術を追っていけ
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 207日 6時間 47分 1秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

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