板検索:
C#, C♯, C#相談室 Part91 (1000)
まとめビュー
最新スレッド候補が見つかりました
C#, C♯, C#相談室 Part94 (64) スレ作成日時:2017/04/22 15:36:53
過去ログ C#, C♯, C#相談室 Part94 (64) 2017/04/22 15:36〜
過去ログ C#, C♯, C#相談室 Part93 (13) 2017/04/22 08:52〜
過去ログ C#, C♯, C#相談室 Part92 (1000) 2017/01/28 16:46〜
1
デフォルトの名無しさん[sage]   投稿日:2016/06/29 23:45:15  ID:EZjVZgG6.net(2)
■Visual Studio 2013 Community & Express(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/

■コードを貼る場合はこちら
http://ideone.com/

■前スレ
C#, C♯, C#相談室 Part88 [転載禁止]©2ch.net
C#, C♯, C#相談室 Part88
C#, C♯, C#相談室 Part89
C#, C♯, C#相談室 Part90

■次スレは>970が建てる事。
建てられない場合は他を指定する事。


2
デフォルトの名無しさん[sage]   投稿日:2016/06/29 23:45:41  ID:EZjVZgG6.net(2)
誰もたててなかったんでたてました
コメント1件

3
デフォルトの名無しさん[sage]   投稿日:2016/06/29 23:51:01  ID:mTvmtbdU.net
まじかよすげーな

4
デフォルトの名無しさん[sage]   投稿日:2016/06/29 23:54:32  ID:IF/e/aAD.net
>2
えっ

C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
C#, C♯, C#相談室 Part91
コメント1件

5
デフォルトの名無しさん[sage]   投稿日:2016/07/01 09:02:48  ID:2/8SV6DI.net
>4
oh

6
デフォルトの名無しさん[]   投稿日:2016/08/16 01:59:58  ID:jP/bzuFf.net
スレッド違いかもしれないですが教えてください。

Google Analitics でトラフィックを確認したところ
↓の様にIP+ポート番号でのアクセスがありました。

通常であれば、YahooやGoogleなどの検索エンジンからの流入だけになるハズが
この様なアクセスがあり警戒しています。これは何か攻撃を受けているのでしょうか?

10.160.XXX.XXX:XXXXX
コメント1件

7
デフォルトの名無しさん[sage]   投稿日:2016/08/16 03:13:01  ID:ExAjikQC.net
>6
法律違反かもしれませんが人を殺しても見逃して下さい
ってか

↓で聞けよ脳タリン

スレ立てるまでもない質問はここで 143匹目 [無断転載禁止]©2ch.net
スレ立てるまでもない質問はここで 143匹目

8
デフォルトの名無しさん[]   投稿日:2016/11/05 16:22:08  ID:9mC8a8qM.net
このスレをPart92として使うのかな?

9
デフォルトの名無しさん[sage]   投稿日:2016/11/05 16:28:35  ID:N0pRKuvW.net
出来ればふらっとみたいにワッチョイ付きで建てて欲しい所だけど、ここでいいんじゃね

10
デフォルトの名無しさん[sage]   投稿日:2016/11/05 17:20:49  ID:4QNuq7Ui.net
>994
重症だねこりゃ。


11
デフォルトの名無しさん[sage]   投稿日:2016/11/05 19:53:16  ID:bx+ldDt8.net
ワッチョイなんていらないのでここで十分です

12
デフォルトの名無しさん[sage]   投稿日:2016/11/05 20:36:49  ID:BoxZvYjG.net
次立てるときには付けるのでご安心召されよ

13
デフォルトの名無しさん[sage]   投稿日:2016/11/05 21:25:32  ID:yfItjWUA.net
ちゃんとインクリメントしろや

14
デフォルトの名無しさん[sage]   投稿日:2016/11/06 01:29:59  ID:+j3xqinH.net
ワッチョイが役に立ってるスレなんて見たこと無い

15
デフォルトの名無しさん[sage]   投稿日:2016/11/06 06:47:09  ID:yh+qoP1Q.net
荒らし乙

16
デフォルトの名無しさん[sage]   投稿日:2016/11/06 09:55:19  ID:jO0QNoEc.net
荒らしのNGに役立つよ

17
デフォルトの名無しさん[sage]   投稿日:2016/11/06 10:48:53  ID:pU7B9Wvc.net
日を跨いでくだらない話をだらだら続ける奴は消したいわ
前スレだとdecimalくんとか
LINQとラムダ式に親を殺された君とか

18
デフォルトの名無しさん[sage]   投稿日:2016/11/06 19:36:01  ID:ci4MHKnC.net
Windows Formsの話なんだけど
TextBoxとかButtonといった単項目コントロールはINotifyPropertyChangedとBindingSourceを使って
btnExec.Enabled <-> model.IsValid
txtHoge.ReadOnly <-> model.HogeIsReadOnly
のように柔軟なバインドができる
これと同じようにDataGridViewの各セルのプロパティとそのセルに対応するモデルのプロパティを細かくバインドすることは可能?
具体的には1行に対応するモデルの一部のプロパティがオブジェクトの状態によって変更可不可が変わる
このプロパティの変更可不可をセルの入力可不可に対応付けたい

19
デフォルトの名無しさん[]   投稿日:2016/11/07 02:02:19  ID:8BVz5aV9.net(3)
>18
できると思う。なんだったら自分が実験してやって見せてあげよう。
その前に、ちょっと聞きたいことがある。
>TextBoxとかButtonといった単項目コントロールはINotifyPropertyChangedとBindingSourceを使って
>btnExec.Enabled <-> model.IsValid
>txtHoge.ReadOnly <-> model.HogeIsReadOnly

このやり方を具体的に教えてくれ。
これが解れば俺の応用力と理解力をもってすれば君の要求にこたえられると思う。

20
デフォルトの名無しさん[]   投稿日:2016/11/07 02:15:23  ID:8BVz5aV9.net(3)
バインディングって要するに単なる対応付けだけのことじゃないかなー。
A=1 を B=1で起こす。Bに代入されましたよ。何が? 1が。 じゃあAに入れます。
これだけのことだから、、、、
相手がGridだろうが何だろうが簡単にできると思う。

この簡単なことをわかりにくくしたのがWPFではなかろうか?
俺にはなぜこんなに複雑にするのか理解できない。W

21
デフォルトの名無しさん[sage]   投稿日:2016/11/07 09:30:16  ID:FitVxgu/.net
今はWindowsFormとWPFってどっちが主流なの?
コメント1件

22
デフォルトの名無しさん[sage]   投稿日:2016/11/07 09:43:19  ID:1ZmAoJ5f.net
WPF

23
デフォルトの名無しさん[sage]   投稿日:2016/11/07 09:57:52  ID:euWTmbm8.net
wpfの方が騒がれてるけど結局formじゃないか?

24
デフォルトの名無しさん[sage]   投稿日:2016/11/07 12:17:20  ID:FyIcdvIJ.net
業務アプリ以外はUWPに移行
業務系はWinFormsだろうな
コメント1件

25
デフォルトの名無しさん[sage]   投稿日:2016/11/07 12:20:21  ID:fkbDdb5s.net
WPFは描画にGPU支援あるけど、恩恵なんて極わずかだしな

26
デフォルトの名無しさん[sage]   投稿日:2016/11/07 12:44:44  ID:9i/eBlRk.net
っていうか、WPFってどんなに取り巻きが誉めそやしても裸の王様だと思うわ。
可読性がとにかく悪い。

Win Formみたいなイベントドリブンならある機能がどこで実装されているか、それを修正するためには
どこを変えればいいか、ほとんどの場合すぐに検討が付くけど、WPFだとこれがイライラの連続の
苦行そのものに堕落しちゃう
コメント1件

27
デフォルトの名無しさん[sage]   投稿日:2016/11/07 14:03:36  ID:T8rwYGfS.net(2)
UWPはネイティブ化されたから、C#やJavaなどのVM系特有のもっさり感から開放されたし
リバースエンジニアへの対応もC++と同レベルになった
問題はDataGridViewが標準でないこととリソース使用の制限などだが
そこがクリアできるなら速攻移行するべきだな

28
デフォルトの名無しさん[sage]   投稿日:2016/11/07 14:24:49  ID:/8UUm0jP.net
やっぱりDataGridを切望してるのは日本人だけなんですかな
異常に罫線が好きな民族だからね

29
デフォルトの名無しさん[sage]   投稿日:2016/11/07 14:26:53  ID:lMECrzfj.net
民族だよね

30
デフォルトの名無しさん[sage]   投稿日:2016/11/07 14:29:08  ID:io5w9F+U.net
>24
>業務アプリ以外はUWPに移行
>業務系はWinFormsだろうな
何で業務系は移行しないん?

31
デフォルトの名無しさん[sage]   投稿日:2016/11/07 14:51:18  ID:pMvOYoph.net
業務アプリ以外はUWPに移行してるかどうかは別として
UWPはwin10必須になるからな

32
デフォルトの名無しさん[]   投稿日:2016/11/07 15:09:36  ID:8BVz5aV9.net(3)
必須とはどういう意味?

WPFは大失敗だから、いま見直ししてると思うな。もう少し頭のいい奴に考えさせる
んじゃないかな。まあすぐに消えるわ。
コメント1件

33
デフォルトの名無しさん[sage]   投稿日:2016/11/07 15:15:37  ID:T8rwYGfS.net(2)
しかしCollectionViewSourceに有った機能の殆どを「自分で実装しろ」と言う仕様変更は如何なものか

34
デフォルトの名無しさん[sage]   投稿日:2016/11/07 18:02:50  ID:5lIwdUhD.net
>32
読んで字のごとく、UWPはWin10じゃないと動作しない

35
デフォルトの名無しさん[sage]   投稿日:2016/11/07 18:18:24  ID:mmljEldz.net
WindowsServerの共有フォルダに対して
一台のPCで複数のセッションを
張りたいのですが
便利なC#でも難しいでしょうか

セッション枯渇をシュミレーション
したいのですが、数十台の
物理的なクライアントを用意するのが
厳しく

36
デフォルトの名無しさん[sage]   投稿日:2016/11/07 22:53:04  ID:UfUqh0gR.net
>21だけど取り敢えずはWindowsFormも普通に現役っぽいからそっちを使う事にします
回答ありがとう

37
デフォルトの名無しさん[sage]   投稿日:2016/11/07 22:53:34  ID:d19P1q1E.net(2)
その手のはC#のライブラリで用意されてなくて結局P/InvokeでWin32APIを呼ぶことになるから、
Win32APIのスレで訊いた方が良いと思う。
コメント1件

38
デフォルトの名無しさん[sage]   投稿日:2016/11/07 23:00:48  ID:GpYwrGgA.net
WPFは出てからちょうど10年たったけど全然普及しなかったね

39
デフォルトの名無しさん[sage]   投稿日:2016/11/07 23:26:27  ID:geFZXkbd.net
>37
やはりC#での手段は無さそうなのですね
Win32APIスレで聞いてみます
ありがとうございます

40
デフォルトの名無しさん[sage]   投稿日:2016/11/07 23:46:06  ID:d19P1q1E.net(2)
WPFはせっかくがんばって色々できる土台を作ったのに、完成度を上げ切れてないのが何とも勿体ない。
ReactiveProperty(MS製のオープンソース)とか標準で入っていればずいぶん作りやすくなるのに。
標準のコントロールも数が足りないね。
とは言え、WindowsFormsよりもWPFの方が楽な場合もあるから、結局両方使う。
コメント1件

41
デフォルトの名無しさん[]   投稿日:2016/11/08 00:28:14  ID:mUYwed62.net(11)
WPFってWinFormプロジェクトと混在して使えるの?
コメント1件

42
デフォルトの名無しさん[]   投稿日:2016/11/08 00:31:06  ID:mUYwed62.net(11)
>40
完成度のもんだいだろうか? そもそも根本的なところで間違ってるような気がする。
何が間違っているのかうまく言えないが、、、W

43
デフォルトの名無しさん[]   投稿日:2016/11/08 00:41:11  ID:mUYwed62.net(11)
MSのドキュメントって最近は多少ましになっては来ている部分も少しだけあるけど
ほとんどが駄目だとおもう。頭の悪い奴の書いた文章そのものって感じがする。
簡単なことを難しく書いていて要領を得ない。ワザとやってるのかなと思って
いたがそうでもないらしい。 こんなドキュメントを書くようではスッキリした
まともな言語の開発はできないと思う。
 でもC#は奇跡的に素晴らしいと思う。この素晴らしさはMS的ではないな。WPFは
MS的だと思う。
コメント1件

44
デフォルトの名無しさん[sage]   投稿日:2016/11/08 00:51:04  ID:360M0HJP.net(4)
>41
WPFにWindowsFormsHostコントロールってのがあるので、それを利用してFormsのコントロールを使える。
その逆はやったことないけど、ElementHostコントロールを利用するらしい。

45
デフォルトの名無しさん[sage]   投稿日:2016/11/08 01:21:27  ID:Iqb/ffmt.net(2)
>26
Formsの何がダメかというと意識の低い雑魚プログラマでも手が出せるところだろうな
雑魚が書くとすぐにレイヤがぐちゃぐちゃに混ざり合い重複したコードが際限なく増えていきオブジェクトから手続きの時代にタイムスリップする
油断して監視を緩めるとあっという間に手に負えなくなる
WPFは雑魚は切り捨てられてるからそういったリスクが少ない
MVVMという共通の概念を身に付けた意識の高い人材が集まるから自然とコーディングスタイルが統制されて読みやすい高品質なコードが出来る
コメント1件

46
デフォルトの名無しさん[sage]   投稿日:2016/11/08 02:27:54  ID:KFsAZFmi.net
>45
WPFのコードを読みやすい思ったことは一度もないわ。

しかし、凄い倒錯だねw
Windows Formの問題はダメな奴でもそれなりに(可読性のないコードを)書けてしまうことだというが、
それを言うならWPFの問題はまともなプログラマが書いても決して可読的にならないことだろう。

47
デフォルトの名無しさん[sage]   投稿日:2016/11/08 03:24:51  ID:iu8f14dF.net
可読性が悪いっていってるのは XAML のこと?
それともバインドしてるプロパティがどれなのかわからないみたいなこと?

前者ならもうどうしようもないけど、
後者ならWindows Formでも同じ気がするし、
バインドとかCommandとか使わずにイベントドリブンで作る方法もあるよ。

48
デフォルトの名無しさん[]   投稿日:2016/11/08 03:48:44  ID:mUYwed62.net(11)
>47
どっちがダメかといわれても答えようがないが、ダメなものを平気で追加している
と、少しだけはいいものがあったにしてもダメになるよね。
いいものなら直観的にシンプルに説明ができると思う。

C#の属性拡張なんかも、その点ではかなり危ない。でも本体がしっかりしているので
あまり汚れが目立たない。
WPFは最初からダメでしょ。そもそも取り付けないし見通しも見えない。1日ほど
弄ってみたことがあるが、全然わからんかった。何がいいのかさっぱりわからん。
直観的に説明できないようなものって間違ってると思うよ。
こういう場合二つのアプローチがあると思う。

1.訓練してこれに慣れるという方法
2.何がダメなのか何が問題なのか発見するという方法

後者を採用する人にはこれはある意味チャンスだと思う。まあでもこれを使いこなせる
ってことは「頭いい」って証明にはなると思うから、1.のアプローチも間違い
じゃない。W
コメント3件

49
デフォルトの名無しさん[sage]   投稿日:2016/11/08 04:02:41  ID:VojG/etj.net
>43
英語を読んでる?
日本語版は機械翻訳だよ
コメント1件

50
デフォルトの名無しさん[sage]   投稿日:2016/11/08 05:54:50  ID:360M0HJP.net(4)
>48
1日しか触ってなくてほとんど何も理解もしてないのにダメ出しってのも何だかな。
従来と仕組みが違う部分が多いから、従来の(WindowsGUIプログラムの)経験からの直観は働きにくい。
学習コストがかかるのもデメリットではあるけどね。

51
デフォルトの名無しさん[sage]   投稿日:2016/11/08 07:31:09  ID:TXhVVjP1.net(2)
雑魚排除といえば
VBを残し続ける理由が分からない

VB作る人的リソースを
XAML強化とかに回せば良いのに

52
デフォルトの名無しさん[sage]   投稿日:2016/11/08 07:36:07  ID:TXhVVjP1.net(2)
WPFはFormアプリが
健在だから使う機会がない

MSの下位互換の精神は悪いと
言わないけど、もう良いんじゃねって
技術が延々と残ってるから
嫌になる

53
デフォルトの名無しさん[sage]   投稿日:2016/11/08 07:48:59  ID:uO4YTQEs.net(2)
俺は最初からWPFを使ってるのでWindowsフォームの利点がわからん。
あらゆる点でWPFの劣化版のように思えるのだが。
コメント1件

54
デフォルトの名無しさん[sage]   投稿日:2016/11/08 07:54:17  ID:Iqb/ffmt.net(2)
>48
こういう人をお断りできるだけでもすごいメリットだよな
WPF程度の難易度のフレームワークを1日で諦めるとかちょっとな
昔は多かったオブジェクト指向はよくわからないから悪もの理論の年配と同じ臭いを感じる

55
デフォルトの名無しさん[sage]   投稿日:2016/11/08 08:01:23  ID:6Cpjtpfi.net(4)
>40
>ReactiveProperty(MS製のオープンソース)
Prismとごっちゃにしないでね。
ただアレは便利だわ
コメント1件

56
デフォルトの名無しさん[sage]   投稿日:2016/11/08 08:10:26  ID:6Cpjtpfi.net(4)
Formsで出来るレベルのことだけでいいなら、そりゃFormsのほうが楽かもしれんね
でも、コントロールの外観をいじりたいとかって話になると、wpfのほうがずっと楽だろ
Formsでアニメーショなどどうやってヤるんだよ

57
デフォルトの名無しさん[sage]   投稿日:2016/11/08 09:36:53  ID:+DS6ozoh.net
だからそういう用途じゃなきゃFormsだし
そういう用途にしてもUWPに移行するって話だろ

58
デフォルトの名無しさん[sage]   投稿日:2016/11/08 10:24:37  ID:h2p8PH96.net
>53
例えば、Formの利点というよりWPFの欠点だけどグラフィックのパフォーマンスだね。
GDI+も登場時散々遅いと叩かれたけどWPFはその何十倍も遅い。
ググると出てくると思うけど、あまりに遅くて、2Dの折れ線グラフのような単純なものでも
データ数が多いと全く使い物にならない。
俺自身パフォーマンスの問題をどう工夫しても解決できなかったので結局GDI+で書き直すはめになった
コメント2件

59
デフォルトの名無しさん[]   投稿日:2016/11/08 11:20:31  ID:mUYwed62.net(11)
>50
XAML
<TextBox
Width = "100" FontSize = "30" Text = "テスト"
Background = "White" Foreground = "Blue" />

C#
textbox1.Width = 100;
textbox1.FontSize = 30;
textbox1.Background = Colors.White;
textbox1.Foreground = Colors.Blue;
textbox1.Text = "テスト";

文字少なくてよさげだけど、肝心のこの部分が隠れる。

TextBox textbox1 = new TextBox();

大事なところを隠蔽されるのはダメだよ。
プロパティを並べるのに<>で囲む必要なんてどこにあるんだよ。
という感じ。文書として保存するときなら<>つけたらいいではない?
でもエディットするときにこんなもんは不要だ。
コメント3件

60
デフォルトの名無しさん[]   投稿日:2016/11/08 11:31:34  ID:mUYwed62.net(11)
<TextBox
Width = "100"
FontSize = "30"
Text = "テスト"
Background = "White"
Foreground = "Blue"
/>
文書保存するときはこれは別にいいと思うけど、もともと簡単に打ち込みできるよう
になってるものを、テキストで打ち込む理由はないな。

61
デフォルトの名無しさん[]   投稿日:2016/11/08 11:43:12  ID:mUYwed62.net(11)
>47
XAMLはNetをXMLで表現するタグだけのことだろ。
それは別にそれでいいんでないか? 整理できるし。

問題はWPFっていう糞のIDEだな。見通しがきかない保存文書構造のXMLを使って
なんでプログラム組まなきゃなんないのってこと。本末転倒だろ。W

62
デフォルトの名無しさん[]   投稿日:2016/11/08 12:00:35  ID:mUYwed62.net(11)
>コントロールの外観をいじりたいとかって話になると、wpfのほうがずっと楽だろ
>Formsでアニメーショなどどうやってヤるんだよ

 楽なのは抽象度が高くなっていて、逆に言えば細かい処理はできないってことだね。
FormでできないことがWPFでできるわけじゃなくて、それなりのコントロールを用意して
楽にしているだけ。楽なコントロールが楽になってるだけ。そういうのを適宜使うって
のはありだと思うよ。アニメーションとか、、、、アニメーションとかほかにどんなもの
がある? でも.netになくてWPFだけにあるものなんてある?
コメント1件

63
デフォルトの名無しさん[]   投稿日:2016/11/08 12:12:18  ID:mUYwed62.net(11)
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation";
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml";
エディターにロードした段階でこんなタグは不要だろ。なんでこんなのがいちいち
画面を占有しているの? バカっぽいと思わん。
これがなければ余分に2行ソースが見える。W

64
デフォルトの名無しさん[sage]   投稿日:2016/11/08 12:47:02  ID:unEOfTV3.net
>59
なんでXAMLにすり替えてんだよじじい

65
デフォルトの名無しさん[sage]   投稿日:2016/11/08 14:50:51  ID:CGI+nyHh.net
男だったのか

66
デフォルトの名無しさん[sage]   投稿日:2016/11/08 15:14:04  ID:EaH/m5NR.net
GUIフレームワークなんて何使っても大差ない
根本的な設計がしっかりしてれば楽
でなければ何やっても苦痛

67
デフォルトの名無しさん[sage]   投稿日:2016/11/08 16:42:41  ID:TdC6P0sc.net
newも、ソースの見通しとも、xmlnsについてもWinFormsではデザイナが自動生成するコードだからほとんど見ないし、自動生成コードよりはXamlのほうが優れてるだろ

WPFの問題はバインディングとかMVVMとかがなかなか難しいし、情報資産が少ないことにある気がする

少なくとも、外観やコントロールの機能いじったり、バインディングを活用するなら悪くはない

68
デフォルトの名無しさん[sage]   投稿日:2016/11/08 17:07:35  ID:uO4YTQEs.net(2)
>58
そうなのか。
本当にWPFが遅いのかは限界までチューニングしなきゃわからんとは思うが、
少なくとも通常のやり方ではWindowsフォームのほうが速いというわけだな。
WPFでは勝手に画像がスケーリングされたり、
アンチエイリアシングされたりするのでそういったのを
徹底的に無効化しなきゃ速くならんからな。
画像を綺麗に見せるためなのか知らんが、
こういったマクロソフトの俺様仕様は勘弁してほしいところだわ。

>59
そんなにXAMLが嫌いならXAMLを使わなきゃいいだろ。
そもそもXAMLはWPFとは何の関係もない。
XAMLを使わなくてもWPFプログラミングなどいくらでもできる。

69
デフォルトの名無しさん[]   投稿日:2016/11/08 18:00:32  ID:mUYwed62.net(11)
>68
えっ、そうなんだ。チュートリアルはほぼxamlの説明だけだよ。W

70
デフォルトの名無しさん[]   投稿日:2016/11/08 18:03:46  ID:mUYwed62.net(11)
一時期XMLが流行った時があって猫も杓子もXML状態になったよね。そのあと全部
失敗してXAMLはしぶとく残ってるということではないのか?

71
デフォルトの名無しさん[sage]   投稿日:2016/11/08 18:52:03  ID:WSlpNxFl.net(2)
もうザマリンでAndorido準拠の
プログラム作れば良いよ

WindowsPhoneのシェア0.3%で
WPFの先も無さそうだし

72
デフォルトの名無しさん[sage]   投稿日:2016/11/08 18:56:36  ID:WSlpNxFl.net(2)
FormアプリとVBは
Windows7までにしておけば良いのに

共に役目は終えたし
MSはリソースを少し集中しようよ

モバイルじゃシェア失ってるんだし

73
デフォルトの名無しさん[sage]   投稿日:2016/11/08 20:25:06  ID:UoXgnYKD.net
Win32API時代から自分で描画するコントロールを作っていくのが好きすぎて未だにやめられない

74
デフォルトの名無しさん[sage]   投稿日:2016/11/08 20:40:02  ID:RPJf2WNu.net(2)
WinFormは趣味グラマにとってぬるま湯で居心地がいいw
IDEのおかげで下手なスクリプトより楽だし

75
デフォルトの名無しさん[sage]   投稿日:2016/11/08 20:51:54  ID:360M0HJP.net(4)
>55
すまん。完全にごっちゃになってた。

>59
その例だとXAMLにx:Name="textBox1"が抜けてるぞ。
XAMLでの<TextBox>タグの宣言こそが、TextBox textbox1 = new TextBox();
に相当するってだけで、別に隠しちゃいない。

76
デフォルトの名無しさん[sage]   投稿日:2016/11/08 20:58:12  ID:RPJf2WNu.net(2)
ついでに流れに乗っておくと
>58
WPFはGDI+(WinForm)よりもグラフィック関連は速くなるものだと思っていた
WinFormは扱うデータサイズが大きくなると消費するメモリサイズが飛躍的に増えるんで、グラフィック関連は扱うのにあまり適していないんだよな
コメント1件

77
デフォルトの名無しさん[sage]   投稿日:2016/11/08 21:15:33  ID:360M0HJP.net(4)
>76
あるポイント数を超えるとまったく実用じゃないくらい遅くなるね。
ポイント数が多くてスピードが要求される場合は、DirectXを使って高速描画出来る有償のコントロールを買うしか無さそう。

数年前の資料だけど、各種チャートコントロールの性能比較
WPF Charting Performance Comparisons (the Battle Continues)
http://blog.scottlogic.com/2012/04/24/wpf-charting-performance-compariso...

78
デフォルトの名無しさん[sage]   投稿日:2016/11/08 23:17:39  ID:6Cpjtpfi.net(4)
ポイント数が多くてスピードが要求されるなら、データを間引いたほうが現実的じゃなかろうか?
データ視覚化なら2、300もアレば十分だろ
コメント1件

79
デフォルトの名無しさん[sage]   投稿日:2016/11/08 23:28:48  ID:o3gm2pi/.net
そんな高度なことができるわけないだろ
コメント1件

80
デフォルトの名無しさん[sage]   投稿日:2016/11/08 23:52:00  ID:6Cpjtpfi.net(4)
>79
もうちょっと頑張れ

81
デフォルトの名無しさん[sage]   投稿日:2016/11/09 00:13:40  ID:HQuuA4JA.net
>49
他のベンダーのヘルプとか見たことないんだろ
MS なんてかなりまともな方だと思う

82
デフォルトの名無しさん[sage]   投稿日:2016/11/09 01:04:00  ID:SotHgA9V.net(3)
>78
系列が少なければね。

83
デフォルトの名無しさん[sage]   投稿日:2016/11/09 01:09:36  ID:SotHgA9V.net(3)
>62
知らないのに当てずっぽうで書いてるのが良く分かるな

84
デフォルトの名無しさん[]   投稿日:2016/11/09 02:23:18  ID:pYqjQFAT.net(9)
>77
イケてるやないか。 でもデータバインディングやったらボロボロ。W

85
デフォルトの名無しさん[]   投稿日:2016/11/09 02:57:40  ID:pYqjQFAT.net(9)
>に相当するってだけで、別に隠しちゃいない。

隠すつもりがなくても視認性が悪いから隠れるんだな。これが、、

WPFの肝は
1.UI部分は XAML で記述
2.実行コードは C# または VB
3.グラフィックス描画は DirectX
4.データドリブン的なものをデータバインディングでやる

1.と4.が手抜きでいい加減だから全然だめ。
1が駄目だから2を書こうにもどう書いたらいいのかわからないというジレンマ
4がダメだから遅いし使いにくいし使い物にならないしトータル的には失望を加速
している。

料理の材料はまあこんなものでいいというか素材は素晴らしい。しかし集めて料理
するんならもっと一つ一つを丁寧に作りこまなくてはだめだろ。これじゃ味の
バランスが悪くて料理になってない。もうひと手間かけるのができないんだよな。
最後までやりきることができない。思い付きと能書きは立派。W

86
デフォルトの名無しさん[]   投稿日:2016/11/09 03:24:51  ID:pYqjQFAT.net(9)
<Window x:Class="SliderTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation";
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml";
Title="Window1" Height="300" Width="300" Background="LightBlue">
<Grid>
<TextBox Height="24" HorizontalAlignment="Left" Margin="30,19,0,0"
Name="textBox1" VerticalAlignment="Top" Width="72"
Text="{Binding ElementName=slider1, Path=Value}"/>
<Slider Height="22" Margin="28,64,20,0" Name="slider1" VerticalAlignment="Top" />
</Grid>
</Window>

この書き方は糞
Text="{Binding ElementName=slider1, Path=Value}"/>

こうなるのが正解。
Text="{Binding slider1.Value}"/>
コメント1件

87
デフォルトの名無しさん[]   投稿日:2016/11/09 04:07:40  ID:pYqjQFAT.net(9)
ファンクションキーのイベント発生に見れるセンスのなさ
こんな書き方はどんだけ糞か? ネーミングのセンスがまるでない。
PreviewKeyDown="Window_PreviewKeyDown"

これがセンスのいいなまえ
FunctionKey = "KeyDown"
もしくは
KeyDown="FunctionKey"
KeyDown="F1"
など
コメント3件

88
デフォルトの名無しさん[]   投稿日:2016/11/09 04:26:59  ID:pYqjQFAT.net(9)
プロパティ値の継承に見る手抜き
 プロパティ値が割り当てられていない子要素がある場合、プロパティ値の設定がある
最も近い親要素の値を割り当てる。W 

まあこういう問題が発生するのも、手抜きが手抜きを生むことの良い例だ。ボタンコン
トロールひとつを表すのに手近な要素をかき集めて作りあげるという手抜きをしたこと
で、イベントがうまく取れないという問題が発生した。そこでイベントルーティング
という新たな手抜き概念を導出してしかもプロパティ継承という誤魔化しまでしなくて
はならなくなった。
 トンネル、バブル、ダイレクト イベント一つにこんだけ複雑なことをする羽目にな
ったのも、最初に行ったわずかな手抜きが原因なのだ。
コメント1件

89
デフォルトの名無しさん[sage]   投稿日:2016/11/09 04:29:27  ID:9orsc4MQ.net
>86
>87

業務で使う場合はViewとViewModelをきっちり分けるよ
なのでバインディング式は下記のように
<TextBox Text={Binding ResultMessage} />
シンプルになる。

View内の他の要素の値をバインドするなんて
滅多にないから(デバッグ時くらい?)、{Binding ElementName=slider1, Path=Value}
みたいな冗長な書き方はいいと思う。

装飾系も普通はResourceDictionaryにまとめる。TextBoxタグ内にゴテゴテ書いたりしない
<Window.Resources>
 <ResourceDictionary>
  <Style TargetType="TextBox">
   <Setter Property="VerticalContentAlignment" Value="Center" />
   <Setter Property="HorizontalAlignment" Value="Left" />
   <Setter Property="Foreground" Value="{StaticResource GlobalForeground}" />
  </Style>
 </ResourceDictionary>
</Window.Resources>

キー押下時のイベント発生もViewはCommandをViewModelに発行するだけだね
<Window.InputBindings>
 <KeyBinding Gesture="Ctrl+T" Command="{Binding MenuOpenCommand}" />
</Window.InputBindings>

イベント発生時の処理内容をxaml.csに記述したりはしない

90
デフォルトの名無しさん[]   投稿日:2016/11/09 04:36:52  ID:pYqjQFAT.net(9)
データバインディングに見る手抜き
「WPF のデータバインディングはこれだけで 1 冊の本が書けるほど面倒です。」という
関係者。たったこれだけで関係者が本を書いて10年は食える飯のタネになる。W

WPFにおけるデータバインディングの重要性と可能性はこの限りにおいては非常に成功
している。テーマとしては食いつきがいい。「これさえマスターすれば、あとは
データを流し込むだけで自動的に表示してくれる」
魅力的なのだ。
食いつきがよくて、複雑怪奇な場合には関係者は情報を小出しにすればかなり長期に
わたってよい飯の種になる。

91
デフォルトの名無しさん[]   投稿日:2016/11/09 04:37:26  ID:pYqjQFAT.net(9)
さあ寝よう。おやすみ
コメント1件

92
デフォルトの名無しさん[sage]   投稿日:2016/11/09 07:27:40  ID:ccPtaul1.net
>91
そこら辺が問題だと思うのなら、全て解決したUWPに移行したら良いんじゃないのかな?
x:Bindで事前バインディングで厳密に型チェックヤるし、イベントバインディングも出来るからな

つか、アンタの言い分はイソップ童話の酸っぱいブドウそのものです

93
デフォルトの名無しさん[sage]   投稿日:2016/11/09 07:54:15  ID:TlbuxVnv.net(2)
個人的にUWPに偏見を抱いている理由はOneNoteが糞なせい
OneNoteの糞さはUWP無関係だと思うが、自分の観測範囲にUWPの実用サンプルがそれしかないので
どうしても印象が引っ張られる

94
デフォルトの名無しさん[sage]   投稿日:2016/11/09 09:17:12  ID:KnEUpDo2.net
XAMLに親を……

95
デフォルトの名無しさん[sage]   投稿日:2016/11/09 09:17:36  ID:SotHgA9V.net(3)
>87
KeyDownってイベントは別にあるぞ

>88
もはや言いがかりのレベルだな

96
デフォルトの名無しさん[]   投稿日:2016/11/09 12:09:48  ID:pYqjQFAT.net(9)
>89
どんな糞言語でも本質をよく見極めてセンス良く使う人はいるものだよ。

しかしそこに到達するまでにどんだけ時間がかかるというのだ。俺なんかわけわからん
から右往左往するばかりだよ。

せめてBlendをまともに作ってくれれば、それなりにUIの問題は解決するのにな。
Blendも糞だろ。W 最近のは使ってないからわからんが、、、

97
デフォルトの名無しさん[]   投稿日:2016/11/09 12:10:37  ID:pYqjQFAT.net(9)
>そこら辺が問題だと思うのなら、全て解決したUWPに移行したら良いんじゃないのかな?
>x:Bindで事前バインディングで厳密に型チェックヤるし、イベントバインディングも出来るからな

今度はUWPかよ。小出しにするなー。つまりWPFは糞だったと認めるんだな。W

98
デフォルトの名無しさん[sage]   投稿日:2016/11/09 12:12:21  ID:C35LXred.net
UWPは互換性取るために使えない機能が多すぎてFormやWPFと比較する気にもなれない

99
デフォルトの名無しさん[sage]   投稿日:2016/11/09 13:18:01  ID:imHVERPt.net
で?。W

100
デフォルトの名無しさん[sage]   投稿日:2016/11/09 13:24:22  ID:13V/HCY3.net
またストアアプリみたいにいつ梯子外されるかわからないUWPに手を出す人は
よっぽどお勉強好きなんだろうなw

仕事ならしょうがないけど自分の時間使って勉強する気にはなれんわ

101
デフォルトの名無しさん[sage]   投稿日:2016/11/09 13:44:46  ID:U6OuotlL.net
WPFに手だしちゃった人ならいけるでしょ

102
デフォルトの名無しさん[sage]   投稿日:2016/11/09 16:05:04  ID:L45XBX69.net
>87
コードビハインドにイベント書くことはおすすめされないし、そもそもPreviewKeyDownってFunctionキーのイベントを受け取るためのイベントじゃないぞ?
WinFormsにも同じ名前のイベントあったじゃん

WPF以前の根本的な能力がかけてるんじゃね?

103
デフォルトの名無しさん[sage]   投稿日:2016/11/09 19:12:41  ID:UPD5ANvk.net
UWPって多重起動できるんですか?

104
デフォルトの名無しさん[sage]   投稿日:2016/11/09 19:23:20  ID:c1gJ8Ir2.net
Windows10のPCは買ったけど、予備にした古いPCで動かす事を考えたらUWPは使いたくないな
まだ動く7とXPのPCがあるからな

105
デフォルトの名無しさん[sage]   投稿日:2016/11/09 20:02:19  ID:xK7OwzcU.net
WPFやってないんだが、そもそもXAMLは人間が見る必要のあるものなのか?
VSのデザイナやBlendがダメすぎるのか?
フォームでさえ、.Designerの中身なんてほぼ見る事ないのに

人間が生のXAML見たり編集したりしないとダメならそら普及しないなと思うが

106
デフォルトの名無しさん[sage]   投稿日:2016/11/09 20:09:14  ID:y+VOBp5j.net
XAMLはなにもかもXML(?)で記述できるようにしようとして失敗してる感じ
レイアウトだけにしとけばいいのに

107
デフォルトの名無しさん[sage]   投稿日:2016/11/09 20:09:22  ID:knOh/4SR.net
データバインディングが遅いとかいって大量データをなんの工夫もなく描画する画面を引き合いに出す人ってたまにいるけどあれって悪意があってやってるの?

108
デフォルトの名無しさん[sage]   投稿日:2016/11/09 21:24:36  ID:WmFTPhhE.net
普通、設定ファイルを、人が直接いじったりしない

Godot(ゴドー)などのゲームエンジンでは、IDEの右側にある、
インスペクタービューで、プロパティなど設定する

オブジェクト同士の衝突判定・イベント通知なども、同じ

109
デフォルトの名無しさん[sage]   投稿日:2016/11/09 21:25:12  ID:TlbuxVnv.net(2)
どこぞのフレームワークで「人間にXMLを書かせるなんて虐待です」って書いてるのがあったけど
ほんとその通り

110
デフォルトの名無しさん[sage]   投稿日:2016/11/09 23:41:49  ID:7n7DDFeG.net
つうかここってC#+Windowsフォームしかやってないやつばかりなの?
XAMLはそもそもWPFだけのもんじゃないんだが。
Silverlightにも使われていたしUWPにも使われてる。
そしてC#だけじゃなくVBにも使われてる。
つまり、言語やクラスライブラリなどから分離できるものは分離しようっつーのがXAMLでしょ。
C#/VBとXAMLの関係はJavaScriptとHTMLの関係と似てる。
XAMLを批判してる奴ってほんとにXAMLを理解してんの?

111
デフォルトの名無しさん[sage]   投稿日:2016/11/10 00:11:40  ID:TlbdJV8L.net
1日で挫折したのにここまで批判できる >48 はすごい人
コメント1件


112
デフォルトの名無しさん[sage]   投稿日:2016/11/10 00:22:28  ID:4pFcdHJl.net(2)
JavaScriptとHTMLではなくJavaScriptとJSONの方が近いな
XAMLはただのシリアライズフォーマットの1つでしかない
WPFと関係ない普通のオブジェクトもXAMLにシリアライズできる
そんでXAMLはJSONと違って型とアセンブリの情報を持つ
UIデザインを宣言する手段として考えると書きにくいXAML形式よりシンプルでインテリセンスもよく働くC#コードの方が優れているのは確かだろう
しかしそうではなく可視性と可搬性のある普遍的なシリアライズフォーマットとして考えるとXAMLがXMLを採用したのは自然な帰結と言える
可視性のためにはテキストでなければならない
可搬性と普遍性では対抗馬としてJSONがあるがJSONはシンプルすぎて表現力がちょっと物足りない
となるとXMLは妥当な選択と言っていい
新しい時代に乗り遅れてXMLにしたわけでもないし虐待目的でXMLにしたわけでもない
XAMLの目的に合致するフォーマットではXMLがベストだったというだけの話なんだ

113
デフォルトの名無しさん[sage]   投稿日:2016/11/10 00:29:57  ID:ApowNrKS.net(4)
wpf使うならelectronでいいや感ある

114
デフォルトの名無しさん[sage]   投稿日:2016/11/10 01:16:39  ID:Co+DcSGG.net
AndroidStudio使っててもXMLは出来るだけいじりたくないw

115
デフォルトの名無しさん[]   投稿日:2016/11/10 01:52:09  ID:aHkFnxeg.net(18)
>102
ん?
それは考え方に矛盾があるだろ。UIを切り離すのが目的なら、切り口がシンプルで
綺麗なほうがいい。
例えばスクロールバーと連動して値を表示する場合なんてUI内でまとめて片づけて
しまったほうがいい。
ほしいの値だけで、処理側からしたらくだらないイベントなんて見えないほうがいい。
そっちでまとめてやってほしい。
コメント1件

116
デフォルトの名無しさん[]   投稿日:2016/11/10 01:52:28  ID:aHkFnxeg.net(18)
>XAMLを批判してる奴ってほんとにXAMLを理解してんの?

理解できないなから文句を言ってるんだよ。機械が簡単に理解できるからって
人間にそれを押しつけるのは間違い。
XAMLってのは単なるテキスト文書じゃない。プログラム全体から複雑なUIを切り離して
表現するという目的がある。複雑なUIは手打ちで入力するようなものじゃない。

UI={動作、表現、パラメータ、、、、}+窓口

プログラム=>窓口

UIの窓口さんにいえば{、、、}なかはわからなくても大体処理できる。そういう関係
なわけよ。窓口が美人でテキパキしてないとダメだろ。
時々あるんだが、大企業の開発部に電話してるのに田舎のおばちゃんみたいなのが
窓口で
「はあ、田中さんは今日はおらんよ、どっかに出張するからって鞄を下げて出て行った
よ」
みたいな感じな。
XAMLの美人の窓口さんはどこ? ねえ
コメント1件

117
デフォルトの名無しさん[sage]   投稿日:2016/11/10 02:08:02  ID:CCFq8Qep.net(2)
>111
批判って言うより、ほとんどいちゃもんだけどな。

118
デフォルトの名無しさん[sage]   投稿日:2016/11/10 02:16:50  ID:lTw5QLQW.net
長文マンは無駄に下手な比喩ばっか使って文意がわかりづらいな

119
デフォルトの名無しさん[]   投稿日:2016/11/10 02:20:15  ID:aHkFnxeg.net(18)
じゃあ具体的に書いたろか

textBox1.Text = "Hello, World!"
これでいいのに

public class Data
{
public string TextHelloWorld
{
get { return "Hello, World!"; }
}
}
example.xaml
<TextBox Text="{Binding Path=TextHelloWorld}" />

これだもんな。W
XAMLがデータを取りに行ってくれる。一見便利だが、いちいち細かい指示を出して
説明してやらんと分からんやつだから、教えるほうが手間。自分でHello!!て
書いたほうがなんぼかまし。
あれだ、パラダイムシフトだなんだって言ってるが、シフトダウンだよな。
コメント2件

120
デフォルトの名無しさん[sage]   投稿日:2016/11/10 02:26:27  ID:wdbpo9Rt.net(2)
それXAML側でName="textBox1"と定義してやれば、this.textBox1.Text = "Hello, World!"で済むだろ

121
デフォルトの名無しさん[sage]   投稿日:2016/11/10 02:30:19  ID:YdauEkQ9.net
WPFとFormを同じXAMLから生成出来ればもっと使い道もあるんだけどな

122
デフォルトの名無しさん[]   投稿日:2016/11/10 02:31:25  ID:aHkFnxeg.net(18)
比喩だとわからんか?
窓口ってのは会社の顔だよ。XAMLの顔はというとBindingだ。ここが窓ぐち。
こいつが田舎もんだから、、、、W
コメント1件

123
デフォルトの名無しさん[sage]   投稿日:2016/11/10 02:33:21  ID:4pFcdHJl.net(2)
>122
でもそれってXAML関係ないじゃん
なんでさっきXAMLディスってたの?

124
デフォルトの名無しさん[sage]   投稿日:2016/11/10 02:33:22  ID:wdbpo9Rt.net(2)
わざとミスしてレスが欲しいのか自分の主張を通したいのかどっちなのよ

125
デフォルトの名無しさん[sage]   投稿日:2016/11/10 02:55:22  ID:bu4ikKWV.net
>119
ぇ、それだけじゃXAMLは取りに行かないよ。
Dataクラスからの通知機構は無いの?

126
デフォルトの名無しさん[sage]   投稿日:2016/11/10 03:08:35  ID:zCCtWAZL.net(3)
>115,116
?例が適当すぎて言いたいことがわからん
スクロールバーと連動して値を表示するのはバインディングで済むからUIのイベントなんて使わないだろ

UIを切り離すんじゃなくて、VとVMを切り離すのが目的
コメント1件

127
デフォルトの名無しさん[sage]   投稿日:2016/11/10 03:17:22  ID:zCCtWAZL.net(3)
>119
バインディングする意味のないソースを出されても

さっき言ったスクロールバーとその値を表示するテキストボックスの例を見ればいいんじゃない?
バインディングを使わないとイベントを利用してそれぞれの値を相互に書き換える必要があって面倒とかそういうの

128
デフォルトの名無しさん[sage]   投稿日:2016/11/10 06:37:59  ID:B4277xpo.net
XAMLを批判したいけどちゃんと理解してないから筋の通った批判ができない悲しさ

129
デフォルトの名無しさん[sage]   投稿日:2016/11/10 07:36:13  ID:o8sMendu.net(3)
>126
例えばGridSplitter付きのパネルの開閉をアニメ付きでヤるとしたら、xamlじゃとても書けないけど
VMにやらせる仕事じゃないって場合とか、BringToViewなんかもViewで完結させるべき仕事だね
ビヘイビアやトリガーアクション使ってもいいけど無理やり突っ込むこともない

130
デフォルトの名無しさん[]   投稿日:2016/11/10 07:51:19  ID:aHkFnxeg.net(18)
<TextBox Name="Text1" Height="23" Width="70" Margin="5"
HorizontalAlignment="Left" VerticalAlignment="Top"
Text="Button" />

<Button Name="btn1" Content="{Binding Text1.Text}" Height="23" Width="70"
Margin="5,35,0,0" HorizontalAlignment="Left" VerticalAlignment="Top"
Click="Button_Click"/>

ちっともBindingせんがーーー。W
エラーもでんし。

131
デフォルトの名無しさん[]   投稿日:2016/11/10 07:53:05  ID:aHkFnxeg.net(18)
>128
このバインドの書き方のどこが筋が通ってないんや?

132
デフォルトの名無しさん[]   投稿日:2016/11/10 08:11:55  ID:aHkFnxeg.net(18)
this.DataContext =this;
 そうだこれがぬけてると検索場所が特定できんのだ。
私は私ですから私を検索してくだされ。

えっ、これでもやっぱりだめ。

133
デフォルトの名無しさん[sage]   投稿日:2016/11/10 08:24:57  ID:o8sMendu.net(3)
彼の言うXamlの欠点とやらは、マークアップ言語ならどれでも持っているもので
xamlはhtmlと比べたら格段に進歩した代物だ

まあこんなケチを付けているんだから
htmlなんて触ったことない化石プログラマーなんだろうね

134
デフォルトの名無しさん[]   投稿日:2016/11/10 08:57:47  ID:aHkFnxeg.net(18)
マークアップの欠点とBindingの欠点と、、、と幾つかの欠点を併せ持っているという
ところが味噌。

135
デフォルトの名無しさん[sage]   投稿日:2016/11/10 09:16:40  ID:o8sMendu.net(3)
可読性を問題にしていたはずが、ロジックとマークアップが混在するhtmlを批判せずに
それを解決する方法のBindingにケチをつける

化石の末期だなw

136
デフォルトの名無しさん[]   投稿日:2016/11/10 09:43:37  ID:aHkFnxeg.net(18)
<Window.Resources>
<SolidColorBrush x:Key="MyBrush" Color="Blue"/>
</Window.Resources>
ボタンのインスタンスIDはNameでリソースの場合hx:Keyかよ。笑かすな。W

137
デフォルトの名無しさん[]   投稿日:2016/11/10 10:15:41  ID:aHkFnxeg.net(18)
物事を識別するには名前が肝心である。名前は適切で少ない方がいい。

大本の識別機構の混乱
XAMLコード中でIDictionaryインターフェイスを実装する要素に子要素を追加する際には
x:Key 属性の指定が必須
 ただし、Styleクラス(System.Windows名前空間)のように、クラスにDictionaryKeyPropertyAttributeを付与して、(x:Key 属性の)代替となるプロパティ(Styleクラスの場合はTargetTypeプロパティ)を設定しているクラスの場合には、x:Key属性 を省略可能。
Styleクラスでは、x:Key 属性の代替としてTargetTypeプロパティを利用している。

高々リソースに名前振るだけで、、、ぷっ。

138
デフォルトの名無しさん[]   投稿日:2016/11/10 10:16:51  ID:aHkFnxeg.net(18)
>135
無批判に受け入れるのはよくない。「飼いならされて、食用にされる家畜」だよ。
In the world's broad field of battle,
In the bivouac of Life,
Be not like dumb, driven cattle !
Be a hero in the strife !

139
デフォルトの名無しさん[]   投稿日:2016/11/10 10:29:24  ID:aHkFnxeg.net(18)
@ITデータバインディングを理解する。
http://www.atmarkit.co.jp/ait/articles/1010/08/news123.html
1ページ何を言ってるのか全然わからん。突っ込みどころが多すぎて、突っ込む気にもならん。
それとも誤字脱字が多いのかな?なんか説明が間違ってるだろ。論理がつながっていない。

うちのばあちゃんにでもわかるように説明してみろや。

{Binding X} という書き方は、{Binding Path=X} と同じ意味である。
藁、「同じ意味である」って、そんなら最初から一つに絞っておけよ。

{Binding Path=X} いらんだろ。
BindingにPath以外のプロパティはないんだろ!! 最初からBindingでいいだろ
パスもプロパティもいらんわ。
コメント2件

140
デフォルトの名無しさん[]   投稿日:2016/11/10 10:43:36  ID:aHkFnxeg.net(18)
 外部リソースを取り込むには、<ResourceDictionary>要素にSource属性を付ける
<Window.Resources>
<ResourceDictionary Source="Styles.xaml"/>
</Window.Resources>

includeにしろよな。常識だろ。

141
デフォルトの名無しさん[]   投稿日:2016/11/10 11:38:19  ID:ElAt+S/3.net(2)
質問です
フォームにプロパティグリッドがあります
プロパティグリッドの中でCtrl+Zを押したときに
普通はプロパティグリッドが持っているアンドゥが呼ばれますが
これをフォームの独自のアンドゥ・メソッドを呼び出すようにしたいのですが、
どうすればいいですか?
コメント1件

142
デフォルトの名無しさん[sage]   投稿日:2016/11/10 12:03:59  ID:dRW/oH8h.net
>141
思いつくのは、IMessageFilterを使ってWM_KEYDOWNでCtrl+Z拾ってやることかな
入力中のコントロールをControl.FromHandleで取れたら幸い
コメント2件

143
デフォルトの名無しさん[sage]   投稿日:2016/11/10 12:19:50  ID:CCFq8Qep.net(2)
>139
Pathは省略可能ってだけで、他にもプロパティあるし。
自分で張ったリンク先の2ページ目にも書いてあるだろ。

144
デフォルトの名無しさん[sage]   投稿日:2016/11/10 12:41:10  ID:lWSBQV9X.net
>116
理解できない自分の頭を呪いな

145
デフォルトの名無しさん[sage]   投稿日:2016/11/10 12:59:35  ID:otGHoxmh.net
>142
.NET1.1の頃からそんなのあったのか
まったく知らなかったw

しかし、IMessageFilterっていうかApplication.AddMessageFilterって結構恐ろしい仕組みだなw
NativeWindowの方が安全な気がするんだけど

146
デフォルトの名無しさん[sage]   投稿日:2016/11/10 13:07:51  ID:ElAt+S/3.net(2)
>142
IMessageFilterでCtrl+Z拾ってできました
ありがとうございます

147
デフォルトの名無しさん[sage]   投稿日:2016/11/10 14:50:01  ID:zCCtWAZL.net(3)
>139
結局、言われた指摘には何も返せず自分が理解できないのに適当に騒いでるだけじゃん
C言語とかやったら配列があればポインタいらないじゃん!とか騒いでそう

省略可能な記述についても、html5とかの仕様を見たらhtmlとかbodyとかのタグいらないじゃん!とか叫びそう
http://qiita.com/labocho/items/54fd70c73ced35c8ba49

148
デフォルトの名無しさん[]   投稿日:2016/11/10 15:34:39  ID:aHkFnxeg.net(18)
グダグダ言わずに、本質はどういうことかを捉えてどう説明できるかが問題やな。
Bindingの本質はというと要するにXamlのText="{Binding pName}" が意味するのは

var bind = new Binding("pName") { Source = per };
  text1.SetBinding(TextBox.TextProperty, bind);

この二つの処理やないか。こいつを省略形で書いてるだけのことやろ。
チュートリアルでちゃんとこう言うように書けよな。そしたら3秒でわかるのに。
原辰。

149
デフォルトの名無しさん[]   投稿日:2016/11/10 15:45:02  ID:aHkFnxeg.net(18)
>143
1pが意味不明なので2pは見てなかった。

しかもインテリセンスが糞やからPath以外のプロパティがあるのかないのかわからん。
あくまでも
「BindingのプロパティはPath以外に無い」という前提、仮説の下でケチつけてる
わけであって、それはチャンと明記している。W

一遍にりかいするんは難しい。

OneWay ソースからターゲットへの一方通行の同期になります。
TwoWay ソースとターゲットの双方向の同期になります。
OneWayToSource ターゲットからソースへの一方通行の同期になります。
OneTime ソースからターゲットへ初回の一度だけ同期されます。

モードがあるじゃないか。ならインテリセンス効かせろや。

150
デフォルトの名無しさん[]   投稿日:2016/11/10 15:59:51  ID:aHkFnxeg.net(18)
しかしBinding部分は顔だし肝なのにここを
 正確に説明できん
 プロパティのインテリセンスも出せん
とか、要するに自分の頭で考えたものじゃなくて、アッチコッチから借りてきた借り物をくっつけ
て作り上げてるからだろ。ほんとうのところが正確に把握できてないんだよな。

151
デフォルトの名無しさん[]   投稿日:2016/11/10 16:05:52  ID:aHkFnxeg.net(18)
内容が変更したときにはどうすんの?
 INotifyPropertyChangedインターフェースを実装
 DependencyPropertyにしてしまう (インスタンスを生成したスレッドのみに限定される)
二つの方法がある。

PropertyChanged(this, new PropertyChangedEventArgs("pName”));
プロパティの変更でこれをやってやればいい。

なんやねん。結局イベント処理は書かなだめやないか? どんだけのメリットがあるか。W

152
デフォルトの名無しさん[sage]   投稿日:2016/11/10 16:10:01  ID:ApowNrKS.net(4)
ラムダ君
LINQ君
XAML君←new
コメント1件

153
デフォルトの名無しさん[]   投稿日:2016/11/10 16:33:44  ID:aHkFnxeg.net(18)
結局普及しないのは、関係者がちゃんと理解できていないのではないかな。
WEBを見たら、いろいろと説明が書いてるがどれも分りにくい。

C#でもVBでも1日も触っていたら、そこそこ使えるようになる。うろ覚えでも
プログラムはできる。
 WPFは説明が中途半端なので肝の部分がはっきりしない。

バインディングするんならイベントもちゃんとバインディングしないとだめだわ。
バインディングを間違っていても反応なしだしな。W エラーすらチェックできてない。
中途半端。
コメント1件

154
デフォルトの名無しさん[sage]   投稿日:2016/11/10 17:47:19  ID:riiUw9jl.net
>152 命名のXAML君は、staticおじさんと同じ加齢臭がする

155
デフォルトの名無しさん[sage]   投稿日:2016/11/10 17:49:55  ID:ApowNrKS.net(4)
ラムダとLINQも新しいことを拒絶するstaticおじさんだろうな

156
デフォルトの名無しさん[sage]   投稿日:2016/11/10 19:15:21  ID:pqjjw4yY.net
ラムダとLINQの時は使うなとか言っているやつがいたからな
拒絶するのは勝手だがいちいち布教しようとするのはウザイ

157
デフォルトの名無しさん[]   投稿日:2016/11/10 19:22:39  ID:CGPJd07S.net(2)
IEでニコ生みたいなストリーミング動画を見る際に、動画データがメモリーに展開する前にデータをリアルタイムでキャプチャするにはどうしたらいいでしょうか?

158
デフォルトの名無しさん[sage]   投稿日:2016/11/10 19:23:04  ID:ApowNrKS.net(4)
C#のLINQは名前が他の言語と違うから一瞬迷う

159
157[sage]   投稿日:2016/11/10 19:31:03  ID:CGPJd07S.net(2)
すみません分かりづらかったです。
IEで動画見ながら、IEがダウンロードしてるデータがストリーミング動画かどうかを判断して、動画ならIEの画面に表示される前に手を加えたいんです。
コメント1件

160
デフォルトの名無しさん[sage]   投稿日:2016/11/10 19:36:34  ID:hirKpSKv.net
ストリーミング中の動画に手を加えられるだけの技能があるのがすごい

161
デフォルトの名無しさん[sage]   投稿日:2016/11/10 20:17:59  ID:13nZCkn2.net
使う価値があると思えば使えばいい
自分が使うのは無理だ参りましたと思ったら使わなければいい
ただどちらを選択したかは別に他人に伝えなくていい

162
デフォルトの名無しさん[sage]   投稿日:2016/11/10 22:17:57  ID:c1KzPo7d.net
>159
現実的な内容じゃない
基本的に無理
プロキシ―作っても動画をいじれる技量が君にあるとは思えない

163
デフォルトの名無しさん[sage]   投稿日:2016/11/10 23:07:13  ID:pEVMYV3p.net
IEに、そういうプラグインがあるのか、探してみれば?

IEは、オープンソース(OSS)じゃないから、改造するのは難しい。
OSSは、Firefox, Chromium, Safari

Atom, Visual Studio Code, Electron は、Chromiumを使っている

164
デフォルトの名無しさん[sage]   投稿日:2016/11/11 03:04:38  ID:+gNs9Nbk.net(2)
>153
君はWPFどころかC#もよく理解できてないみたいだから、C#入門書からスタートするのがおすすめ

165
デフォルトの名無しさん[]   投稿日:2016/11/11 04:07:56  ID:KgVthd+h.net(10)
>157
ストリーミングをやるコンポーネントはあるだろ。そのデータ取り込み部分を
バッファリングして中を加工すればいいだけだろ。W
画像認識をするのかな?

166
デフォルトの名無しさん[]   投稿日:2016/11/11 07:05:40  ID:KgVthd+h.net(10)
MVVMのICommandの使い方
ICommandを実装する理由はなんだ?
 http://www.atmarkit.co.jp/ait/articles/1011/09/news102_3.html
これは読んでいくとよくまとまっているが、これだけでは難しすぎて
何を言ってるんかわからん。まるでMS。

そもそもICommandってなーに?

1. 処理の実行可否を状態として持つ、また状態の変更を通知
2. XAMLからメソッドの呼び出しはコードビハインドしか利用できないが、ICommandはバインドが利用でき別クラス(ViewModel)の処理を呼び出すことができる
中身は
public interface ICommand
{
void Execute(object parameter);
bool CanExecute(object parameter);
event EventHandler CanExecuteChanged;
}

167
デフォルトの名無しさん[sage]   投稿日:2016/11/11 07:07:03  ID:zUQAdwQM.net
イベントを再定義したかった人生だった(Command辞世の句)

168
デフォルトの名無しさん[]   投稿日:2016/11/11 07:08:21  ID:KgVthd+h.net(10)
いい例がある。これならわかる。これを逃してしてしまうと永久にわからないというほどの
優れた例を提示しておく。

優れた例
XAML
<TextBox Text="{Binding Name}"/>
<Button Content="実行" Command="{Binding ExecuteCommand}"/>
<Label Content="{Binding Result}"/>

ViewModel
  public DelegateCommand ExecuteCommand { get; }
public MainWindowViewModel(){
ExecuteCommand = new DelegateCommand(() => Result = "登録OK", CanExecute);
}
private bool CanExecute(){
return !string.IsNullOrWhiteSpace(Name);
}
private string _name;
public string Name{
get { return _name; }
set { if (OnPropertyChanged(ref _name, value)) ExecuteCommand.RaiseCanExecuteChanged();}
}

169
デフォルトの名無しさん[]   投稿日:2016/11/11 07:09:49  ID:KgVthd+h.net(10)
肝:DelegateCommandをプロパティとして公開
  コンストラクタの中でインスタンス化

() => Result = "登録OK"
これはなんやねん? このアクションの書き方がわからんなーという人。
ラムダ式、、、初めて聞いた?
コメント1件

170
デフォルトの名無しさん[]   投稿日:2016/11/11 07:13:06  ID:KgVthd+h.net(10)
>君はWPFどころかC#もよく理解できてないみたいだから、C#入門書からスタートするのがおすすめ

C#の方が難しいわ。まあでも何とか動かせる。WPFもBindingだけわかったので何とか
使えるレベルにはなったな。

問題はMVVMパターンだな。
MVVMじゃなくてM-VM-VかV-VM-Mでないとだめだよな。VVMMの方がいいと思う。

171
デフォルトの名無しさん[]   投稿日:2016/11/11 07:23:51  ID:KgVthd+h.net(10)
WPF攻略方法
1.Bindingの理解
2.「優れた例」でVVMM(またはMVVM)を理解する こっちはまあボチボチでもOK

MSの文書は酷いがIT−PROの文書は体裁としてはよくまとまってはいるが説明が難しい。
 第一に例が悪い。
 第二に例にセンスがない。
 第三に例の説明が下手。
単純化したシンプルな例で示さないと「俺はこんなにすごいんだぞ」みたいな
複雑な例では分からん。

172
デフォルトの名無しさん[]   投稿日:2016/11/11 08:31:34  ID:KgVthd+h.net(10)
MVVMのVMってわざわざ苦労してクラスをつくる必要あるんか?
コードビハインドをVMにしたらいいんではないか? VとのIFはここで全部やった
らいいと思うがな。
なんか必要性がいまいちわからんなー。
コメント1件

173
デフォルトの名無しさん[sage]   投稿日:2016/11/11 08:51:31  ID:qDFZLZyC.net(2)
>172
必要性が何なのかちゃんと調べたのかい?

174
デフォルトの名無しさん[sage]   投稿日:2016/11/11 09:40:30  ID:yIFyhkZ0.net
DIコンテナを導入すると、VMとMの2層構造のありがたみが実感できるんだけどな

175
デフォルトの名無しさん[sage]   投稿日:2016/11/11 09:43:11  ID:M2uBl8fv.net
>169
ラムダ式は、Java, JS, Rubyなど、たいていの言語にある

例えば、独自の方法で、ソートしたい場合、先に比較関数を定義してから、
その関数を引数として、sort()に渡す

比較関数{ ここで定義する };
sort(比較関数);

ところが、先に定義するのは面倒だから、sort()の引数の所で、
匿名(無名)関数として定義して、そのまま引数として渡せれば、簡単。
それの糖衣構文で、関数宣言も無くしたのが、ラムダ式

JSで書くと、
var a = ["Hydrogen", "Helium", "Lithium", "Beryl-lium"];

匿名関数・ラムダ式
var a2 = a.map(function(s){ return s.length });
var a3 = a.map( s => s.length );

176
デフォルトの名無しさん[]   投稿日:2016/11/11 13:38:45  ID:KgVthd+h.net(10)
ラムダ式なんて高級なもが巷にあふれているとは初めてしった。めったに
使わないかな。
 右も左もわからないのにアンドロイドアプリ(簡単なんだが、、)を作る
羽目になってしまった。しかしXamalinダウンロードしてみたらXamlに似ていて
驚いたわ。W
 WPFを勉強したかいがあった。これからバリバリつくってみる。
コメント1件

177
デフォルトの名無しさん[sage]   投稿日:2016/11/11 18:30:50  ID:ciOc6C5W.net
リスト操作系関数を一度使ってしまうともう戻れなくなる
例えば、List<string>をList<object>に変換したい時、
var hoge=list.map(x=>(object)x);
だけで良い。foreachとかで書くより楽で読みやすい
コメント1件

178
デフォルトの名無しさん[sage]   投稿日:2016/11/11 18:55:28  ID:+ZeaIXfw.net
名前を付けるのも馬鹿らしい単純な操作を表現するには
やっぱりラムダ式が便利だと感じる

179
デフォルトの名無しさん[sage]   投稿日:2016/11/11 18:56:03  ID:qDFZLZyC.net(2)
>176
Xamlに似てる?勘違いしてんぞお前

180
デフォルトの名無しさん[sage]   投稿日:2016/11/11 18:57:11  ID:0OJ17qIg.net
>177
List<T>.ComvertAll<TOutput>(Converter<T,TOutput>)ではダメなんか?

181
デフォルトの名無しさん[]   投稿日:2016/11/11 19:20:11  ID:KgVthd+h.net(10)
>179
Xamlそのものだわ。C++もC#のFormもXmalinUIもあって、3種類の開発環境がある。
まともに動けば凄いよ。W
でもサンプルを動かしたまではすんなりいったんだが署名ができないとか、文字ばけ
するとかどうも先が思いやられるのでxamalin
やめてAndroid Studioにしようかと迷ってる。こっちはJavaだけど、、
コメント2件

182
デフォルトの名無しさん[sage]   投稿日:2016/11/11 19:58:04  ID:JZCe9Y2P.net
ラムダ厨うぜー

183
デフォルトの名無しさん[sage]   投稿日:2016/11/11 20:14:46  ID:tUVkv4AT.net
おはようラムダ君

184
デフォルトの名無しさん[sage]   投稿日:2016/11/11 20:20:02  ID:TqB+9XQ4.net
ランバダなら知ってる

185
デフォルトの名無しさん[sage]   投稿日:2016/11/11 20:27:50  ID:nfVHRfzR.net(2)
>181
c#初心者スレがあるからそっちにいった方がいい
いい加減うっとおしい

186
デフォルトの名無しさん[sage]   投稿日:2016/11/11 20:46:50  ID:KgVthd+h.net(10)
アッ、もうC#は卒業したんでこないよ。次はJAVAだ

187
デフォルトの名無しさん[sage]   投稿日:2016/11/11 20:49:06  ID:nfVHRfzR.net(2)
それは良かった

188
デフォルトの名無しさん[sage]   投稿日:2016/11/11 21:09:36  ID:TOO7Y3Ld.net
ε-(´∀`*)ホッ

189
デフォルトの名無しさん[sage]   投稿日:2016/11/11 22:25:05  ID:+gNs9Nbk.net(2)
>181
XamarinはC#に相当慣れ親しんでるか、androidもiOSもそこそこやってる人がまとめて開発したいって場面以外ではまだおすすめできる状態じゃないかな
まだ情報も少ないし、ラムダ式とかイベントとかの基本を自力で調べられない人には特に厳しいと思う

190
デフォルトの名無しさん[]   投稿日:2016/11/12 20:58:13  ID:RWma0It4.net
古いWindowsマシンでAndoroid開発しようとすると
まずエミュレータが動かない

WindowsPhoneが頑張ってくれてたら
引き続きVisualStudioで開発できたのに
どうしてここまで差を付けられたのか

MSってエリート揃いじゃないのかな?

191
デフォルトの名無しさん[sage]   投稿日:2016/11/12 21:30:04  ID:cIUa0gZx.net
古いマシンで開発するやつの事なんかMSが面倒見る義理ねえよ

192
デフォルトの名無しさん[sage]   投稿日:2016/11/12 23:10:09  ID:l9OhshgV.net
Win10で露骨にレガシーおじさん切り捨てに来たし
流石の聖人マイクロソフトもお荷物を抱えきれなくなってきたんだろうね

193
デフォルトの名無しさん[sage]   投稿日:2016/11/13 02:11:36  ID:PRCnkR8c.net
xamlが嫌いなら、全部コードで書けば良いのに。
Bindingが理解出来ないのなら、全部コードビハインドで書けば良いのに。

194
デフォルトの名無しさん[sage]   投稿日:2016/11/13 02:55:57  ID:+xp6lf8w.net
WPFって学習コストが高い(少なくとも俺にとっては)から
苦労して覚えたものを擁護したくなる気持ちはわからんでもないけど、
10年経ってもほとんど普及してないのにはやっぱりそれなりに理由があると思う。

パフォーマンスの問題は目をつぶるとしても、個人的には可読的じゃないのが大きいと思うんだよね。
書いてるときはいいんだけど、自分が書いたものであっても後から見るとどこで何をやってるのか
ぱっと見て分からないし見当がつかない。

MVVM(正直これはあんまり理解してないんで誤解してるかもしれんが)にしてもそうだけど、
理念的に綺麗なのはわかるけど何か「これじゃない」感が強いというか、美しい理想の実現のための
コストが大きすぎるというか...
コメント3件

195
デフォルトの名無しさん[]   投稿日:2016/11/13 09:01:19  ID:sNDrzqcx.net(2)
>194
綺麗なコードをみてみたら素晴らしさが一発でわかるとおもぞ。直感的にすぐに
わかる。わからないようなのではだめだな。

だれか194のためにだせるかな?

196
デフォルトの名無しさん[sage]   投稿日:2016/11/13 09:45:56  ID:lb7gRuG3.net
>194
同意。結局世の中に求められてるのは
大ヒットしたVB6レベルなんじゃないかねえ
SOAPがはやらなかったのも一緒。

197
デフォルトの名無しさん[sage]   投稿日:2016/11/13 10:23:03  ID:67al7/78.net(3)
VB6っぽくも書けるんだけどね。
ポトペタも出来るし。

198
デフォルトの名無しさん[]   投稿日:2016/11/13 10:23:37  ID:sNDrzqcx.net(2)
んーーーーんと考え込むよりもサクサクと作ったほうが手数は多くても生産性が
上がる。と考える人が殆どだから?
コメント1件

199
デフォルトの名無しさん[sage]   投稿日:2016/11/13 10:50:51  ID:lO2MkZMm.net
html知っていればxamlの可読性にケチを付けること無いと思うんだが
今時html触ったことない人なんだろうか?
コメント1件

200
デフォルトの名無しさん[sage]   投稿日:2016/11/13 11:12:37  ID:ZjdX2IN8.net
>198
んーーーーんと考え込むよりもサクサクと作れるような案件ばかりだからだろ

201
デフォルトの名無しさん[sage]   投稿日:2016/11/13 11:39:53  ID:IKKUDTFw.net(2)
>194
そんな擁護とか色眼鏡で見ないでも、単純に学習コストが高いのが一番のネックだろう。

202
デフォルトの名無しさん[sage]   投稿日:2016/11/13 11:52:49  ID:fBLfWj6L.net
どこで何をやってるかわからない、ってのが不思議だな
振るまいを独立にモデリングした上で、UIのどことモデルのどこを対応付けるか、を明確化するのがMVVMであり、バインディングの利点じゃん?
従来のフォーム・イベントゴリ押し的なやり方だとこれが曖昧化してしまうから、どこで何をやってるかがわからなくなる
MVVMでわけわからなくなる人はなにか根本的に間違ったことやってるんじゃないかな?
コメント1件

203
デフォルトの名無しさん[sage]   投稿日:2016/11/13 12:15:54  ID:IKKUDTFw.net(2)
>202
慣れてないだけだと思う

>194
MVVMは高コストって主張も分かる。
単純な案件にはオーバースペックだし、Formsでも十分。

204
デフォルトの名無しさん[sage]   投稿日:2016/11/13 14:15:44  ID:67al7/78.net(3)
こうして人は老いて逝くのかな。

205
デフォルトの名無しさん[sage]   投稿日:2016/11/13 15:30:42  ID:zWTpia8y.net
「フロントエンド界隈」が、声だけでかくて市場としては滅茶苦茶小さいのにに似てる

206
デフォルトの名無しさん[sage]   投稿日:2016/11/13 19:32:23  ID:wHFHc9ra.net
フロントエンドプロセッサ

207
デフォルトの名無しさん[sage]   投稿日:2016/11/13 19:51:43  ID:6IaE8voh.net
MVVMはOOPと相性悪いよな
間違った変更は拒絶して例外を投げるのが基本のOOP
間違った変更を一時的に受け入れて(そのかわりエラーを状態の一部として持つ)コミット時に不変条件を満たせば良いMVVM
Formsなら例外をキャッチしてメッセージを出して入力を戻すだけでいいからOOP的に正しいモデルをそのまま再利用できる
要するにビューがドメインモデルについてよく知らなくてもビジネスルール的に正しい状態に保つことができる
MVVMだとビュー及びビューモデルがビジネスルール的に正しいか正しくないかということを知っていなければならない
それはビューやビューモデルではなくドメインモデルが管理すべき情報でしょ

208
デフォルトの名無しさん[sage]   投稿日:2016/11/13 22:40:30  ID:67al7/78.net(3)
レイヤーが違うと思うけど。

難しいから全部フラットで良いよ。

209
デフォルトの名無しさん[sage]   投稿日:2016/11/14 17:11:40  ID:iSq4NCna.net
var dic1 = new Dictionary<string, string>() { { "key", "value" } };
var dic2 = new Dictionary<string, string> { { "key", "value" } };
どちらでも動くようなのですが、カッコは付けるほうが良いですか?
コメント1件

210
デフォルトの名無しさん[sage]   投稿日:2016/11/14 19:10:02  ID:xSfNgSMs.net
>209
お好きな方で。

今なら
{["key"] = "value"}
の方が解りやすいかも。

211
デフォルトの名無しさん[sage]   投稿日:2016/11/14 22:10:40  ID:p26anzny.net(2)
テキストボックスの入力欄A, B, Cがある
A, Bは自由入力欄、CはA * Bを出力する読み取り専用(A, Bが変化したら即座に再計算される)
A, Bに数値と解釈できない文字列(decimalに変換できない文字列)が入力された場合、即座にERRVALという文字列に置き換える
Cが計算不能な場合、ERRVALという文字列に置き換える
このような画面をWPFで作成したいのですがViewModelとxamlはどのように書けばいいでしょうか?

212
デフォルトの名無しさん[sage]   投稿日:2016/11/14 22:57:37  ID:2SylIT9P.net
それだけ決まっててむしろどこに悩んでるのさ
コメント1件

213
デフォルトの名無しさん[sage]   投稿日:2016/11/14 23:09:54  ID:p26anzny.net(2)
>212
他のプログラマがどう書くか参考にしたいです
コメント2件

214
デフォルトの名無しさん[sage]   投稿日:2016/11/15 00:54:17  ID:gSjda41/.net
>199
htmlにはCSSがあるから見た目は外に出せる
コメント2件

215
デフォルトの名無しさん[sage]   投稿日:2016/11/15 07:18:35  ID:wcWx6QZb.net
>213
ならまず自分がどう書いたかを晒せよ

216
デフォルトの名無しさん[sage]   投稿日:2016/11/15 07:47:41  ID:AaicVHah.net
キー入力ミスったら最初から入力しなおしな典型的な糞ソフト仕様だな

217
デフォルトの名無しさん[sage]   投稿日:2016/11/15 08:30:57  ID:9/yxKzNn.net(2)
>213
ReactivePropertyのサンプルならググれば見つかるから参考にすりゃいいよ

218
デフォルトの名無しさん[sage]   投稿日:2016/11/15 10:37:08  ID:9/yxKzNn.net(2)
>214
xamlを腐しているやつは、xamlを全然知らないんだな

219
デフォルトの名無しさん[sage]   投稿日:2016/11/15 11:29:28  ID:f/VYzzwV.net(2)
XAMLをよく知っているやつがちゃんとした説明してるの見たことない
コメント1件

220
デフォルトの名無しさん[sage]   投稿日:2016/11/15 12:05:59  ID:Sy8HLWAK.net(2)
>219
残念なやつ

221
デフォルトの名無しさん[sage]   投稿日:2016/11/15 12:12:58  ID:f/VYzzwV.net(2)
というように人格否定しかできない
コメント1件

222
デフォルトの名無しさん[sage]   投稿日:2016/11/15 12:39:21  ID:Sy8HLWAK.net(2)
>221
顔真っ赤www

223
デフォルトの名無しさん[sage]   投稿日:2016/11/15 14:14:09  ID:EsNZ5iro.net
と、知ったかは発狂するのであった

224
デフォルトの名無しさん[sage]   投稿日:2016/11/15 17:55:17  ID:idS/rHgA.net
CSSはxml形式じゃないから良い
必要なところで必要な形を使うのが良い

225
デフォルトの名無しさん[sage]   投稿日:2016/11/15 18:43:22  ID:IxpYJQnb.net
全然使われてないのは書店(Amazonでもいいけど)に行くとあからさまにラインナップがしょぼいからすぐ分かる
mizchiと取り巻きの声だけやたらデカいReactみたいなもんだ

226
デフォルトの名無しさん[sage]   投稿日:2016/11/15 22:31:04  ID:YqUWOmsB.net
>214
style等は外に出せるぞ。

227
デフォルトの名無しさん[sage]   投稿日:2016/11/16 10:35:34  ID:hL8zHUS9.net
中はやめてー

228
デフォルトの名無しさん[sage]   投稿日:2016/11/18 23:01:26  ID:+QqWh5ch.net
変数aがnullならbもnullにして、
aがnullでないならaを用いてmyfuncの計算結果をbに入れたいのですが、

var b = (a == null) ? null: myfunc(a);

こんなふうにしたのですが、もっとスッキリ書けそうな気がするのですが、
思い付きません。
もっとスッキリ書けますか?
コメント1件

229
デフォルトの名無しさん[sage]   投稿日:2016/11/18 23:08:28  ID:2P9KWEZx.net
myfuncの戻り値を考え直せとしかwwwwwwwwwwww
コメント1件

230
デフォルトの名無しさん[sage]   投稿日:2016/11/19 01:56:09  ID:eBIxsLr/.net(2)
>228
var b = a?.myfunc(a);

231
デフォルトの名無しさん[sage]   投稿日:2016/11/19 01:57:55  ID:eBIxsLr/.net(2)
とおもったらmyfuncはaのメソッドじゃないのね
230は間違い。忘れてくだされ

232
デフォルトの名無しさん[sage]   投稿日:2016/11/19 03:57:45  ID:gmVZjmNi.net
myfunc(null)がnullを返すようにすれば
b = myfunc(a)で済むんだがなぁ
まあきっとそうではない何かをする関数なんだろうな

おれならaやbがnullである事に特別な意味があったり、myfuncを呼ばない事に特別な意味があるなら
ちゃんとif文書くけどな

233
デフォルトの名無しさん[sage]   投稿日:2016/11/19 10:29:56  ID:0bgRfGhz.net(2)
>229
string myfunc(string a){
 if(a==null)
  return null;

を追加したらスッキリしました!

234
デフォルトの名無しさん[sage]   投稿日:2016/11/19 11:12:00  ID:6I7N2mEo.net
aってstringだったのか…
余計なことを言いたくなるなあ…

235
デフォルトの名無しさん[sage]   投稿日:2016/11/19 11:15:09  ID:ZfUdGYAZ.net
スッキリワロタ

どうしてもならジェネリックの拡張メソッドを作っとく手もあったね。

236
デフォルトの名無しさん[sage]   投稿日:2016/11/19 17:50:29  ID:t3MBfDke.net
nullを返す関数を作ると後々災いの元
コメント2件

237
デフォルトの名無しさん[sage]   投稿日:2016/11/19 17:52:57  ID:E8arxXAw.net
かと言ってstringで""を返す関数を作っても後々災いの元

238
デフォルトの名無しさん[sage]   投稿日:2016/11/19 17:55:21  ID:VKIYWaqI.net
>236
またその話か
それはないよ。

239
デフォルトの名無しさん[sage]   投稿日:2016/11/19 23:03:49  ID:0bgRfGhz.net(2)
>236
なんで?
コメント1件

240
デフォルトの名無しさん[]   投稿日:2016/11/20 00:13:29  ID:BknfpFpO.net(2)
暫く使ってみたがWPFというかMVVMはやっぱり良くないな
暫定的にとはいえ不正な状態のオブジェクトを受け入れるってのが致命的にコードを汚くする
カプセル化で状態を保護するのが基本のオブジェクト指向に喧嘩売ってるとしか思えない

241
デフォルトの名無しさん[sage]   投稿日:2016/11/20 00:26:32  ID:K2ib4r+U.net(3)
>239
その関数使う使う時に一々nullチェックするの面倒。
それを忘れない保証もどこにもないし。
コメント2件

242
デフォルトの名無しさん[sage]   投稿日:2016/11/20 00:30:59  ID:ckE9xegj.net(3)
>241
何という頭の悪さ。

nullを禁止したらnullを返すことで表現していたことを
もっと面倒な別の方法で呼び出し側に伝達する必要が生じるんだけど。

何でこんな簡単なことが分からないのかね。
コメント1件

243
デフォルトの名無しさん[sage]   投稿日:2016/11/20 01:00:26  ID:KPo4Qlq+.net
FindFirstみたいなメソッドでマッチしない場合にnullじゃないオブジェクトを
返されたとしてもどのみちチェックする必要が出てくる

244
デフォルトの名無しさん[sage]   投稿日:2016/11/20 01:09:39  ID:X8MMRSH3.net(2)
null返す関数禁止じゃなくてnull代入禁止型にしてくれ
コメント2件

245
デフォルトの名無しさん[sage]   投稿日:2016/11/20 01:27:12  ID:K2ib4r+U.net(3)
>242
勉強不足

246
デフォルトの名無しさん[sage]   投稿日:2016/11/20 01:38:16  ID:K2ib4r+U.net(3)
>244
C#7.0か8.0に期待。

247
デフォルトの名無しさん[sage]   投稿日:2016/11/20 02:13:42  ID:ckE9xegj.net(3)
期待するだけ無駄。

馬鹿じゃなきゃちょっと考えればわかるはずだが、
必ず既定値で初期化されるようにするにしろ初期化なしの変数宣言ができないようにするにしろ、
nullを許容することの弊害とは別のより大きい弊害や利便性の低下を生むだけ。

だいたい、nullを許容することの弊害なんて大半はそれを主張してる奴が勘違いしてるだけだ

248
デフォルトの名無しさん[sage]   投稿日:2016/11/20 02:22:59  ID:9PtzIqGH.net(3)
老害臭が半端無いんだが。

249
デフォルトの名無しさん[sage]   投稿日:2016/11/20 02:25:15  ID:ckE9xegj.net(3)
年齢の問題じゃないね。
馬鹿かそうでないか、それだけの問題
コメント1件

250
デフォルトの名無しさん[sage]   投稿日:2016/11/20 05:58:45  ID:2ye3zmI2.net(6)
>244
nullを返す関数や変数にnullを代入する処理をよく使うのですが、
それで混乱した経験も無いのですが、なぜ、
 nullを返す関数
 変数にnullを代入
に反対する人がいるのでしょうか?
コメント2件

251
デフォルトの名無しさん[sage]   投稿日:2016/11/20 07:22:58  ID:pCJ1qvOZ.net(4)

252
デフォルトの名無しさん[sage]   投稿日:2016/11/20 08:05:54  ID:2ye3zmI2.net(6)
>251
>その関数使う使う時に一々nullチェックするの面倒。
>それを忘れない保証もどこにもないし。
この意味が分からないのですが、関数を使うときにnullチェックする
と言うのは何ですか?
関数がnullを返す場合もあるように自分でそうしているわけだから
何も問題ないと思いますが。
コメント1件

253
デフォルトの名無しさん[sage]   投稿日:2016/11/20 08:15:43  ID:pCJ1qvOZ.net(4)
>252
理解できない奴には理解できないからもう気にするな。null禁止にしても同じ問題起きるしw
コメント1件

254
デフォルトの名無しさん[sage]   投稿日:2016/11/20 08:27:09  ID:2ye3zmI2.net(6)
>253
気になるんです。
教えてください。

255
デフォルトの名無しさん[sage]   投稿日:2016/11/20 08:32:27  ID:w/pS54nD.net(2)
そもそもこれは戻り値がstring限定の話じゃないの?
普通のオブジェクトでnull禁止はありえないからね
コメント1件

256
デフォルトの名無しさん[sage]   投稿日:2016/11/20 08:43:15  ID:pCJ1qvOZ.net(4)
>255
(nullでなく()デフォルト値を入れた空のオブジェクトを返すって考え方もあるからオブジェクトでも同じだよ
そもそも1つの戻り値で関数失敗成功情報まで返そうとするのが間違い

257
デフォルトの名無しさん[sage]   投稿日:2016/11/20 08:47:01  ID:3blV6AGf.net
値型は null にならないのでそれで用は足る。面倒なのは、Stringだかが。昔のBASIC の文字列型のように実装した値型を用意すれば解決。
コメント1件

258
デフォルトの名無しさん[sage]   投稿日:2016/11/20 09:29:50  ID:2ye3zmI2.net(6)
>257
>面倒なのは、String
C#で文字列を扱っていてnullの扱いで面倒だと感じた経験が
一度もないのですが、Stringでnullがなぜ面倒なのですか?

259
デフォルトの名無しさん[]   投稿日:2016/11/20 09:42:15  ID:BknfpFpO.net(2)
nullは情報を捨ててしまうから可読性が低くなる
エラー許容型を作ってそれを使うのが定石

Errorable<string> s = func();

if(s.HasNoError) WriteLine(s.Value);
else WriteLine(s.ErrorMessage);

if(s.NotFound) ...
if(s.AuthError) ...
if(s.FormatError) ...
...
コメント1件

260
デフォルトの名無しさん[sage]   投稿日:2016/11/20 09:59:28  ID:Y223jndk.net(9)
>259
> その関数使う使う時に一々nullチェックするの面倒。
> それを忘れない保証もどこにもないし。
全然改善されてないだろ w
てか、その例なら素直に例外使えよ
コメント1件

261
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:11:47  ID:GbOcvoRT.net(2)
IsNullアンチパターンみたいだね

262
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:12:24  ID:wbF3tHCA.net(2)
>260
チェックなしでValueにアクセスしたら例外を投げる
Errorableという名前が見えることによってチェックを忘れるということを回避できる
チェックがめんどくさいという怠惰さには手の施しようがないがnullやエラーコードと違ってチェック方法が統一化できる点も優れている
コメント1件

263
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:27:40  ID:9PtzIqGH.net(3)
もう一歩踏み込んで、Maybe。
Valueプロパティは、もちろん無し。

264
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:30:00  ID:X8MMRSH3.net(2)
宗教としてC#にアイデンティティを代替している連中(貧乏人ほどオリンピックが好きなのと同じ)なのに
仕様を否定したって聞き入れる訳ないじゃん

ヘジにアントニー・ホーアの言葉をどう考えるか聞いた奴がいるが
なんて答えたか知らないんだろうし
(あるいは、C#に間違いがあってはならないから目をつぶっているか、そもそも英語は読めないか)

265
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:30:10  ID:9PtzIqGH.net(3)
>250
ぼっちで書いてる時は、好きにする宜し。

266
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:35:26  ID:2ye3zmI2.net(6)
文字列の場合にはNullも "" も同じだと思えばいいよね
コメント3件

267
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:37:02  ID:NgPgW0rj.net(2)
参照型とnull許容型は別の概念にするべきだったと言ってるし
現在、null非許容型を破壊的にならないように言語仕様を変えよう(追加しよう)としている。

将来を全て見通せる人は、いないと言う事だよ。

268
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:38:09  ID:Y223jndk.net(9)
>262
> チェックなしでValueにアクセスしたら例外を投げる
ならはじめから例外でいいだろ

> Errorableという名前が見えることによってチェックを忘れるということを回避できる
マジで言ってるの?
チェックする箇所には変数名しか見えないんだが...
まあ IDE でいちいち型を確認すればいいんだろうけど、エラーチェック忘れるような奴はそう言う型の確認も忘れるわけで...

> チェックがめんどくさいという怠惰さには手の施しようがないがnullやエラーコードと違ってチェック方法が統一化できる点も優れている
たぶん思い付きで書いてるんだろうけど例えば Errorable<string> の
> if(s.AuthError) ...
って何を返すの?
自作のクラスで新しいエラー状態をチェックしたい時はどうするの?
いちいち Errorable を派生させたりしたらチェック方法が統一できないしどうするつもり?
コメント1件

269
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:40:19  ID:Y223jndk.net(9)
>266
お前さんがそれでいいならなんの問題もない

270
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:48:41  ID:NgPgW0rj.net(2)
>249
最近は若くても「老害」みたいな人が少なくないよね。

新しい事を覚える・勉強するのを嫌がる。
現状のやり方を変えるのを恐れる。
現状維持大好き。

良いか悪いは別問題だけど。

271
デフォルトの名無しさん[sage]   投稿日:2016/11/20 10:58:38  ID:wbF3tHCA.net(2)
>268
初めから例外を投げるではチェックのためにtryを書かなければならない
パフォーマンスが悪いしifで分岐する処理を書きたいという場面では構文的に不利で不適切

変数の型が見えなくなるほど長いスコープは普通は書かないので考慮しなくて良い

エラーというのは幾つかの典型的なエラーに分類可能
例であげたようにNotFoundやAuthErrorといった幾つかの典型的なエラーを定義しておけば良い
新しいエラーを定義する必要はない
コメント1件

272
デフォルトの名無しさん[sage]   投稿日:2016/11/20 11:34:52  ID:Y223jndk.net(9)
>271
> パフォーマンスが悪いしifで分岐する処理を書きたいという場面では構文的に不利で不適切
まあ、これはいいとして

> 変数の型が見えなくなるほど長いスコープは普通は書かないので考慮しなくて良い
フィールドとかには使えないってことでいいかな?

> エラーというのは幾つかの典型的なエラーに分類可能
へー、すごいね w

> 例であげたようにNotFoundやAuthErrorといった幾つかの典型的なエラーを定義しておけば良い
で、Errorable<string> の AuthError ってなにさ

> 新しいエラーを定義する必要はない
自称エスパーのお前はそうなんだろうね w
コメント1件

273
デフォルトの名無しさん[sage]   投稿日:2016/11/20 11:43:29  ID:lYnhz1xv.net
null非許容型が追加されたら便利だなーとは思う
「nullをなくせ」という意見にはまったく賛同できないが

エラー許容型は、エラーの種類を enum で返すプロパティを付けたものをよく作る
(エラー種類ごとにプロパティ作るようなことはしない)
でも、nullで済む場合も多いんだよね

274
デフォルトの名無しさん[]   投稿日:2016/11/20 11:43:53  ID:kKwT4/wt.net(3)
>272
はぁ

今は返り値の話をしているんだろ
そもそもオブジェクトの内部状態であるフィールドがエラーを受け入れるのが間違いって基本的なことになんで思い至らないのか

すごいっていうか、常識
人間がどんだけエラー処理と付き合ってきたと思ってるんだ?

AuthErrorは認証、認可のエラー
2chの書き込みだから横着して省略したがこれらは普通は別にする

nullを見ただけでエラー内容がわかる歴史上類を見ないほどに強力なエスパーの君にはかなわないよ
プログラマにしておくのは勿体無いから新しい宗教でも立ち上げることをお勧めするよ
コメント1件

275
デフォルトの名無しさん[sage]   投稿日:2016/11/20 11:47:36  ID:pCJ1qvOZ.net(4)
変数にエラーコードを入れるっていう発想がもうw

276
デフォルトの名無しさん[sage]   投稿日:2016/11/20 11:47:38  ID:GbOcvoRT.net(2)
>266
その考えの場合はnullじゃなくて、""を返すのも良いかもね。

277
デフォルトの名無しさん[sage]   投稿日:2016/11/20 11:56:23  ID:Y223jndk.net(9)
>274
> そもそもオブジェクトの内部状態であるフィールドがエラーを受け入れるのが間違いって基本的なことになんで思い至らないのか
え?
オレオレスタイルをどや顔で言われても困るんだが w

> これらは普通は別にする
結局 Errorable<string> と Errorable<database> は別に作るってことかよ...
チェック方法が統一出来るとかほざいてたのにね w
コメント2件

278
デフォルトの名無しさん[]   投稿日:2016/11/20 12:10:20  ID:kKwT4/wt.net(3)
>277
はぁ

オレオレスタイルではなくオブジェクト指向の基本

別に作らないよ
君は超人的エスパーだから何をどう考えてそういう答えにたどり着いたのか常人にはちょっと理解しがたいんだ
これからはそのことを考慮して常人にもわかるように丁寧に意見して欲しい
コメント1件

279
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:10:41  ID:zFrmc+0J.net
>266
オラクルですね
コメント1件

280
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:23:00  ID:L/fyhMFX.net(3)
>277
みっともないから、もう止めとけ。
コメント1件

281
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:30:03  ID:Y223jndk.net(9)
>278
オレオレスタイルは宗教だろうから教祖さんと争う気はないよ w

で、
> これらは普通は別にする
の意味を説明してみ
コメント1件

282
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:30:42  ID:Y223jndk.net(9)
>280
お前がな w

283
デフォルトの名無しさん[]   投稿日:2016/11/20 12:37:01  ID:kKwT4/wt.net(3)
>281
この文脈でauth errorと省略せずにauthentication errorとauthorization errorに分けるという意味以外に何があるんだ?
君は何をどう考えてErrorable<string>とErrorable<database>は別に作るという考えに到達したの?
ジェネリック型の新しい使い方を編み出したの?
ハイレベルすぎてついていけないよ
一体何段階思考手続きをスキップできればこの境地にたどり着けるのか
コメント1件

284
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:38:10  ID:aCqfb5MR.net
数字の0が無かった時代に0の発明を否定する人みたいだな。

285
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:43:24  ID:h3zFIm5r.net
何度も言うけどnullを追放したって問題Aが別の問題Bに置き換わるだけ。
そして普通に考えれば問題Bの悪質性はAより大きくなる場合の方が多いだろう。

nullガーって吠えてる馬鹿って何でこの程度のことが分からんかね。

(a) 値がnullであることで問題が顕在化した

からといって

(b) nullの存在が問題の原因

であるとは限らない。
この程度のことも分からない奴はプログラマ辞めろよ本当

286
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:45:41  ID:2ye3zmI2.net(6)
>279
そう、
オレオレスタイルではなてく
オラクルスタイルだ。

287
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:53:48  ID:Jza3G5L3.net
結局メソッドがエラーを返せるようにするにはどうするのが一番いいの?
コメント2件

288
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:54:07  ID:Y223jndk.net(9)
>283
> この文脈でauth errorと省略せずにauthentication errorとauthorization errorに分けるという意味以外に何があるんだ?
そんな話は全くしてないが?
そんなのどうでもいいから
>> で、Errorable<string> の AuthError ってなにさ
の答えを書けよ w

289
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:54:12  ID:L/fyhMFX.net(3)
まさに、井の中の蛙 (´・ω・`)
コメント1件

290
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:57:21  ID:L/fyhMFX.net(3)
>287
1つの手段は、エラー種類と「値」のタプルを返す。
これだと、エラー処理を強制は出来んけどね。

291
デフォルトの名無しさん[sage]   投稿日:2016/11/20 12:57:41  ID:Y223jndk.net(9)
>289
上から目線で意味のないこと言ってるけどどうしたの?
ここ仮にも技術系の板だから話に加われないなら黙っていてくれるとありがたいんだが

292
デフォルトの名無しさん[sage]   投稿日:2016/11/20 17:21:32  ID:XK08TpAy.net
エラーはほとんどの場合例外でいいよ
でも例外が使えない場面もあるんだよなぁ

293
デフォルトの名無しさん[sage]   投稿日:2016/11/20 18:54:25  ID:34y1pXq0.net(2)
>287
エラーと言ってもいろんなレイヤーでいろんな事があるわけで
結論としてはケースバイケースでどれが一番とか決めれない

これを理解できずに単一の方法ですべてやろうとするからおかしな話になるわけで
まあ、宗教論はその宗旨に納得できる点がある場合もあるけど、他の宗教を認めないのがなぁ

294
デフォルトの名無しさん[sage]   投稿日:2016/11/20 19:03:56  ID:eCa9a5kv.net(2)
例外を投げないパターンはここらへんを読むといいんじゃない?
一般的とは行かなくても、オレオレではない
http://faithandbrave.hateblo.jp/entry/2014/05/30/153325
http://ufcpp.net/blog/2016/11/nullproblem/
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4015.pdf

295
デフォルトの名無しさん[sage]   投稿日:2016/11/20 19:18:59  ID:V9rEuhsa.net
nullable-likeの提案は良いね

296
デフォルトの名無しさん[sage]   投稿日:2016/11/20 19:26:56  ID:w/pS54nD.net(2)
nullを排除するために、何故ここまで複雑に作る必要があるのか理解出来ん
普通にnull使えよw
コメント1件

297
デフォルトの名無しさん[sage]   投稿日:2016/11/20 19:31:08  ID:34y1pXq0.net(2)
単にnullの取り扱いから、例外処理についてに話が拡大してるからな

298
デフォルトの名無しさん[sage]   投稿日:2016/11/20 19:46:59  ID:ELwGw4ow.net
null排除派はごく一部いるけど市民権を得てない
メリットが薄いから

3 == i と言う書き方みたいにこだわる人だけこだわる

299
デフォルトの名無しさん[sage]   投稿日:2016/11/20 20:23:01  ID:JNgwCyth.net
今後iOS開発の主流になるだろうSwiftがnull非許容ベースだから
将来的には分からないかもよ

300
デフォルトの名無しさん[sage]   投稿日:2016/11/20 20:32:56  ID:ixFUSBgZ.net
信者にそんな話しても無駄

301
デフォルトの名無しさん[sage]   投稿日:2016/11/20 20:42:02  ID:RSV7nlYW.net
null あってもいいって言ってるのはなきゃなでも構わない人が大半じゃないかと思う。
Swift が非許容でそれを使う必要があるなら、それの流儀でなんの苦もなく対応しそう。

そんなことに拘ってるのはオレオレな一部の人だけじゃねーのかなぁ。。

302
デフォルトの名無しさん[sage]   投稿日:2016/11/20 21:02:17  ID:2AHf550w.net
異教徒にそんな話しても無駄

303
デフォルトの名無しさん[sage]   投稿日:2016/11/20 22:12:22  ID:eCa9a5kv.net(2)
>296
それを言い出すとなにも言語仕様がいじれなくなっちゃう
Javaとかは進化が停滞して今必死に挽回してるし

もちろん、実装や文法の複雑さと利点を天秤にかけるのは常にしてるので、Roslynのissueとかを見てみると良いよ。
もっと変なのもたくさんある

http://qiita.com/koher/items/e4835bd429b88809ab33
を見るとわかるが、実際に各言語がnull安全に取り組んでる

304
デフォルトの名無しさん[sage]   投稿日:2016/11/20 23:25:18  ID:OrHcogku.net
null安全ねえw
そういう発想をする人ってよくいう「例外を握りつぶす」コードを書いちゃうタイプなんだろうなとは思うわ。
言いたいことは理解できるが全く同意はできない。
それはただの錯誤だからな。

安全どころか、nullであれば容易に発見できたバグをわざわざ発見困難にするだけ。
何がうれしいんだそんなの。

305
デフォルトの名無しさん[sage]   投稿日:2016/11/21 00:24:21  ID:hlf3slD2.net
ScalaのOption使ってみた感想
・今までは無効な値(null)を返す可能性がある事は、ドキュメントを読まないと分からなかったけど定義だけで分かるから便利
・分解が色々な方法で出来て便利
まあなくても何とかなるけど、あれば便利程度

306
デフォルトの名無しさん[sage]   投稿日:2016/11/21 01:11:30  ID:fZvEw43o.net(4)
F#にもoptionあるけど死ぬ程便利だわw
先ず、エラーを握り潰す事が出来ない。
ドキュメントを読む必要が無い。
monadとして扱うと、一々ifで分岐書く手間がなくなる。
eitherまで踏み込めば、検査例外云々で議論する事自体が馬鹿らしくなる。
面倒くさいけどねw

C#のint?を使った事ある人には解ると思う。
コンパイラに事前チェックをしてもらえる有り難みが。
機械に解る単純作業?に対して、人間が一々苦労する馬鹿らしさが。

307
デフォルトの名無しさん[sage]   投稿日:2016/11/21 01:16:13  ID:fZvEw43o.net(4)
それから、初心者に対してこそ効果抜群だよ。
「そう書く」事しか出来ないから。
強制出来るから。

308
デフォルトの名無しさん[sage]   投稿日:2016/11/21 01:34:00  ID:CO+aVjyU.net
検査例外も出たときは素晴らしい機能だって絶賛されてたような気がするなぁ

309
デフォルトの名無しさん[sage]   投稿日:2016/11/21 02:03:53  ID:n+GSTHBL.net(2)
検査例外は他に誰も採用しなかったけど
Optionalはこぞって採用されているという決定的な違いがある

310
デフォルトの名無しさん[sage]   投稿日:2016/11/21 02:04:20  ID:n+GSTHBL.net(2)
あ、ごめん
C#perにそんなこと言っても分からないよね(苦笑)
コメント1件

311
デフォルトの名無しさん[sage]   投稿日:2016/11/21 11:12:26  ID:Ka0MFQDU.net
ん?Optional?VBの話?

312
デフォルトの名無しさん[sage]   投稿日:2016/11/21 11:41:21  ID:hLpmxTjl.net
グラディウスだろ

313
デフォルトの名無しさん[sage]   投稿日:2016/11/21 17:31:28  ID:fZvEw43o.net(4)
>310
このスレにもいるような「老害」は少数派だよ



と信じたい。

314
デフォルトの名無しさん[sage]   投稿日:2016/11/21 20:45:41  ID:HLjti5+r.net
実際、エラーの扱いは時代によって色々変わってきてるからね
null安全の手法はこれからの主流になっていくのかもしれない
そんで、また数年後には新しいやり方に置き換えられるんだろう

315
デフォルトの名無しさん[sage]   投稿日:2016/11/21 21:06:27  ID:4A1pLeCT.net
エラーの扱いじゃなくてヒューマンエラーを未然に防ぐのが意図でしょnull安全ってのは。
その意図は認めるけど、null安全がその目的に対して合理的とは全く思わんがね

316
デフォルトの名無しさん[sage]   投稿日:2016/11/21 21:15:05  ID:fZvEw43o.net(4)
option型とnull安全は重なってる部分もあるけど、意味としてズレてる部分もある。
例えば、C#の値型でもoption型は有意義な訳で。

317
デフォルトの名無しさん[sage]   投稿日:2016/11/21 22:30:24  ID:wfKopLFy.net
サードパーティーライブラリーを使えない前提でオブジェクトのマッピングを手軽に行うにはなにを使う?
パフォーマンスはあまり気にしていない
同名同型のプロパティをマッピングできれば十分
今のところシリアライザーで誤魔化してる感じ

318
デフォルトの名無しさん[sage]   投稿日:2016/11/22 00:16:30  ID:QATijxTL.net
null安全よりstring?.lengthの方が合理的に見えるわ
最初からならともかく、ここまで普及したC#で今更取り入れて定着するのは難しいよな
コメント1件

319
デフォルトの名無しさん[sage]   投稿日:2016/11/22 06:51:43  ID:y8FHZWuV.net
>318
> 最初からならともかく、ここまで普及したC#で今更取り入れて定着するのは難しいよな
これには同意するけど

> null安全よりstring?.lengthの方が合理的に見えるわ
これはないわ
string が null になる可能性がないなら普通に string.length って書いた方がエラーが早期にわかるからデバッグも楽だし

320
デフォルトの名無しさん[sage]   投稿日:2016/11/22 07:50:04  ID:vhsrXRxU.net(2)
?.もnull安全の一環な気はする。

ちなみに、null非許容型導入の影響で、?.を使っていない箇所は全てwarning扱いになる話もあったりする。

321
デフォルトの名無しさん[sage]   投稿日:2016/11/22 13:10:29  ID:bfu4FZ0h.net
string?.length
これって式の左辺に何書くの?

int? hoge
とか?
で結局hoge==nullとか聞いちゃうの?

?.演算子は参照型と値型のペアでは使いにくいし分かりにくいと思う
コメント1件

322
デフォルトの名無しさん[sage]   投稿日:2016/11/22 17:09:05  ID:EJKURZYz.net
君ら一体何を議論してるの?
分かりやすく解説してくれ
コメント1件

323
デフォルトの名無しさん[sage]   投稿日:2016/11/22 17:11:14  ID:VnsYzvlz.net
Optionalの是非というか使い所の話でないの?

324
デフォルトの名無しさん[sage]   投稿日:2016/11/22 19:57:46  ID:vhsrXRxU.net(2)
>321
例えば
int len = str?.Length ?? 0;

325
デフォルトの名無しさん[sage]   投稿日:2016/11/22 20:13:33  ID:ga0p/qoV.net
C++の参照は良いものだった
コメント1件

326
デフォルトの名無しさん[sage]   投稿日:2016/11/23 10:56:47  ID:Sj0D9A4Y.net(4)
>325
なんで過去形?

327
デフォルトの名無しさん[sage]   投稿日:2016/11/23 11:55:24  ID:Sj0D9A4Y.net(4)
http://stackoverflow.com/questions/22595655/how-to-do-a-dictionary-rev...
このページで
dictionary.FirstOrDefault
とやっていますがディクショナリーにFirstOrDefaultを
やるとなぜこういう結果になるのですか?
コメント2件

328
デフォルトの名無しさん[sage]   投稿日:2016/11/23 13:27:10  ID:GLuKyrfg.net(2)
>327
何を「何故」と思ってるか分からん
コメント1件

329
デフォルトの名無しさん[sage]   投稿日:2016/11/23 18:46:09  ID:QXjR6WNV.net
>327
Dictionaryは、IEnumerable<KeyValuePair>を実装しているから。

330
デフォルトの名無しさん[sage]   投稿日:2016/11/23 19:25:46  ID:Sj0D9A4Y.net(4)
>328
FirstOrDefault って最初の要素を取って来るんじゃないんですか?
何故全ての要素をループ出来るんですか?
コメント1件

331
デフォルトの名無しさん[sage]   投稿日:2016/11/23 19:44:53  ID:GLuKyrfg.net(2)
>330
『引数の条件に一致した』最初の要素ね。
内部的には列挙子で探してるよ。
コメント1件

332
デフォルトの名無しさん[sage]   投稿日:2016/11/23 19:48:19  ID:4RFw+AHR.net
列挙子=enum ・・・

333
デフォルトの名無しさん[sage]   投稿日:2016/11/23 19:49:49  ID:dUmyuUeh.net
列挙子はIEnumeratorですw

334
デフォルトの名無しさん[sage]   投稿日:2016/11/23 20:19:45  ID:Sj0D9A4Y.net(4)
>331
そういうことですか。
良く分かりました。
皆さん、ありがとうございました。

335
デフォルトの名無しさん[sage]   投稿日:2016/11/23 20:45:31  ID:mr7aPRRr.net
>322
時代の流れについて行けないおじいちゃん達をいかに介護するかの議論だよww

336
デフォルトの名無しさん[sage]   投稿日:2016/11/24 09:15:21  ID:DNYUjCey.net
プロジェクトA C#DLLライブラリ
プロジェクトB C#ASP.NETアプリケーション(Web サイト)
プロジェクトC C#ASP.NETアプリケーション(Web API)

BとCはAに依存している
BとCは別のサーバーにデプロイする
2つのサーバーにインストールされているフレームワークが異なる(具体的には4と4.5.1)
サーバー管理者の都合によりフレームワークの更新はできない

Bをビルドする時はAのフレームワークバージョンを4にする
Cをビルドする時はAのフレームワークバージョンを4.5.1にする

このビルド時のフレームワーク切り替え作業が手間なのでなんとかして1オペレーションでビルドできるようにしたい
なんとかなりませんか?
コメント2件

337
デフォルトの名無しさん[sage]   投稿日:2016/11/24 09:36:13  ID:iMAQMNBa.net
そういうのは依存してるとは言わない

aだけビルドするsln、bcだけビルドするsln作っておいて
aだけビルドするabcのslnでbcはポストビルドイベントでコマンドラインビルド、
bcだけビルドするabcのslnでaはプリビルドイベントでコマンドラインビルドとか?

338
デフォルトの名無しさん[sage]   投稿日:2016/11/24 14:18:54  ID:G2Ig6Dqz.net
>336
Webサイトって、Webアプリとは違ってランタイム側でビルドするんじゃなかったっけ?
コメント1件

339
デフォルトの名無しさん[sage]   投稿日:2016/11/24 18:57:30  ID:/9TZdtP5.net
>336
プロジェクトCを4.0指定で実行させれば良いんじゃ

>338
webサイトにもプリコンパイルってのがある
VSがサポートしてるのかどうかはしらんが

340
デフォルトの名無しさん[sage]   投稿日:2016/11/24 22:53:33  ID:5QlniI4z.net
教えて下さい。

C# で Windows のサービスプログラムを書きました。
その中でプロセス間通信を使いたく、パイプ(NamedPipeServerStream/NamedPipeClientStream)の利用を考えました。

サービスプログラムはそのままだとデバッグが面倒なので、
そのサービスプログラムを参照したフォームプログラムを作ってバグ取りをしました。
フォームプログラムからは、ボタンを押すことでサービスの開始や停止の処理をそっくり呼ぶようにしています。

ここで、
・フォームプログラムでは、問題なくパイプの送受信が出来る
・サービスプログラムでは、パイプの送受信が出来ない
 ただし、サービスを止めるときにパイプの待ち受けを終了させるために、同じプログラム内から送信するデータは送受信できている
 ⇒ 実際に待ち受けを抜けているので同プログラム内では出来ていると思われる

と言う状態になりました。
サービスプログラム内でプロセス間通信、この場合は名前付きパイプですが、の使用に制限などはあるのでしょうか。
他の要因を考えるべきか悩みました。情報があれば教えていただけると助かります。
コメント1件

341
デフォルトの名無しさん[sage]   投稿日:2016/11/25 01:40:52  ID:gI/r9WkT.net
>340
セッション0のアクセス権限の問題。

namedpipeclientstream-can-not-access-to-namedpipeserverstream-under-session-0
http://stackoverflow.com/questions/13174660/
コメント3件

342
デフォルトの名無しさん[sage]   投稿日:2016/11/25 10:25:47  ID:2+oHnkxr.net
fw3.5からfw4.0以上のdllを参照する方法ないかなぁ?

343
デフォルトの名無しさん[sage]   投稿日:2016/11/25 15:18:07  ID:6J0+Q2dT.net
>341
よくそんなのぱっと出てくるなあw

344
340[sage]   投稿日:2016/11/25 23:09:50  ID:Oc8F6euI.net
>341
やっぱりそういうのがあったんですね。。
対策を考えます。
ありがとう。

345
デフォルトの名無しさん[sage]   投稿日:2016/11/26 00:37:00  ID:pkHe6RQg.net
上のリンク先の回答みたいにPipeSecurityとか適切に設定してやればいいんじゃないの

346
デフォルトの名無しさん[sage]   投稿日:2016/11/26 15:34:45  ID:w/Dhvdu8.net(2)
WindowsのAPIだからC#とは直接的には関係ないけど教えてほしい。
特定のウィンドウにキーボードイベントを送信しようと考えている。
keybd_eventを使用してキーボードイベントの送信する事は成功した。
ちなみに第二引数のスキャンコードは使用しない、みたいな事を書いてあるサイト(MSDN含む)が多かったが
スキャンコードを指定しないと対象アプリがキーボード処理を受け付けてくれなかったため指定してある。
対象アプリがバックグラウンド中であっても操作しようと考えてSendMessage(またはPostMessage)に変更しようとしたのだが
スキャンコードはどこにどのように設定すればいいのだろう?
第四引数のlParamであろうと言う事は想像がつくが、スキャンコードをそのまま設定しても駄目だった。
コメント1件

347
デフォルトの名無しさん[sage]   投稿日:2016/11/26 16:13:12  ID:dXHq99jt.net(3)
>346
WM_KEYDOWNならこれ、カーソルキーとかも24ビット立てる必要があったかな
https://msdn.microsoft.com/en-us/library/windows/desktop/ms646280
SendMessage(hWnd, WM_KEYDOWN, uCode, MapVirtualKey(uCode, 0) << 16 | 1)
とかそんな感じだったはず、離すときはWM_KEYUPにして32ビットを立てる

C++でWM_KEYDOWNイベントのlParamを吐くウィンドウプロシージャでも作ると良い
コメント1件

348
347[sage]   投稿日:2016/11/26 16:22:01  ID:dXHq99jt.net(3)
> 離すときはWM_KEYUPにして32ビットを立てる
うっかりミスった、30〜31ビットね
WM_KEYDOWN時のlParam | 0xC0000000する形

349
347[sage]   投稿日:2016/11/26 16:37:54  ID:dXHq99jt.net(3)
あ、そもそもC#でもウィンドウプロシージャオーバーライド出来たっけ
protected override void WndProc(ref Message m) {
base.WndProc(ref m);
if(0x0100 <= m.Msg && m.Msg <= 0x0102) Text = m.ToString();
}
とか適当なフォームでやれば実際のウィンドウメッセージが確認できるよ

350
デフォルトの名無しさん[sage]   投稿日:2016/11/26 17:19:55  ID:w/Dhvdu8.net(2)
>347-349
非常に参考になった。
これを元にキー送信処理を作り直すことにするよ。

351
340[sage]   投稿日:2016/11/26 21:03:56  ID:ZtR+Z7Wd.net
>341,345
昨日はまだ調べていませんでした。
341 に書いていただいた URL の方法で普通に出来ました。
ありがとう。

352
デフォルトの名無しさん[sage]   投稿日:2016/11/27 21:23:49  ID:I1ny1q/I.net
妙な質問だけど、今2ch以外でユーザー同士でC#関連の質問解答ができるコミュニティーって、

- MSDNフォーラム
- わんくまの掲示板
- DOBON.NETの掲示板

質問して答えが返ってきそうなのはこのぐらい?
あ、別にマルチで質問投げてやろうとかそういう意図ではないので念のため
コメント3件

353
デフォルトの名無しさん[sage]   投稿日:2016/11/28 00:18:17  ID:n0A2uJuC.net
ja.stackoverflowはもう泣く以外の道ないなw
コメント1件

354
デフォルトの名無しさん[sage]   投稿日:2016/11/28 00:18:37  ID:VTugBhJZ.net(2)
>352
StackOverflow一択だろ
コメント2件

355
デフォルトの名無しさん[sage]   投稿日:2016/11/28 00:23:13  ID:fF5TvHl5.net
google翻訳少し賢くなったんだから「このページを翻訳する」で結構使える

356
デフォルトの名無しさん[sage]   投稿日:2016/11/28 01:04:22  ID:v97E8kC6.net
>352
最近はteratailもありかも
あとは、.NET共通のことならVB中学校も一応あり
コメント1件

357
デフォルトの名無しさん[sage]   投稿日:2016/11/28 01:42:44  ID:9T0ZytTv.net
>353-354
stackoverflowって日本語版もあったのかw
ありがとう

>356
teratailはまったく知らなかったありがとう。
コメント3件

358
デフォルトの名無しさん[sage]   投稿日:2016/11/28 03:25:24  ID:PwcZf+No.net
あとはQA@ITとか

359
デフォルトの名無しさん[sage]   投稿日:2016/11/28 04:33:07  ID:VTugBhJZ.net(2)
>357
日本語限定ってどこかに書いてあったっけ?
コメント1件

360
デフォルトの名無しさん[sage]   投稿日:2016/11/28 19:31:45  ID:FcPInj/k.net
>359
>- MSDNフォーラム
>- わんくまの掲示板
>- DOBON.NETの掲示板
日本語って一目で分かるだろ
コメント1件

361
デフォルトの名無しさん[sage]   投稿日:2016/11/28 19:35:28  ID:MT+LNPN6.net
落ち着けよハゲのブラザー

362
デフォルトの名無しさん[sage]   投稿日:2016/11/28 21:09:47  ID:SXoUdBtU.net
>354は stackoverflow.com のつもりで書いたが>357は ja.stackoverflow.com を見つけて、
日本語版の存在を知らなかった>354>357を皮肉と受け取った。

363
デフォルトの名無しさん[sage]   投稿日:2016/11/28 21:23:26  ID:C8x/B1Vp.net
>360
バカの連鎖反応

364
デフォルトの名無しさん[sage]   投稿日:2016/11/28 21:35:12  ID:Efu8jG2p.net
人脈作れば全部解決だろ
Xamarinユーザー見習えよ
コメント1件

365
デフォルトの名無しさん[sage]   投稿日:2016/11/28 22:05:43  ID:/OQd0iyQ.net
元の質問者の>352だけど、質問の仕方がまずかったなら謝るけど
無意味に喧嘩腰でつっかかるのはどうかと思うよ

意図としては英語も排除しないけど日本語のを中心に教えて欲しかった。
英語は読むのは何とか読めても書く(質問する)のは結構つらいっすわ。

366
デフォルトの名無しさん[sage]   投稿日:2016/11/29 15:41:26  ID:07zLg605.net
>364
あのオタサー集団と同列に見られるのは非常に辛い

367
デフォルトの名無しさん[sage]   投稿日:2016/11/30 08:32:18  ID:rOv2n/Yl.net(2)
axwindowmediaplayerで次、前のボタンにイベントを割り当てるのはどうしたらいいですか。
this.axWindowsMediaPlayer1.Ctlcontrols.next += new AxWMPLib.なんちゃらなどで記述?
ボタン自体もグレーアウトしていて使えない状態です。

再生などのボタンは初めから再生が割り当てられていてなにも記述しないでもよかったのですが。

368
デフォルトの名無しさん[sage]   投稿日:2016/11/30 11:01:13  ID:U6G+25fY.net
AxWindowsMediaPlayerでそんな細かい制御はできない
currentPlaylistとかでIWMPMedia管理すればそれらも使えるようになるはず
組み込みのプレイリスト使いたくないならUIも自分で全部やる
コメント1件

369
デフォルトの名無しさん[sage]   投稿日:2016/11/30 16:39:10  ID:y2jQ/DIV.net
LINQのQuantifierの日本語訳なんだけど、MSDNだと量指定子、
岩永さんのところだと限定子となってるけど、どっちがより適切だと思う?

https://msdn.microsoft.com/ja-jp/library/bb546128(v=vs.120).aspx
http://ufcpp.net/study/csharp/sp3_stdqueryo.html#quantifier
コメント1件

370
デフォルトの名無しさん[sage]   投稿日:2016/11/30 23:23:25  ID:rOv2n/Yl.net(2)
>368
ありがとう。プレイリストがよさそうです。

371
デフォルトの名無しさん[sage]   投稿日:2016/12/01 09:05:41  ID:ySUX8EsS.net
>369
語義的には量指定子じゃない
quantityが量だから

372
デフォルトの名無しさん[sage]   投稿日:2016/12/01 18:33:51  ID:CcMyBcAe.net(2)
でも量指定子って正規表現的な言い回しだよな。
SQL的な言い回しだとALL,ANY,SOMEとかは限定子になるはず。

http://software.fujitsu.com/jp/manual/manualfiles/M100005/J2X17484/01Z200...

373
デフォルトの名無しさん[sage]   投稿日:2016/12/01 18:37:08  ID:CcMyBcAe.net(2)
ただまあ本家が量指定子ってるんだから、量指定子が正式用語ではあるだろうけど。

374
デフォルトの名無しさん[sage]   投稿日:2016/12/01 18:39:48  ID:lOA8D/0g.net
英語のまま使ってもらいたい

375
デフォルトの名無しさん[sage]   投稿日:2016/12/01 19:00:45  ID:74fND9I4.net
そもそもそんなキーワードを使う場面が思い浮かばない…

376
デフォルトの名無しさん[sage]   投稿日:2016/12/02 00:05:35  ID:ui5LUeC9.net(2)
AnyとAllとContainsをまとめて分類しただけの言葉のようだが、禿しくどうでも良い

377
デフォルトの名無しさん[sage]   投稿日:2016/12/02 00:27:24  ID:57Q76p9I.net(2)
一般的な呼び方じゃ量化子だよな。

378
デフォルトの名無しさん[]   投稿日:2016/12/02 06:58:37  ID:jL2K9FKD.net(2)
LINQは日本語ではなに? LINQは英語のままで量化子だけ日本語てのは
運用の誤り。
無理やり日本語にするならクオンティフィアでいいと思うがゴミみたいな
概念をわざわざ日本語にするのはよくない。説明的に日本語で「量化を
意味する」のように使うのは問題ないが、「量化子」のように語彙にして
しまうのはよくない。英語のまま運用するのがよい。

379
デフォルトの名無しさん[]   投稿日:2016/12/02 07:09:43  ID:jL2K9FKD.net(2)
訂正
このサイトの説明では
Any,All,Conttainsを総合的に説明するのが目的だからLINQという具体的な
ものよりは上位概念だな。この場合は限定子で正しいと思う。
量指定、量化はちょっと違うな。

380
デフォルトの名無しさん[sage]   投稿日:2016/12/02 07:21:27  ID:iUEu5k7c.net
LINQは固有名詞だから訳しようがないけど量化子はすでに記号論理学でも使われてる一般名詞だろ
コメント1件

381
336[sage]   投稿日:2016/12/02 07:48:29  ID:GGzlnXmJ.net
めんどくさいから英語のままでいいってのはある

382
デフォルトの名無しさん[sage]   投稿日:2016/12/02 10:36:52  ID:X9iN1GdM.net
明治の人に謝るべき暴言。

383
デフォルトの名無しさん[sage]   投稿日:2016/12/02 14:59:21  ID:rEQGNTwO.net(2)
>380
LINQはLanguage Integrated Queryを省略してるだけだから日本語化できるでしょ(してもらいたくないが)
OPEC〜石油輸出国機構みたいに訳してる例は多い
コメント1件

384
デフォルトの名無しさん[sage]   投稿日:2016/12/02 17:36:35  ID:8D4FZt7r.net

385
デフォルトの名無しさん[sage]   投稿日:2016/12/02 17:40:15  ID:DaaN/lCj.net
383ではないが、『言語に統合された問い合わせ』
・・・ないわ

386
デフォルトの名無しさん[sage]   投稿日:2016/12/02 18:09:20  ID:rEQGNTwO.net(2)
>384
統合言語クエリって単語がすでにある。クエリも訳したら統合言語処理要求か?

387
デフォルトの名無しさん[sage]   投稿日:2016/12/02 19:38:47  ID:4/nN0nxx.net
組込問合せ機能 辺りでいいんじゃね?

388
デフォルトの名無しさん[sage]   投稿日:2016/12/02 20:25:58  ID:fkVt0GEN.net
統合失調言語

389
デフォルトの名無しさん[sage]   投稿日:2016/12/02 20:31:59  ID:57Q76p9I.net(2)
「LINQは LINQ Is Not Queryの略」とか言い出して、その後「LINQはLINQ。略語や頭字語じゃない」とか言い出す。

390
デフォルトの名無しさん[sage]   投稿日:2016/12/02 20:59:04  ID:fqYy1w3v.net
一体誰のことを揶揄した気になっているのかね

391
デフォルトの名無しさん[sage]   投稿日:2016/12/02 21:09:36  ID:ui5LUeC9.net(2)
横だがストールマン以外の誰と言うんだよ

392
デフォルトの名無しさん[]   投稿日:2016/12/04 09:09:46  ID:HFDVK7VF.net
おまえら言語センスがないな。「問式」でOK。今後日本語でのLINQこれだ。

393
デフォルトの名無しさん[sage]   投稿日:2016/12/04 09:20:34  ID:a6Aihxwg.net
Bingに聞いたらLINQの日本語訳はLINQでいいってさ
マイクロソフトのお墨付きだからこれが正解な

394
デフォルトの名無しさん[sage]   投稿日:2016/12/04 09:42:24  ID:zAL6lz1+.net
Binqに聞いたらLINQの日本語での質問はLINEQでいいってさ
に見えた

395
デフォルトの名無しさん[sage]   投稿日:2016/12/04 10:29:28  ID:U0Kel+uM.net(2)
こういう関数を作ったら
void func<T>(T obj, string name) {

  obj[name] = ...

}

[name]の部分でエラーが出ます。
こういう関数は作れませんか?

396
デフォルトの名無しさん[sage]   投稿日:2016/12/04 10:41:15  ID:0sR5hBHN.net
すべてのクラスが this[string] を持つわけじゃないから…
自分がTに入れたいクラスをwhere T: で指定しては
コメント1件

397
デフォルトの名無しさん[sage]   投稿日:2016/12/04 11:15:31  ID:U0Kel+uM.net(2)
>396
ありがとうございました。
上手く行きました。

398
デフォルトの名無しさん[sage]   投稿日:2016/12/04 12:05:02  ID:OeUSkEhR.net(2)
ジェネリックは使いにくいよな
C++みたいな仕様にしてくれりゃいいのに
コメント2件

399
デフォルトの名無しさん[sage]   投稿日:2016/12/04 12:33:20  ID:sIaSQQRI.net
>398
あほす

400
デフォルトの名無しさん[sage]   投稿日:2016/12/04 12:56:13  ID:3+5uaoN5.net
C++のテンプレートの糞エラーは酷いよな
C#みたいにしてくれりゃあいいのにww

401
デフォルトの名無しさん[sage]   投稿日:2016/12/04 13:58:45  ID:VS/jD7cp.net
>398
なんでわざとあんな文法になってると思うんだよ
JIT言語の特長を最大限に活かすためだぜ
コンパイラ言語みたいに使うコードを全てあらかじめ生成しておくわけではなく
Tでnewされた時に初めてコードを生成するからメモリ使用量も少ない

ただ利点はそのまま欠点にもなる
T型同士の演算コードを書くとたちまちエラーになるのでdynamic型にキャストするとかしないとな

402
デフォルトの名無しさん[sage]   投稿日:2016/12/04 15:28:39  ID:UcElfbev.net
dynamicにするとbox/unboxが発生するから式木で殴る解決策あったな
コメント1件

403
デフォルトの名無しさん[sage]   投稿日:2016/12/04 19:05:36  ID:U4ZfHibQ.net
ガッチガチにチューニングしようとすると式木やILを触る必要があってツライ

404
デフォルトの名無しさん[sage]   投稿日:2016/12/04 19:37:47  ID:OeUSkEhR.net(2)
コンパイルするタイミングを実行時に移すだけだろ
プログラマがCodeDOMや式木でやってる退屈で定型的なプロセスを自動化するだけじゃん
マイクロソフトの怠慢だよこれは
コメント1件

405
デフォルトの名無しさん[sage]   投稿日:2016/12/05 00:12:25  ID:wzEk6zml.net
>402
dynamicの偉大な点は勝手に内部で式木に変換してしかもそれをキャッシュしてくれるから
完全なリフレクションに比べて速度的にそんなに不利ではない

http://ufcpp.net/study/csharp/misc_dynamic.html

ここら辺が有名だよな

406
デフォルトの名無しさん[sage]   投稿日:2016/12/05 01:54:32  ID:kX3Q4svv.net
>404
だいぶ違うぞ
プログラミング学び直したほうがいい
コメント1件

407
デフォルトの名無しさん[sage]   投稿日:2016/12/05 02:10:45  ID:u0DsEOY/.net
使いにくいと言う奴の99%は理解してないだけだからな
1%くらいには李左車の言うように有意義な指摘もあろうが
それは404ではないだろう

408
デフォルトの名無しさん[sage]   投稿日:2016/12/05 03:06:07  ID:TC/GOrDD.net
使いやすいという奴は仕事で使ってない

409
デフォルトの名無しさん[sage]   投稿日:2016/12/05 07:38:13  ID:FYlXKnN9.net
>406
お前は黙ってJavaかVBでもやってろ

410
デフォルトの名無しさん[sage]   投稿日:2016/12/05 16:46:58  ID:5hp1IXjD.net
>李左車
誰だよ?

411
デフォルトの名無しさん[sage]   投稿日:2016/12/05 17:16:33  ID:uj/2rcDx.net
さーしゃちゃん知らないってモグリかよ

412
デフォルトの名無しさん[sage]   投稿日:2016/12/05 17:35:03  ID:PG/Hzji5.net
クポ?

413
デフォルトの名無しさん[sage]   投稿日:2016/12/08 00:12:08  ID:/aGxLpEu.net
AWS LambdaでC#が使えるようになったらしいな
Googleも.NETの開発に参加したことだし、本格的に波が来ている

414
デフォルトの名無しさん[sage]   投稿日:2016/12/08 05:07:13  ID:Vn/geEUt.net
ついにJava終わったか

415
デフォルトの名無しさん[]   投稿日:2016/12/08 13:08:55  ID:0EWqwyqo.net(2)
C#というより.NETの質問なんですがいいでしょうか?
リストビューの各項目のクリックを拾いたいんですが方法ありますか?
例えば以下の様な構成になってる場合「山田」のクリックとか「21歳」のクリックとかを
拾いたい感じです。
---------------------
[項目1][項目2][項目3]
山田  20歳  東京
斎藤  22歳  埼玉
戸川  21歳  千葉
---------------------
やっぱりクリックイベントから現在選択されている項目を取得する
という方法が一番でしょうか?

416
デフォルトの名無しさん[sage]   投稿日:2016/12/08 13:14:33  ID:h9KBoTPl.net
>クリックイベントから現在選択されている項目を取得する
という方法で何か困っていることがあるならそれを書くのが早い
コメント1件

417
デフォルトの名無しさん[sage]   投稿日:2016/12/08 13:15:32  ID:RR5e4yCq.net
行と列両方いるならListViewHitTestInfo
コメント1件

418
デフォルトの名無しさん[sage]   投稿日:2016/12/08 13:33:02  ID:0EWqwyqo.net(2)
>417
おぉ〜クリックイベントに以下でイケました!>416さんもありがとうございました!
Point pt = new Point(e.X, e.Y);
ListViewHitTestInfo lvHti = lstv.HitTest(pt);
int row = lvHti.Item.Index;
int col = lvHti.Item.SubItems.IndexOf(lvHti.SubItem);
MessageBox.Show(row.ToString() + ", " + col.ToString());

419
デフォルトの名無しさん[]   投稿日:2016/12/08 14:57:23  ID:vKAf8GkY.net
カスタムコントロールについて教えてください。

FontとColorのセットとなるクラスの配列を特定のコントロールのプロパティ値として持ちたいのですが、デザイン時に値を入れると
「ResXファイル.RESXファイルで使用される型XXXXXX..を読み込めませんでした。必要な参照がプロジェクトに追加されていることを確認してください。」というエラーとなってコンパイルできなくなってしまいます。

どの様にすれば、正しく、デザイン時の値を保持&読込ができるのでしょうか?

【ソース】
public class TestCmb:ComboBox
{
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public List<FontAndColorSet> TestProperty { get; set; } = new List<FontAndColorSet>();
}

[Serializable]
public class FontAndColorSet
{
public Font Font { get; set; }
public Color Color { get; set; }
}
コメント2件

420
デフォルトの名無しさん[sage]   投稿日:2016/12/08 18:44:29  ID:Ayid3Uvv.net
>public Font Font { get; set; }
>public Color Color { get; set; }

C#では、クラス名を、2回も書けるのか?
コメント1件

421
デフォルトの名無しさん[sage]   投稿日:2016/12/08 18:47:17  ID:6K2Be21z.net(2)
>420
public 型名 プロパティ名 {get;set;}
public Object Object(){
  return null;
}
って書けるのと同じ

422
デフォルトの名無しさん[sage]   投稿日:2016/12/08 18:48:35  ID:6K2Be21z.net(2)
C#はフィールドとローカル変数はhogeFooで、プロパティ、メソッド、クラス、名前空間はHogeFooだから結構型名と被る事多いよ

423
デフォルトの名無しさん[sage]   投稿日:2016/12/09 01:37:38  ID:nk5rcDEa.net
>419
とりあえずこんな感じ
public class TestCmb : ComboBox
{
  [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
  public FontAndColorSetCollection TestProperty { get; set; } = new FontAndColorSetCollection();
}

//[Serializable] これいらない
public class FontAndColorSet
{
  public Font Font { get; set; }
  public Color Color { get; set; }
}
public class FontAndColorSetCollection : Collection<FontAndColorSet>
{
  public void AddRange(FontAndColorSet[] items)
  {
    foreach (var x in items)
      this.Items.Add(x);
  }
}

ここが参考になる
https://www.codeproject.com/articles/5372/how-to-edit-and-persist-collect...
コメント1件

424
419[]   投稿日:2016/12/09 09:31:24  ID:pxgVwarY.net
>423
おおおおおおおおおおお!!!!!!!
ありがとうございます♪さっそく試したところうまくいきました!!
これだけでかなりコード量が減るのでホントたすかりました;w;

ありがとうございますm(_ _)m

425
デフォルトの名無しさん[sage]   投稿日:2016/12/09 11:25:46  ID:nQ2cVzw4.net
質問者じゃないけど、>419のコードというか、List<T>じゃダメな理由は何なんだろう
AddRangeの引数の型がT[]じゃないから?

426
デフォルトの名無しさん[]   投稿日:2016/12/09 12:43:50  ID:73dS9ox0.net(2)
C#でWindows.formアプリを勉強中なんですが
controlとの絡みばかりでクラスを作って色々やるといったことなく出来上がってしまいます
複雑化すればそうもならないのでしょうか。。
コメント1件

427
デフォルトの名無しさん[sage]   投稿日:2016/12/09 13:56:37  ID:3kVVURfS.net
>426
単純なアプリだとそんなもんだよ
規模が大きくなってきても、ある程度まではその流儀でやれなくはないけど、そのうち
プログラムの見通しが悪くなって、メンテする際にイライラする事が多くなって、
やり方を変えたくなってくる
コメント1件

428
デフォルトの名無しさん[]   投稿日:2016/12/09 18:10:47  ID:73dS9ox0.net(2)
>427
ありがとうございます
頑張ってみます

429
デフォルトの名無しさん[sage]   投稿日:2016/12/09 18:31:58  ID:IAKedM2U.net
ドカタ開発だとそのままのノリで大きなシステム作っちゃうけどね
共有していいのはDBだけ、あとはコピペ上等で画面単位でぶった切れ、という開発スタイルなら設計スキルが無くても容易にスケールするよ
まあ一度書いたものは弄らないことが大前提のやり方なので、後で大きな仕様変更が入ったら炎上するんだけど
コメント1件

430
デフォルトの名無しさん[sage]   投稿日:2016/12/09 20:14:42  ID:RJlryFXO.net(3)
>429
特定企業への破壊工作を目的とする場合以外に絶対にやってはいけないアーキテクチャパターンランキング第1位のやつじゃん
コメント1件

431
デフォルトの名無しさん[sage]   投稿日:2016/12/09 20:54:48  ID:0cPrt4mX.net(2)
>430
とはいえ日本の高度経済成長を支えた伝統ある開発手法だからね
低スキルな要員で案件を確実に終わらせて逃げることに関しては現代においても最強よ
古典的なウォーターフォールが正しく機能してるなら客の後出し要件なんか無視できるんだし
コメント1件

432
デフォルトの名無しさん[sage]   投稿日:2016/12/09 21:03:09  ID:SmYH2aqj.net(2)
その頃のシステムのリプレイスで付けを払わされて炎上してるところいっぱいありそう
コメント1件

433
デフォルトの名無しさん[sage]   投稿日:2016/12/09 21:12:50  ID:0cPrt4mX.net(2)
>432
しかしそのツケを払うのは当時のSIerではなく客だ
際限なく肥大化する保守費用、しかしリプレースしようにも見積は天文学的な金額になる
売る側にとっちゃメリットしかないんだよ
コメント2件

434
デフォルトの名無しさん[sage]   投稿日:2016/12/09 21:22:01  ID:4/j9vJm7.net
コメントしっかりしててすげー綺麗なコード書く奴いるけど
いつもスケジュール間に合わず動かず役に立たず。ぎりぎりになると周りがフォローよ

435
デフォルトの名無しさん[sage]   投稿日:2016/12/09 21:38:16  ID:RJlryFXO.net(3)
>431
借金は日本のお家芸だな
日本中でそれやってビジネス停滞してんだから国家的損失はデカイ

436
デフォルトの名無しさん[sage]   投稿日:2016/12/09 21:41:54  ID:inzQIL9U.net
>433
そこで魔法の言葉「過去資産の流用」が出て来るのか

437
デフォルトの名無しさん[sage]   投稿日:2016/12/09 21:50:33  ID:YFW7nsEC.net
>433
マジで経験したことないやろ
そんな案件の尻拭いってモチベーションだだ下がりやし
二度と経験したくない

438
デフォルトの名無しさん[sage]   投稿日:2016/12/09 22:28:31  ID:RJlryFXO.net(3)
レガシーシステムのリファクタリングは楽しい
でもリファクタリングをしたら正しく動いてるものに触るなと怒られる
ジャアアアアップ
コメント1件

439
デフォルトの名無しさん[sage]   投稿日:2016/12/09 22:32:26  ID:o6zCM5vx.net
>438

440
デフォルトの名無しさん[sage]   投稿日:2016/12/09 23:11:31  ID:SjD2GByw.net(2)
周りにC#プログラミングをやっている人がおらず、推奨/非推奨の判断ができないので相談させてください
次のような書き方はアリでしょうか

たとえばWindowsフォームアプリケーションのForm1クラスの
直下に
Regex.CacheSize = 100;
などとほかのクラスのプロパティ代入文を書くとエラーでコンパイルが通りませんが、これを
int dummy_int = Regex.CacheSize = 100;
というようにダミーの変数代入を噛ませれば、
コンパイルエラーを起こすことなく書くことができてしまいます

これは普通に使われるようなテクニックですか?
それとも仕様上はコンパイルできるがあまり好ましくない書き方ですか?
コメント2件

441
デフォルトの名無しさん[sage]   投稿日:2016/12/09 23:20:41  ID:SmYH2aqj.net(2)
使っちゃ駄目。
上の書き方でコンストラクタ内とかで設定。
コメント1件

442
デフォルトの名無しさん[sage]   投稿日:2016/12/09 23:22:54  ID:AFnkuo0i.net
考えたこともなかったからちょっと感心したわ
視点の違いってすごいわ
コメント1件

443
デフォルトの名無しさん[sage]   投稿日:2016/12/09 23:39:59  ID:pDhW8mKL.net
コンストラクタが呼ばれた時に暗黙的に変数の初期化が走るとは言え上手くいくのだろうか。
普通はコンストラクタかForm1がロードされた時に代入かな。
コメント1件

444
デフォルトの名無しさん[sage]   投稿日:2016/12/09 23:45:53  ID:SjD2GByw.net(2)
>441
ありがとうございます、やっぱりダメですか
ちなみにどういった理由でダメなんでしょう

実際には色々なクラスの色々な所でRegexオブジェクトを定義しているので
なるべく早くキャッシュサイズを拡大したいんですが、
(あまりProgram.csは触りたくないけど)素直にMain()内に書くしかないんでしょうか

>443
ステップ実行してみたら、Form1のコンストラクタ(InitializeComponent();)よりも前に実行されてました
コメント3件

445
デフォルトの名無しさん[sage]   投稿日:2016/12/09 23:51:08  ID:vatll/rz.net
>440
こんな仕様初めて聞いたんだが、誰かkwsk
コメント1件

446
デフォルトの名無しさん[sage]   投稿日:2016/12/10 00:10:15  ID:htA28gv+.net(4)
>442 >444
int a=b=100;
みたいな書き方ができること自体は以前どこかで読んだことがあったものの
なんとなく気持ち悪くてこれまで使ったことがなかったのですが、
最近改めて=演算子の戻り値と演算順序(先に実行される「b=100」の結果が100を返すので
それがaにも代入される)を勉強したところだったので、コンパイルできるかなと思ったらできてしまいました
コメント2件

447
デフォルトの名無しさん[sage]   投稿日:2016/12/10 00:11:39  ID:htA28gv+.net(4)
>446は442と>445へのレスでした。

448
デフォルトの名無しさん[sage]   投稿日:2016/12/10 00:14:55  ID:HOF4U6Im.net
>446
それは分かる
でも何故エラーが出なくなるのかって話

449
デフォルトの名無しさん[sage]   投稿日:2016/12/10 00:24:59  ID:mt2BmPb5.net
そもそも単なる文法上の制約だからだろ

そういう制約をわざわざ付けてるってことは、そういう事はやるべきじゃないって思想の表現だと思うが

450
デフォルトの名無しさん[sage]   投稿日:2016/12/10 02:21:43  ID:XBbQ6S0E.net
>444
横だし俺はC#専門ではないけど、それってコンストラクタ内に書けばいいだけだよね。
果たして>440で動くのかも疑問だけど、
仮に動いたとしても、ダミー変数がインスタンス内に残ってしまうのが無駄だよね。

そもそも a=b=c の書き方自体をしない。(ただしRubyの連中はするのかもしれない)
何故かは知らんが、おそらく見にくいという主張をする奴が多いからだろう。
どのみち普通はコーディングルールで禁止してあるし、
行数をケチる以外のメリットもないからいちいち文句を言う価値もないし。
コメント1件

451
デフォルトの名無しさん[sage]   投稿日:2016/12/10 02:29:36  ID:THyFY8cN.net
>444
単純に分かり難いから。このスレの反応見ても、普通使わなそうなのが見て取れるでしょ。

Program.csが嫌でなるべく早くというなら、Form1のコンストラクタが良いんじゃないの。
Form1のコンストラクタよりも先である必要ってないでしょ。

452
デフォルトの名無しさん[]   投稿日:2016/12/10 03:10:58  ID:jJfPnpDE.net(4)
static IDisposable SubscribeTracer<T>(this IObservable<T> source, string name) {
var disposer =
source.Subscribe(value => Console.WriteLine("{0} : OnNext({1})", name, value));
return disposer;
}
このプログラムは一体なんなのだ。全然わからない。そこで理解しようと思ってラムダ部分を
関数に置き換えてみると
void ramda(string value ){ Console.WriteLine("{0} : OnNext({1})", name, value); };

だあーー、nameを持ってこれない。持ってくるとすればグローバルにするしかない。
 ラムダ関数は単なる匿名関数というだけでなくて、こういう便利な機能があるんだと初めて
分かった。つまり普通の関数にするとスコープを閉じるがラムダにするとスコープが開く。
オープンスコープ機能だ。ダダだい発見だ。と思ってほかにも気が付いた奴がいないかと
「ラムダ関数はスコープを開く」でググってみると、無い。俺の発見だ。w

453
デフォルトの名無しさん[]   投稿日:2016/12/10 03:13:11  ID:jJfPnpDE.net(4)
MSの説明 ラムダ式(C#プログラミングガイド)
ラムダ式は、デリゲート型または式ツリー型を作成するために使用できる匿名関数です。 ラムダ式を使用すると、引数として渡したり関数呼び出しの結果値として返すことができるローカル関数を記述できます。 ラムダ式は、LINQ クエリ式を記述する場合に特に便利です。
以下省略(間違いがおおすぎ、、、、)

1行目から間違ってるよな。W デリゲート型をつくるのは delegate int del(int i); この部分で
あって
del myDelegate = x => x * x;
これではないな。
2行目も間違ってるよな。w ローカル関数ってのはC#7(VS2017)からなのでまだサポート
ないだろ。

454
デフォルトの名無しさん[]   投稿日:2016/12/10 04:49:24  ID:jJfPnpDE.net(4)
delegate void del(string valule);
static string _name;
static IDisposable SubscribeTracer<T>(this IObservable<T> source, string name)
{
_name = name;
//var disposer = source.Subscribe(value => Console.WriteLine("{0} : OnNext({1})", name, value));
del aa;
aa= eventdo;
var disposer = source.Subscribe( aa(val ) );
}
static void eventdo(string value){
Console.WriteLine("{0} : OnNext({1})", _name, value);
}
452をDelegateで書き換えてみたがコンパイルエラーになる。なんでだ?

455
デフォルトの名無しさん[sage]   投稿日:2016/12/10 08:12:40  ID:htA28gv+.net(4)
>450-451
なるほど、見にくい・分かりづらいというのは同意見です
(自分もint a=b=0みたいな表現は今回の件まで一度も使おうとしなかったので)
ただ、Form1のコンストラクタに書いても
実行順序はForm1のメンバ変数定義より後回しになってしまうようなので…

Form1のメンバ変数としてRegexオブジェクトを大量に定義しているので
もっと早くキャッシュサイズを拡張しないと意味ないのかな?と
コメント4件

456
デフォルトの名無しさん[]   投稿日:2016/12/10 09:33:27  ID:jJfPnpDE.net(4)
すまん。454は自己解決した。
そもそもIObservableをまったく理解してなかった。

457
デフォルトの名無しさん[sage]   投稿日:2016/12/10 10:41:12  ID:scmr7sdZ.net
>455
メンバ変数の初期化もコンストラクタでやったらどうかな?

458
デフォルトの名無しさん[sage]   投稿日:2016/12/10 12:31:00  ID:rHn5Q6ti.net(3)
>455
変な小細工せずにForm1のコンストラクタを呼び出す前に書くのが筋だと思う。

っていうか、Regexあんまり使わないので自信ないけど、そもそもRegex.CacheSizeなんか設定しなくても
RegexのコンストラクタでRegexOptions.Compiledを指定すれば済むんじゃないの?
コメント1件

459
デフォルトの名無しさん[sage]   投稿日:2016/12/10 12:43:23  ID:rHn5Q6ti.net(3)
http://smdn.jp/programming/netfx/regex/1_regex_cached_compil...
↑によるとCacheSizeが影響するのはスタティックメソッドを使う場合だけ?

>455はRegexのインスタンスを生成してるみたいだから、だったらそもそもCacheSizeの
設定は無意味ってことかな。
コメント2件

460
デフォルトの名無しさん[sage]   投稿日:2016/12/10 12:53:41  ID:rHn5Q6ti.net(3)
考えてみたら、どっからでもアクセスできちゃうstaticなプロパティの値が
個々のインスタンスの挙動に影響を与えるような筋悪な設計は
普通はありえないよな

461
デフォルトの名無しさん[sage]   投稿日:2016/12/10 12:59:36  ID:9rLOEiC0.net(2)
>459
>455も設定先はstaticでしょ。そうしないとエラーになるはず

462
デフォルトの名無しさん[sage]   投稿日:2016/12/10 14:07:24  ID:8ZN9Ra/9.net
キャッシュが影響するのはRegex.IsMatchみたいな静的メソッド使うときだけ
new Regexする時はキャッシュ関係ないと思う

あと、フィールドの初期化はわかりにくいので軽くて副作用のないものだけにした方が良い
正規表現の作成が時間食うなら、コンストラクタで行った方があとあと変更するときによい
コメント1件

463
デフォルトの名無しさん[sage]   投稿日:2016/12/10 14:32:08  ID:ZQIWZdV9.net
>(あまりProgram.csは触りたくないけど)
ドンドン触れ!
変なこだわりは捨てるべき
コメント1件

464
デフォルトの名無しさん[sage]   投稿日:2016/12/10 16:30:39  ID:SuPtWdia.net
分かっててあえてやってるなら大きなお世話かもしれんけど、
そもそも処理をFormに書いちゃうところから間違ってるな
コメント1件

465
デフォルトの名無しさん[sage]   投稿日:2016/12/10 18:25:04  ID:9rLOEiC0.net(2)
>464
世話焼くならForm1って名前からにしろ

466
デフォルトの名無しさん[sage]   投稿日:2016/12/10 18:42:35  ID:L/PQ4lRu.net
自前で適当に作ってる自分用アプリならネーミングセンス(とデフォルト名変更)についてとやかく言う必要は無いがな。

467
デフォルトの名無しさん[sage]   投稿日:2016/12/10 19:02:21  ID:YyXkI5ew.net
Form1とかの名前、あれはもうつけかえるのはやめにしたんだ

468
デフォルトの名無しさん[sage]   投稿日:2016/12/10 19:07:08  ID:BtzSATc1.net(4)
ListViewのItemを高速に消す方法はないでしょうか?
BeginUpdateをしていても遅くて。3万件のItemから29800件消すといった場合です。
コメント3件

469
デフォルトの名無しさん[sage]   投稿日:2016/12/10 19:17:12  ID:htA28gv+.net(4)
>459 >462
インスタンスの場合はキャッシュ関係ないんですね…勘違いしてました

>458後半
コンパイルすればキャッシュは無関係、というわけではなかったと思います
キャッシュが少ない状態で何種類ものパターンで静的メソッド(コンパイルオプションつき)を使うと
何度もコンパイルされる羽目になるはずです

>463
キャッシュの拡大はRegexを使うクラス内に書いておきたいという気持ちがあるんですが
「なるべく早めに」ということならやはりMain()&#8206;に書いた方がいいのかなあ…

470
デフォルトの名無しさん[sage]   投稿日:2016/12/10 19:19:43  ID:0TBYagU6.net(3)
つうかいいか
そういうのはコードじゃなくて設定ファイルに書くもんだよ

471
デフォルトの名無しさん[sage]   投稿日:2016/12/10 19:22:20  ID:wTYgtvkF.net
>468
コントロールを再作成して必要な分だけ追加したら?
コメント1件

472
デフォルトの名無しさん[sage]   投稿日:2016/12/10 20:00:23  ID:g6CF/PBV.net(2)
>468
その前に3万件追加した作業が無駄だよね
0件から200件追加することが出来ないのかプログラムを見直すべき
コメント1件

473
デフォルトの名無しさん[sage]   投稿日:2016/12/10 20:24:13  ID:BtzSATc1.net(4)
>471
ありかもしれません。

>472
追加と削除のタイミングが違うので・・・
コメント1件

474
デフォルトの名無しさん[sage]   投稿日:2016/12/10 20:32:26  ID:moWXVb0v.net(2)
仮想化しててもそんなに遅くなるもんかね

475
デフォルトの名無しさん[sage]   投稿日:2016/12/10 20:33:06  ID:g6CF/PBV.net(2)
>473
3万件をスクロールして閲覧する用途が有るはずもなく、最初から考えが間違っているんだよ
とはいえ、割りとありがちなんだけどね

476
デフォルトの名無しさん[sage]   投稿日:2016/12/10 20:46:01  ID:iMqvKcIt.net
VirtualModeなら速いんでねの?

477
デフォルトの名無しさん[sage]   投稿日:2016/12/10 20:48:19  ID:0TBYagU6.net(3)
お客様は何万件でも表示させるといったらPGが死んでも表示させる
もちろんパフォーマンスの低下は許さない
つまりこれは現実的な用件なんだよね

478
デフォルトの名無しさん[sage]   投稿日:2016/12/10 21:14:17  ID:f57StUOL.net
御意!

479
デフォルトの名無しさん[sage]   投稿日:2016/12/10 21:45:14  ID:BtzSATc1.net(4)
VirtualMode速すぎる
なんだこれ
これを待ってました。

480
デフォルトの名無しさん[sage]   投稿日:2016/12/10 21:53:53  ID:mMrYCd0+.net(2)
Formsは長いことやってたんだけど.net coreでのWebシステムって容易く出来るんけ?
PHPでのMVCフレームワークとかrailsはわかる

481
デフォルトの名無しさん[sage]   投稿日:2016/12/10 22:08:22  ID:0TBYagU6.net(3)
基本がしっかりしてれば簡単だよ
そのためにUIフレームワークに依存しないように作れっていつも言われるだろ
コメント1件

482
デフォルトの名無しさん[sage]   投稿日:2016/12/10 22:09:21  ID:mMrYCd0+.net(2)
>481
さんくす
手を出してみるわ
何を選んでもMFCのドキュメントビューよりは良いだろうってのが心の拠り所です

483
デフォルトの名無しさん[sage]   投稿日:2016/12/10 22:28:44  ID:moWXVb0v.net(2)
仮想化せずにListViewで3万アイテム扱ってたのか・・・

484
デフォルトの名無しさん[sage]   投稿日:2016/12/10 22:31:16  ID:BtzSATc1.net(4)
仮想化するとInsertionMarkが使えないみたいです。
どうしましょうか?
コメント1件

485
デフォルトの名無しさん[sage]   投稿日:2016/12/10 23:55:43  ID:VtzX6XaJ.net
>468
発想を変えて、ListViewを作り直したら?

486
デフォルトの名無しさん[sage]   投稿日:2016/12/11 07:29:54  ID:9qlRR3sU.net(2)
>484
WM_SETREDRAWで描画停止してやれば、Virtualでなくても3万件ぐらいいけると思う。
やり方は、検索すれば出てくる。
コメント1件

487
デフォルトの名無しさん[sage]   投稿日:2016/12/11 08:09:32  ID:tSe+v4ik.net
3万件用と200件用は別のListViewを用意して、Visibleで切り替えるとか

488
デフォルトの名無しさん[sage]   投稿日:2016/12/11 10:51:04  ID:rgeKQ1h1.net(2)
質問させてください。
Microsoft Press の「プログラミング.NET Framework 第2版」という本に、下記の記述があるのですが、

【【【【【引用ここから】】】】】
internal sealed class Transaction {
 private DateTime timeOfLastTransaction; // 最後にトランザクションが行われた時間を記録するフィールド

 public void PerformTransaction() {
  Monitor.Enter(this); // thisオブジェクトのロックを取得
  // トランザクションを実施...

  timeOfLastTransaction = DateTime.Now; // 直前のトランザクションの時間を記録
  Monitor.Exit(this); // thisオフジエクトのロックを開放
 }

 public DateTime LastTransaction { // 最後にトランザクションが行われた時間を返す読み取り専用プロパティ
  get {
   Monitor.Enter(this); // thisオブジ工クトのロックを取得
   DateTime dt = timeOfLastTransaction; // 最近のトランザクションの時間を一時変数に保存
   Monitor.Exit(this); // thisオブジェク卜のロックを開放
   return dt; // 保存された日時を返す
  }
 }
}
【【【【【中略】】】】】
プロパティの実装でEnterとExitと一時変数dtが必要なことに注意してください。
破壊されている可能性のある値を返さないようにするために、これが重要です。
あるスレッドがPerformTransactionを呼び出している問に別のスレッドがプロパティにアクセスすると、これが起こりえます。
【【【【【引用ここまで】】】】】

Monitorでロックをしてるのに、なぜ「あるスレッドがPerformTransactionを呼び出している問に別のスレッドがプロパティに
アクセスする」ことがありえるのでしょうか?
コメント1件

489
デフォルトの名無しさん[sage]   投稿日:2016/12/11 11:00:53  ID:E1v0n/uN.net
>488
プロパティの実装でEnterとExitと一時変数dtが必要なことに注意してください。
破壊されている可能性のある値を返さないようにするために、これ(enter/exit/dtの存在)が重要です。
(enter/exit/dtが存在しないなら、)あるスレッドがPerformTransactionを呼び出している問に別のスレッドがプロパティにアクセスすると、これ(破壊されている値を返すこと)が起こりえます。

つまり(きちんと)ロックしてるならアクセスすることはない

490
デフォルトの名無しさん[sage]   投稿日:2016/12/11 11:14:59  ID:rgeKQ1h1.net(2)
すみません。質問の書き方がマズかったですね。
それと、もう一度自分でよく考えて、自己解決しました。

疑問に思ったのは、

・複数スレッドが同時にアクセスしないようにするために、EnterとExitが必要なことは
 わかるが一時変数dtはなぜ必要なのか?
・Enter〜Exitでロックしてても、PerformTransactionの呼び出し中に別スレッドが
 アクセスすることがありえるのか?
・その問題を回避するために、いったん一時変数dtに退避する必要があるという意味か?

ということでした。

しかし、よく考えれば、疑問が解消しました。

・dtが無いとreturnで値を直接返すことになる
・そのためにはreturnをEnterとExitで囲む必要がある(がそんなことはできない)
・だから、dtに入れてる

ってだけのことですね。お騒がせしました。
回答いただいた方、ありがとうございました。

491
デフォルトの名無しさん[sage]   投稿日:2016/12/11 14:59:01  ID:o/YiWCEr.net
>486
WM〜でなんかやるならInsertionMark云々だって自己解決できるような気が
コメント1件

492
デフォルトの名無しさん[sage]   投稿日:2016/12/11 22:39:52  ID:9qlRR3sU.net(2)
>491
描画止めるくらいであればウインドウメッセージとかよくわからなくてもググって数行コピペするだけで出来るし、既に非Virtualで作ったものをVirtualに変更するより手っ取り早いかなと思って。

493
デフォルトの名無しさん[sage]   投稿日:2016/12/11 23:37:43  ID:rW4zRmsa.net
InsertionMarkってNearestIndexが使えないだけみたいで
そこだけ計算で出してやれば使えました。
お陰で高速な動作ができるようになりました。ありがとうございました。

494
デフォルトの名無しさん[]   投稿日:2016/12/14 22:10:21  ID:zGQk9RuM.net(2)
正規表現Regexのインスタンスを作る際の文字列指定をするときに、
@を先頭につけているのを見るのですが、
これはどういったことでしょうか
必要なのでしょうか
コメント1件

495
デフォルトの名無しさん[sage]   投稿日:2016/12/14 22:16:24  ID:LQhYfqJw.net
>494
\を大量に書かなくていいようにするため
コメント1件

496
デフォルトの名無しさん[sage]   投稿日:2016/12/14 23:05:36  ID:PdV20HuV.net
Rubyには、こういう関数があるけど、C#には無いの?

rp = Regexp.escape("$bc^")
\$bc\^

Regexp.escape(string) -> String
string の中で正規表現において、特別な意味を持つ文字の直前に、
エスケープ文字(バックスラッシュ)を挿入した文字列を返します

497
デフォルトの名無しさん[sage]   投稿日:2016/12/14 23:08:32  ID:+dTErpY/.net
そのまんまのがあるが
Regex.Escape(string)

498
デフォルトの名無しさん[]   投稿日:2016/12/14 23:16:39  ID:zGQk9RuM.net(2)
>495
494です
ありがとうございます

499
デフォルトの名無しさん[sage]   投稿日:2016/12/15 08:46:01  ID:3NUBKOAZ.net
完全に市場はJavaの圧勝が決まったようだ。
コメント1件

500
デフォルトの名無しさん[sage]   投稿日:2016/12/15 12:09:47  ID:VtGam84M.net
>499
へーすごいね

501
デフォルトの名無しさん[sage]   投稿日:2016/12/15 12:57:24  ID:4tPXC7sh.net
金箔貼っても糞は糞。を思い出した。

502
デフォルトの名無しさん[sage]   投稿日:2016/12/15 13:45:31  ID:7KRIzock.net

503
デフォルトの名無しさん[sage]   投稿日:2016/12/15 13:55:12  ID:8Dy0z+2t.net
chrome.webRequest.onBeforeRequest.addListenerでこれブロックしてる
"*://b.st-hatena.com/*",
"*://b.hatena.ne.jp/entrylist/*",
"*://b.hatena.ne.jp/entry/image/http*",
"*://b.hatena.ne.jp/entry/json*",
"*://b.hatena.ne.jp/bc/or/http*",
"*://api.b.st-hatena.com/entry.count*",
"*://cdn-ak.b.st-hatena.com/*",

504
デフォルトの名無しさん[sage]   投稿日:2016/12/15 19:32:58  ID:aesj07do.net
c#で書かれた解析機を吐き出すyaccみたいなツールってないの?

505
デフォルトの名無しさん[sage]   投稿日:2016/12/15 20:28:20  ID:u3iwxuUX.net

506
デフォルトの名無しさん[]   投稿日:2016/12/19 00:22:28  ID:hPPOameE.net
テキストボックスでValidatingを実装し、e.cancel=trueにした場合について2つ質問があります。
1.フォームの×ボタンを押してValidatingが発生しe.cancel=trueになっても、form.closingを実装するとフォームを閉じれるとネットブログであったのですが、
これはどういった仕組みでしょうか?
cancelになっても別のコントロールについては実装すれば、その処理が走るのでしょうか。
また、msdnでのそこに関する説明はどこにありますでしょうか?
2.そもそも,フォームの×ボタンでValidatingを走らせないようにするにはどうしたらいいでしょうか?

507
デフォルトの名無しさん[sage]   投稿日:2016/12/19 14:59:52  ID:/uogIQCg.net
2つと言いつつ1に3つぐらい質問があるように見える

> form.closingを実装するとフォームを閉じれる
実装するとじゃない。
Closingイベントのイベントハンドラでe.Cancelをfalseに設定したら閉じられる。

> これはどういった仕組みでしょうか?
Validatingで設定したe.CancelがClosingで設定されるe.Cancelで上書きされるだけ。

> cancelになっても別のコントロールについては実装すれば、その処理が走るのでしょうか。
ちょっと何言ってるか分からない。

> msdnでのそこに関する説明はどこにありますでしょうか?
ValidatingとClosing(FormClosing)のページにないんなら、ないんじゃない?

> フォームの×ボタンでValidatingを走らせないようにするにはどうしたらいいでしょうか?
WM_CLOSEをハンドルする方法とか提案されてる
http://d.hatena.ne.jp/dotnetmemo/20060702/1151839515

508
デフォルトの名無しさん[sage]   投稿日:2016/12/19 21:55:11  ID:m20BeiOW.net
前から疑問だったんだがValidatingでフォーカス移動封じるタイプのUIって誰が得するんだ?

509
デフォルトの名無しさん[sage]   投稿日:2016/12/19 23:07:10  ID:nxaByp7v.net
開発者の保身に役立つ
ユーザビリティ何それ

510
デフォルトの名無しさん[sage]   投稿日:2016/12/21 22:02:28  ID:OBoWPQLO.net
VisualStudioでスキャフォールディングっていうの?
あのC#コード生成ってどうやってんの?
右クリックメニューのコマンドで画面開いてパラメータ入力したらコードがいくつかババっと出力されてプロジェクトにインクルードされて時にはconfigまで書き換わるあの便利なやつ
コメント1件

511
デフォルトの名無しさん[sage]   投稿日:2016/12/21 22:13:35  ID:I2xL3xVw.net
子供発見

512
デフォルトの名無しさん[sage]   投稿日:2016/12/21 23:15:00  ID:EydnUon0.net
>510
テンプレートで生成してるだけだよ
自分で同じようなことやりたければT4でも調べてみたら

513
デフォルトの名無しさん[]   投稿日:2016/12/22 00:41:34  ID:0KrqUh09.net
>507
506です。遅くなりましたがお答えありがとうございます。

補足で質問です。
> cancelになっても別のコントロールについては>実装すれば、その処理が走るのでしょうか。
ここに関しては、validatingでe.cancel=trueにしたら、そもそもclosingが走らないかと思っていたのですが、そういうことではないのでしょうか。validatedまでキャンセルになるということでしょうか。

514
デフォルトの名無しさん[sage]   投稿日:2016/12/22 00:52:26  ID:3F8kH50r.net
closingにデバッグポイント置いてそこで停まったら実行されるってことだろ
そんくらいもできないのかよ

515
デフォルトの名無しさん[sage]   投稿日:2016/12/22 10:02:04  ID:i/pZa1E8.net

516
デフォルトの名無しさん[sage]   投稿日:2016/12/22 10:12:48  ID:hYDEOt1H.net
mbgdnfmdelffjdhkdggilmphfdihnmcj をNGワード設定だな。この開発者そこらに張りまくってやがる

517
デフォルトの名無しさん[sage]   投稿日:2016/12/23 13:13:48  ID:/B2iyB1G.net
そうなの?登録しとこっと…ハッ

518
デフォルトの名無しさん[sage]   投稿日:2016/12/24 06:16:26  ID:WEJSRv5C.net(3)
PythonのコードをC#で書き直してるんだけどさあ
C#で関数の引数に関数を指定することって出来ないのかな?

具体的にしたいことは関数の傾きを求めることで、たとえば適当な関数
float A(float x){return x^2;}
があったときに、傾きを求める関数
float B(関数, float x){return xでの傾き;}
みたいなものを作成して
d = B(A(), 0.1f);
のような呼び出し方をしたいんだけど・・・・なにかそれに近いC#のコードの記述方法ってないかな?
コメント1件

519
デフォルトの名無しさん[sage]   投稿日:2016/12/24 06:53:00  ID:kPI05Gb3.net
delegate じゃ駄目なの?
コメント1件

520
デフォルトの名無しさん[sage]   投稿日:2016/12/24 06:56:25  ID:iV5eYun0.net
float B(Func<float, float>, float) ということなのかな

521
デフォルトの名無しさん[sage]   投稿日:2016/12/24 07:23:08  ID:WEJSRv5C.net(3)
>519-520
デリゲートを使うのが一番近い記述ができるのかな?
そうするとミスって複数メソッドを登録したときの処理も記述しとかなきゃなんないかな・・・・

522
デフォルトの名無しさん[sage]   投稿日:2016/12/24 07:41:28  ID:qXNVWWNf.net(2)
>518
関数を引数にしたいなら520でいいけど

そもそもC#で任意の関数を引数にして傾きを求めるのは無理だと思うよ
引数の関数が微分可能かどうか(下手すると連続かどうか)も保証されてないのに
コメント3件

523
デフォルトの名無しさん[sage]   投稿日:2016/12/24 09:21:29  ID:3LTJc3r/.net
微分可能であることの保証ができないなんてどの言語でも一緒だろ
イベントハンドラ以外のデリゲートでマルチキャストを使う馬鹿もいない(いたら今すぐやめろ)から無視していい
あとそういう計算にfloat使うと激しく誤差が出るからfloatじゃなくてdouble使え
Pythonの浮動小数点数もdouble精度だ
コメント1件

524
デフォルトの名無しさん[sage]   投稿日:2016/12/24 10:31:06  ID:dPbQS77J.net(2)
>522
微分可能とか最近覚えた用語を使いたくてしょうがないんだな w
コメント1件

525
デフォルトの名無しさん[sage]   投稿日:2016/12/24 10:37:23  ID:qXNVWWNf.net(2)
あらかじめコーディングされた関数たちしか使わないなら、導関数も事前に用意しておけばいいよね

>523
mathematica等の数式処理言語ならできるよ

526
デフォルトの名無しさん[sage]   投稿日:2016/12/24 12:25:20  ID:1tLIoM8k.net
関数の数値微分は機械学習とかシミュレーションとかで普通に使うぞ

527
デフォルトの名無しさん[sage]   投稿日:2016/12/24 15:05:19  ID:uriaUnJG.net(2)
数学とC#の関数の定義の区別ができないお子ちゃまですか。

528
デフォルトの名無しさん[sage]   投稿日:2016/12/24 15:50:11  ID:IXC75mXH.net
おまえはC#の関数で、俺は数学の関数だ!
そこになんの違いもありゃしねぇだろうが!

529
デフォルトの名無しさん[sage]   投稿日:2016/12/24 15:52:59  ID:51ELz7Bu.net
空のWebアプリプロジェクトからASP.NET MVCをインストールして適当にビューを作ったんだけど
マークアップエディタのインテリセンスにViewBagがないって怒られます
コードエディタでは普通にViewBagにアクセスできます
これはいったいどういうことなんでしょうか
コメント1件

530
デフォルトの名無しさん[sage]   投稿日:2016/12/24 16:49:07  ID:uriaUnJG.net(2)
式をこねくり回したいんだろう。

自分ですうしきクラスを作れよ。

531
デフォルトの名無しさん[sage]   投稿日:2016/12/24 17:01:13  ID:WEJSRv5C.net(3)
>522
たしかに解析的に正しい微分できないけど、僅かにXをずらしてそれっぽい数値を出したいんです
コメント2件

532
デフォルトの名無しさん[sage]   投稿日:2016/12/24 17:07:45  ID:3KzFEnUI.net
微分可能かとどう実装するかは別の問題だからどうでもいいなw
ちょっと大げさめだが、俺ならinterface使う

533
デフォルトの名無しさん[sage]   投稿日:2016/12/24 18:08:40  ID:2kirY5E3.net
>531
何が言いたいのかよく分からんけど普通にこういうのじゃいかんの?
static double GetSlope(Func<double, double> func, double x, double delta = 1e-6)
{
  var left = func(x - delta/2);
  var right = func(x + delta/2);
  return (right - left) / delta;
}
コメント1件

534
デフォルトの名無しさん[sage]   投稿日:2016/12/24 19:30:16  ID:dPbQS77J.net(2)
>533
いや実装方法はわかってるでしょ
python からの移植なんだし
>531>522 が微分可能とか言い出してるからそれへの説明だと思うぞ

535
デフォルトの名無しさん[sage]   投稿日:2016/12/24 22:57:47  ID:ZPnvY2Gu.net
>524
えっ?

536
デフォルトの名無しさん[sage]   投稿日:2016/12/25 01:15:18  ID:2bXL0gSr.net
音声付の外国語の単語学習アプリを
作ろうとしてます。
数千の単語の音声を、少数のファイルで扱うには
どのような方法使えばいいんでしょうか?
コメント1件

537
デフォルトの名無しさん[sage]   投稿日:2016/12/25 02:05:37  ID:1Va0hmvu.net
全部つなげて1つのファイルにしておいて、
欲しい時にはその単語データのオフセットと長さを指定して取り出して再生、かな
コメント1件

538
デフォルトの名無しさん[sage]   投稿日:2016/12/25 02:11:45  ID:xhZEf65t.net
圧縮された音声データでそんな高精度のシークが可能なのかなw

っていうか、今時のWindowsってたいがいの言語の音声合成エンジンがタダで提供されてなかったっけ?
コメント2件

539
デフォルトの名無しさん[sage]   投稿日:2016/12/25 02:18:12  ID:tQvSe6Qr.net
>538
バイト配列にしてつなげてサイズと順番のインデックス作ればいいだけ
コメント1件

540
デフォルトの名無しさん[sage]   投稿日:2016/12/25 02:45:35  ID:bvgmOMUN.net
話が噛み合ってないな
>537>539はバラバラの既存の単語音声データを単一ファイルにまとめる話
>538はボインや子音とかから合成するTTSライブラリ使えって話
>536の目的は学習アプリ
前者なのか後者なのかはっきりさせないと答えようがないが
TTSから垂れ流す音声が正しいとは限らないので
単語レベルなら既存の音声辞書から引っ張って来た方がいい気はする

541
デフォルトの名無しさん[sage]   投稿日:2016/12/25 07:18:53  ID:MTT7ZR6N.net
ボインは赤ちゃんのためやでー

542
デフォルトの名無しさん[sage]   投稿日:2016/12/25 08:51:11  ID:NMeoNRf0.net
音声を64kぐらいでMP3化してSQLiteに登録するのが最善じゃね?

543
デフォルトの名無しさん[sage]   投稿日:2016/12/25 09:09:11  ID:r6LchLOJ.net
今時はクラウドだろ
バラバラのままでS3にでも突っ込んどけ

544
デフォルトの名無しさん[sage]   投稿日:2016/12/25 10:03:57  ID:bejmTeDn.net
再生の度にHDDから読み込むともたつくときがあるんだよね
だからといってゲームみたいにシーンに必要なデータを予め読める量でもないし
難しかったな

545
デフォルトの名無しさん[]   投稿日:2016/12/27 19:34:32  ID:r2C7TXrR.net
ASP.NET WebフォームとMVC勉強するならMVC一択ですか?
コメント1件

546
デフォルトの名無しさん[sage]   投稿日:2016/12/27 19:44:21  ID:RazBYv5e.net
>545
もちろん
CoreもFullも使えるし
コメント1件

547
デフォルトの名無しさん[]   投稿日:2016/12/27 21:03:13  ID:kWoV7/2e.net
>546
ありがとうございます
やはりそうなんですね

548
デフォルトの名無しさん[sage]   投稿日:2016/12/27 22:49:58  ID:DbM4OtJE.net
ASP.NETの基本的なことを学ぶなら空のWebFormsから始めた方がいい
MVCから入るとプロジェクトテンプレートの時点で訳が分からなくなって意欲を損なう
コメント1件

549
デフォルトの名無しさん[sage]   投稿日:2016/12/28 00:24:46  ID:6PQ8eENJ.net
>548
いやいや今どきWeb Formsとかないわ
仕事で仕方なくっていう理由ならわかるけど

550
デフォルトの名無しさん[sage]   投稿日:2016/12/28 02:37:03  ID:tHS+BZPK.net(5)
windows formでtwitterクライアントを作ろうとしているのですがタイムラインをどう表示するかで詰まっています
具体的に言うとブラウザや携帯のtwitterアプリで見るような形でタイムラインを表示したいのですがどのようなコントロールを使えばいいのか分かりません
どなたか教えていただけないでしょうか
コメント1件

551
デフォルトの名無しさん[sage]   投稿日:2016/12/28 06:10:33  ID:U/Wkcgn0.net
WebBrowser

552
デフォルトの名無しさん[sage]   投稿日:2016/12/28 06:28:56  ID:hLvgF446.net
>550
まずはタイムラインの仕様を詳しく書いて
コメント1件

553
デフォルトの名無しさん[sage]   投稿日:2016/12/28 07:40:36  ID:EECpjgXG.net(3)
俺もWebBrowserコントロールがいいと思うな。

554
デフォルトの名無しさん[sage]   投稿日:2016/12/28 07:55:45  ID:nclhbqFU.net
Twitterはツイートの表示の仕方がディスプレイガイドラインによってガチガチに決められてる
独自に作ったところで結局同じものを再発明することになるだけで時間の無駄でしかない
結論として、WebBrowserでいい

555
デフォルトの名無しさん[sage]   投稿日:2016/12/28 11:01:45  ID:Xid52+QB.net(2)
electron使え

556
デフォルトの名無しさん[sage]   投稿日:2016/12/28 11:06:16  ID:WHhbvFAo.net
UWFは知らんけどWin8のストアアプリにはそんなサンプルが結構あったね。
あの手のUIとXAMLは相性がいいとか何とか。

そういうのパクってWPFで....と思ったけどWindos Formで作るのか
コメント1件

557
デフォルトの名無しさん[sage]   投稿日:2016/12/28 11:11:05  ID:Xid52+QB.net(2)
Krileとかいう うぃんどうずさいきょうくらいあんと はWPFだぞ

558
デフォルトの名無しさん[sage]   投稿日:2016/12/28 11:33:29  ID:tDjKTni2.net
まったく同じもん作りたいならWebBrowserコントロールだけど
そうじゃなきゃリストビューのオーナードローかな
なんか意図があるから作りたいわけだろうからそれに合わせて作れとしかw

559
デフォルトの名無しさん[sage]   投稿日:2016/12/28 16:33:19  ID:XPsq6pGc.net
PictureBoxだろ。

560
デフォルトの名無しさん[sage]   投稿日:2016/12/28 17:04:41  ID:hmpOAOdC.net
ツイッターほとんど使わんので勘違いしてるかもしれんけど、
Windows Formなら複合コントロール(UserControl)使うのが一番現実的なような気はする

561
デフォルトの名無しさん[sage]   投稿日:2016/12/28 20:06:12  ID:tHS+BZPK.net(5)
>552
基本的にはブラウザで見るものと同じです
が、リプライ、RTなどのアイコンがなくなっておりさらに時間の表示位置と形式が違います
また、どのクライアントでツイートしたかの情報も表示します
クライアントの情報はツイート文の下に表示し、時間は絶対時間表記でクライアント情報の右に表示します
コメント1件

562
デフォルトの名無しさん[sage]   投稿日:2016/12/28 20:09:09  ID:ace8uG6s.net
>561
Twitterの規約に違反してる
コメント1件

563
デフォルトの名無しさん[sage]   投稿日:2016/12/28 20:15:46  ID:tHS+BZPK.net(5)
>562
違反している部分は例えば時間表記はデフォルトでの設定は相対時間表記にしておき設定を変更することによって絶対時間表記にすることができるといった方法で回避しようと考えています
コメント1件

564
デフォルトの名無しさん[sage]   投稿日:2016/12/28 20:34:23  ID:EECpjgXG.net(3)
なんでWebBrowserコントロールは嫌なの?
手軽に見た目もきれいに作れるし仕様変更もし易いのに。
PictureBoxにゴリゴリ描くのも楽しいだろうけど仕様変更が辛いよ。
コメント1件

565
デフォルトの名無しさん[sage]   投稿日:2016/12/28 20:42:16  ID:tHS+BZPK.net(5)
>564
個人的な考えなのですがWebBrowserコントロールを使うのであれば普通のブラウザソフトを使ってTwitterをすればいいと考えているからです

566
デフォルトの名無しさん[sage]   投稿日:2016/12/28 21:54:16  ID:Bwga9xUV.net(2)
>556
確かにWPFはこういうの得意だね。

>563
誤魔化してるだけで、回避は出来てないような。
コメント1件

567
デフォルトの名無しさん[sage]   投稿日:2016/12/28 22:32:59  ID:tHS+BZPK.net(5)
>566
WPFの方が作りやすいでしょうか?
規約については他のクライアントがこのような方法をとっていたのでこれで良いものと思いまして…
コメント1件

568
デフォルトの名無しさん[sage]   投稿日:2016/12/28 22:43:34  ID:6Nd1Z00H.net
TwitterのタイムラインをWebBrowserでやろうとした場合ってHTMLを加工してタイムラインだけを取る的な感じになるの?

569
デフォルトの名無しさん[sage]   投稿日:2016/12/28 22:56:26  ID:EECpjgXG.net(3)
普通はタイムラインのデータを取得してHTMLを生成してWebBrowserコントロールに
流し込むってイメージだと思うよ。
コメント1件

570
デフォルトの名無しさん[sage]   投稿日:2016/12/28 23:00:12  ID:Bwga9xUV.net(2)
>567
WPFはちょっと凝ったUI作るのにはお勧めなんだけど、初期の学習コストが大きいのがネック。
規約に関してはグレーゾーンでしょ。Twitter社次第。

571
デフォルトの名無しさん[sage]   投稿日:2016/12/28 23:30:17  ID:NekU8PBK.net(2)
var dic = new Dictionary<object, object>();
var isd = dic is IEnumerable<object>;
var asd = dic as IEnumerable<object>;

↑これなんだけど、vs2015だと
実際の値は
isdがfalse
asdがnull
なんだけど、ウォッチ式上は
isdがtrue
asdには値が入ってるんよ。
オレの環境だけ?
vs2010はどっちもfalseのnullなんだよね。
他の環境は手持ちがなくて確認できず

で、本題なんだけど

Dictionary<T, U>をIEnumerable<object>に変換できないかね?
誰かやり方知りない?

572
デフォルトの名無しさん[sage]   投稿日:2016/12/28 23:32:42  ID:gapvLjp6.net
Cast<object>()
コメント1件

573
デフォルトの名無しさん[sage]   投稿日:2016/12/28 23:52:57  ID:NekU8PBK.net(2)
>572
サンクス

すまんがもう一個
Dictionary<T, U>を一度object型に変換した後にDictionaryに変換せずに
IEnumerable<object>に直接変換する方法ってある?
元々、object型の値がIEnumerable<V>を継承してるか、継承していたら変換するって処理を作ってる時に気付いたもんで

後出しで申し訳ないが知ってたら教えてくり
コメント1件

574
デフォルトの名無しさん[sage]   投稿日:2016/12/29 00:33:10  ID:u+8RF5XF.net
>569
なるほどthx

575
デフォルトの名無しさん[sage]   投稿日:2016/12/29 00:38:59  ID:ICm4kcbN.net(3)
>573
ターゲットフレームワークが4以降なら直接IEnumerable<object>にキャストできる
Dictionary<,> は IEnumerable<KeyValuePair<,>> を実装している
.NET4以降ではIEnumerable<>は共変だからIEnumerable<派生>をIEnumerable<既定>として扱える
あと関係ないけど.NETの場合ジェネリックの型引数は
1つの場合はT、複数の場合はTKey, TValueのようにT〇〇と名付ける決まりだから
Java臭いキモい書き方はやめろ

576
573[sage]   投稿日:2016/12/29 00:49:52  ID:ICm4kcbN.net(3)
すまん訂正
KeyValuePair<,>は値型だから不変だな
直接キャストはできないので>572で全要素を個別にボックス化してやる必要がある

577
デフォルトの名無しさん[sage]   投稿日:2016/12/29 00:58:24  ID:ICm4kcbN.net(3)
あと >object型の値がIEnumerable<V>を継承してるか、継承していたら変換する だけど、
IEnumerable<object>のかわりに単に非ジェネリックのIEnumerableにキャストすりゃいいよ
IEnumerable<>はIEnumerableを継承しているので、
IEnumerable<>なら要素が値型だろうが何だろうがIEnumerableには確実にキャストできる
どうしても<object>にしたいなら ((IEnumerable)obj).Cast<object>() で変換できる

578
デフォルトの名無しさん[sage]   投稿日:2016/12/29 01:43:17  ID:yvgqyy5k.net
おぉ、サンクス!!
値型だとダメなのか。知らんかったわ。

名前については気を付けるよ。
.NETのクラスライブラリ設計にも書いてあんね。もう一度読み返すよ。
助かった。ありがとう

579
デフォルトの名無しさん[sage]   投稿日:2016/12/29 15:12:21  ID:ZEkDPYau.net
>529
msdnフォーラムで聞くほうがいいよ

580
デフォルトの名無しさん[sage]   投稿日:2016/12/30 07:18:33  ID:WuCbATao.net(10)
vb.netではなくc#を選ぶ理由を教えてください。

581
デフォルトの名無しさん[sage]   投稿日:2016/12/30 07:52:06  ID:ztwR1BBS.net(2)
コーディング量が多く単価が安い言語は選ばない
コメント1件

582
デフォルトの名無しさん[sage]   投稿日:2016/12/30 08:01:52  ID:pFqShxhH.net(2)
むしろ VB
・に慣れてる
・しか知らない
・しか使えない環境
以外の理由で VB.net を選ぶ理由が知りたいよ
コメント1件

583
デフォルトの名無しさん[sage]   投稿日:2016/12/30 08:22:40  ID:ztwR1BBS.net(2)
そやな。SharpDevelopの変換機能も優秀だし

584
デフォルトの名無しさん[sage]   投稿日:2016/12/30 08:28:44  ID:wot9qjtL.net
未だにVBやPHPの学習コストがどうのとか言ってるの見ると
はぁ…90年代からいらしたんですか?そりゃどうも…って感じになる

585
デフォルトの名無しさん[sage]   投稿日:2016/12/30 08:38:34  ID:fHdmB1av.net
VBは使えない新人にやらせるものだからね
毎年素人に教えなきゃいけないから学習コストは常にホットな話題なんだよ

586
デフォルトの名無しさん[sage]   投稿日:2016/12/30 08:55:52  ID:IhX7anmL.net
VBなんてもはや学習コストが低い言語ではないし、PHPだってHTMLのマクロだった時代ではない。

まぁそういう会社ってVB6なんだろーけどさ。

587
デフォルトの名無しさん[sage]   投稿日:2016/12/30 09:23:58  ID:ylI4PuDY.net
MSのサポートがより盤石な方と言われれば基本C#じゃないの
と思ってたら最新のTIOBEインデックスが不可解な事になってるけど
http://news.mynavi.jp/news/2016/12/08/031/
コメント1件

588
デフォルトの名無しさん[sage]   投稿日:2016/12/30 10:37:03  ID:z+0XLzNt.net
>587
TIOBEは昔から滅茶苦茶で
指標として価値がないよ

PYPLのが実態にあってるとおもう
http://pypl.github.io/PYPL.html

589
デフォルトの名無しさん[sage]   投稿日:2016/12/30 11:36:38  ID:LToUj4mC.net(2)
新しく作るならvb.net選ぶ理由なんてないんだろうけど、会社が90年代から続いてるからな
VB6よりも古い時代の資料を改定しながら使いまわしてる
今の時代に合わせて作り直したら大変だ

590
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:03:55  ID:WuCbATao.net(10)
>581
コーディング量が多いってほんまかいな。
.netならどっちも同じことができるはずやないんかいな。
vb.netなら何行も書く必要のあるものがc#なら1行で書けるコードがあるわけか。

社員に還元する気のない会社なら単価は安くていい。

591
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:21:39  ID:WuCbATao.net(10)
>582
vbに慣れてない人なんか少数派ではないんかいな。
vbなんかほとんどの人ができると思うけどな。
それで、vbの手続き(Sub)や関数(Function)も使える利点もある。
コメント2件

592
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:28:11  ID:FgVAt5LY.net
は?それVB独特の利点だと思ってんの?
葦の髄並みに視界が広いんだね!驚いた

593
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:30:49  ID:3Ls/pupf.net
VB は使えば使えるけど出来れば使いたくない、って人は多そう。自分はそう。

594
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:30:52  ID:WuCbATao.net(10)
.netのプログラム方法を知らないがvb6の方法なら知ってるときは、調べる時間を省いて早く作れる利点がある。
コメント1件

595
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:31:12  ID:1dqi8t3C.net
>591
リファレンスの差が圧倒的だからな。ライブラリもC#の方が充実してる。
コメント1件

596
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:36:38  ID:TrhPacUJ.net
VBAをC#表記にすればいいのにと

597
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:39:17  ID:WuCbATao.net(10)
>595
リファレンスは、c#でも普通に利用してvb.netでプログラムしてるから別にいい。
ライブラリって、サードパーティ製でc#にしか使えないものがあるということか?
コメント1件

598
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:40:53  ID:a9lBhbdO.net
>594
VBerの世界では日本語のゴミのことを利点って表現するんだな
勉強になったわ

599
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:44:33  ID:p8PwMXsr.net
>597
利点がどうかをお前の主観で判断するなら人に問いかけるな
お前のキンタマ脳味噌でしこたまオナってろカス野郎

600
デフォルトの名無しさん[sage]   投稿日:2016/12/30 12:55:30  ID:WuCbATao.net(10)
c#はどの言語とも互換性がない。

601
デフォルトの名無しさん[sage]   投稿日:2016/12/30 13:02:37  ID:E/JZqwpg.net
VB製のまともなソフト見たことがない
コメント1件

602
デフォルトの名無しさん[sage]   投稿日:2016/12/30 13:05:31  ID:pFqShxhH.net(2)
>591
VB なんて10年以上使ったことない
って奴はごろごろいると思うけど?

603
デフォルトの名無しさん[sage]   投稿日:2016/12/30 13:15:31  ID:WuCbATao.net(10)
どの言語プログラマーがc#になったのか教えてください。

604
デフォルトの名無しさん[sage]   投稿日:2016/12/30 13:19:37  ID:LToUj4mC.net(2)
こいつNGでいいだろw

605
デフォルトの名無しさん[sage]   投稿日:2016/12/30 13:29:15  ID:/QGVHUc5.net
>601
tweenが確かソースコード非公開化する前はVB.NETじゃなかったっけ

606
デフォルトの名無しさん[sage]   投稿日:2016/12/30 14:03:07  ID:WuCbATao.net(10)
java scriptやphpやperlやjavaに比べてc++やcに類似しているとはいえないし、
もちろん互換性もないのにc#とはおかしい言語名だ。
コメント1件

607
デフォルトの名無しさん[sage]   投稿日:2016/12/30 14:21:47  ID:B5+tn9xF.net(2)
単にJavaScriptがJavaの名前を付けて恩恵を受けようとしたのと同じようにCとつけたのでは
未だにJavaよりもC/C++使いの方がエキスパートみたいな風潮はあるしCって付けたのは悪くないと思うけど

608
デフォルトの名無しさん[sage]   投稿日:2016/12/30 15:56:44  ID:hgBVSCl8.net
Java開発者の.NET取り込みを狙った言語としてはJ#が別にあったからな
Java、C++、VBという当時の三大勢力のうちC#はC++開発者をターゲットにしていたから、
Cの名前を冠するのは戦略上当然

609
デフォルトの名無しさん[sage]   投稿日:2016/12/30 17:46:25  ID:U2S2spdu.net
VBにはC#のunsafe相当が無い
以上

610
デフォルトの名無しさん[sage]   投稿日:2016/12/30 18:31:14  ID:WuCbATao.net(10)
そうか、ポインタが使えなかったが、unsafeのブロックで囲って、プロジェクトのプロパティのビルドのページの
「アンセーフコードを許可する」にチェックを入れないといけなかったのか。C#ってぼろいな。

611
デフォルトの名無しさん[sage]   投稿日:2016/12/30 18:53:07  ID:WuCbATao.net(10)
unsafeブロックとビルドの設定変更で初めてポインタが使える、これでようやくCに近づいたか。

612
デフォルトの名無しさん[sage]   投稿日:2016/12/30 19:06:33  ID:B5+tn9xF.net(2)
意図的に使いにくくしてるわけでCに近づける意味も必要性もないけどな

613
デフォルトの名無しさん[sage]   投稿日:2016/12/30 21:27:21  ID:rzMADc8/.net
>606
そもそもVB.NETもVB6と互換性無いしな
互換性の維持は欠点の引き継ぎでもあるから、良いことばかりではない

614
デフォルトの名無しさん[sage]   投稿日:2016/12/31 01:38:04  ID:9j/vHbfh.net
クサレ脳ミソに触るなよ
年末で暇なのか?

615
デフォルトの名無しさん[sage]   投稿日:2017/01/03 12:36:47  ID:6G2Z4dX0.net
ASP.NETってリクエストと同じスコープの共有変数って無いの?
ApplicationとSessionだけ?
コメント1件

616
デフォルトの名無しさん[sage]   投稿日:2017/01/03 13:07:31  ID:bKYKotyv.net
ThreadLocal<T>使えば?
async使ってたりforkしてたりすると死ぬけど

617
デフォルトの名無しさん[sage]   投稿日:2017/01/03 18:21:36  ID:GxvhYohc.net(2)
>615
何がしたいん?
コメント1件

618
デフォルトの名無しさん[sage]   投稿日:2017/01/03 19:30:11  ID:7mNkwS/N.net
>617
リクエストとトランザクションのスコープを同期させたい
フレームワーク側でトランザクション管理して
個々のリクエストからはトランザクションを参照するだけにして透過的に扱えるようにしたい
コメント1件

619
デフォルトの名無しさん[sage]   投稿日:2017/01/03 19:33:32  ID:GxvhYohc.net(2)
>618
カタカナが多くて理解出来ないわ
すまん

620
デフォルトの名無しさん[sage]   投稿日:2017/01/03 23:21:22  ID:rV3i3AFU.net
リクエストのスコープで、誰と共有するんだ?
フレームワーク側でトランザクション管理って何の事を言ってるんだ?
@PageのTransactionならページ=リクエスト単位でのトランザクション管理だったと思うが

621
デフォルトの名無しさん[sage]   投稿日:2017/01/04 11:10:13  ID:P9CxkEKM.net
単にリクエストの前後でTransactionScopeの生成解放とcommitを入れたらいいだけじゃないのか?
明示的に共有する必要なんかないだろ
現在のトランザクションはTransaction.Currentで取れるし、
TransactionScopeAsyncFlowOption.Enabledでasyncにも対応できる

622
デフォルトの名無しさん[sage]   投稿日:2017/01/06 15:01:19  ID:ugUrUcmU.net
C#といっこも関係ないけど、ここのブログChromeだと問題ないけどFirefoxだと
なぜか糞重いんだけど、どうしてなんだろう
http://blog.xin9le.net/archive/category/C%23

.NET関係のブックマークはFirefoxで統一してるので出来たらFirefoxでも快適に見る方法ないかな
ブログ主が修正してくれたらそれが一番いいんだけど、こんなスレ見てないだろうし
こっちから指摘して直してくれってのもちょっとアレなんで

623
デフォルトの名無しさん[sage]   投稿日:2017/01/06 19:33:41  ID:UonIfHoY.net
2chに書くなボケ

624
デフォルトの名無しさん[sage]   投稿日:2017/01/08 04:55:07  ID:AV67jRu6.net(11)
C#なんか制御文と演算子がCに似てるだけで、それは他の多くのプログラム言語にも同じことが言えるし、
見かけがCに少し似てるだけで、中身はVB.NETと同じだろ。
VB.NETを拒絶してC#にこだわる理由がない。
挙句の果てに、「VBAをC#表記にすればいいのにと 」とまで言い出す始末。

625
デフォルトの名無しさん[sage]   投稿日:2017/01/08 05:21:47  ID:gvW6zVP3.net
いきなり何言ってんだこいつ

626
デフォルトの名無しさん[sage]   投稿日:2017/01/08 05:24:36  ID:AV67jRu6.net(11)
C#人は性格が異常な人が多いのかいな
コメント1件

627
デフォルトの名無しさん[]   投稿日:2017/01/08 05:38:16  ID:qYFGvy5R.net
なんの話をしてるんだ?

628
デフォルトの名無しさん[sage]   投稿日:2017/01/08 06:27:27  ID:TbfsFEah.net(2)
ID:WuCbATaoだろ
消しとけ

629
デフォルトの名無しさん[sage]   投稿日:2017/01/08 09:01:21  ID:FbXxDY90.net
>626
狂った人から見ると普通の人が狂ってるように見えるんだってさ

630
デフォルトの名無しさん[sage]   投稿日:2017/01/08 09:40:46  ID:vasp0ss6.net(3)
普通の人からするとプログラムできる人は普通の人ではないんだってさ。

631
デフォルトの名無しさん[sage]   投稿日:2017/01/08 11:10:32  ID:qEmyXRDT.net
それは確かに

632
デフォルトの名無しさん[sage]   投稿日:2017/01/08 11:24:30  ID:mLyjhJYP.net(3)
VBとかうんこだろ
VBAはうんこ オブ ザ うんこ

633
デフォルトの名無しさん[sage]   投稿日:2017/01/08 11:50:35  ID:aANViJyG.net
バカでも書きやすいのがVB系なのでVBAがそういう書き方なのは当然だろう
c#への橋渡しとしてのVB.NETだと思うし

634
デフォルトの名無しさん[sage]   投稿日:2017/01/08 11:59:14  ID:AV67jRu6.net(11)
どうせVBではないという見栄だけでC#なんだろ
コメント1件

635
デフォルトの名無しさん[sage]   投稿日:2017/01/08 12:14:57  ID:G2Ue1pwT.net(2)
VBからC#に入ったけどいまさらVBになんかめんどくさくて戻れん
使いたい人は勝手にしたらいいがC#のスレにきてわざわざ暴れるなよ

636
デフォルトの名無しさん[sage]   投稿日:2017/01/08 12:15:40  ID:8d6R2/PQ.net
>634
何を勘違いしてるのか知らないが、普通のC#使いのほとんどはVBも普通に使えるぞ?
逆はそうでもないが
コメント1件

637
デフォルトの名無しさん[sage]   投稿日:2017/01/08 12:21:38  ID:ZKkxHQju.net(3)
VBってC#と比べて新機能が遅れて導入されるから大嫌い

638
デフォルトの名無しさん[sage]   投稿日:2017/01/08 12:22:57  ID:U62MbfoD.net
VB6系はともかく別に誰もVB.NETを否定してないと思うが
というか幾らなんでも名前に踊らされ過ぎ

639
デフォルトの名無しさん[sage]   投稿日:2017/01/08 12:29:52  ID:6Rfsv7h0.net
VB.NETはC#と同じっていうのは実はC#er目線の話なんだよな
VB専に聞いてみりゃわかるが、彼ら自身はC#は別物だと思ってるし
実際彼らの書くコードはC#とは全く似つかないよ

640
デフォルトの名無しさん[sage]   投稿日:2017/01/08 12:47:23  ID:vasp0ss6.net(3)
あえて言おう。VB.NETは出すべきじゃなかった。

641
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:03:51  ID:AV67jRu6.net(11)
 「VB なんて10年以上使ったことないって奴はごろごろいると思うけど」という人がいる一方で、別の人は「普通
のC#使いのほとんどはVBも普通に使えるぞ」という人がある。10年以上使わないなら、普通に使えるとは思えないの
で、後者は前者の主張を否定したようなものだ。

「VBにはC#のunsafe相当が無い」という人がいる一方で、別の人は「意図的に使いにくくしてるわけでCに近づける
意味も必要性もない」といってunsafeの存在価値を否定した。

 それぞれの主張に客観性がないんだろうな。
コメント2件

642
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:10:39  ID:ZKkxHQju.net(3)
お前はちょっと黙ってろ
コメント1件

643
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:25:57  ID:Dfhzw297.net(2)
>641
「意図的に使いにくくしてるわけでCに近づける意味も必要性もない」は別にunsafeの存在を否定はしてないだろ。
普段使いするものじゃないからわざと使いにくくしてあるけど、いざという時はちゃんと使えるんだから。

644
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:26:42  ID:G2Ue1pwT.net(2)
VBは使えるけどC#が使えないから職場でいじめられたのかな
それでここで憂さ晴らししていると
ここでもバカにされるだけなのに

645
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:34:55  ID:Dfhzw297.net(2)
>636
最初からVBに興味ないか、少しだけ触って見限ったきりって人も多い。
少し勉強すればVBもできる人は多いだろうけど、そうする意味もあまりないし。

646
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:39:59  ID:mLyjhJYP.net(3)
VB.NETは構文調べて20分で捨てた
VB.NETで出来ることはC#で出来るし
何となく感覚で読めるけど書けない
コメント1件

647
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:43:29  ID:AV67jRu6.net(11)
(エセC)#、もしくは (エセC++)++ だろ

648
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:48:31  ID:AV67jRu6.net(11)
>642 どうせ他のレスが滞ってて沈黙が続いてるから、他人の邪魔してるわけではないからいいじゃないか。

649
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:58:48  ID:euA+r4Nb.net
VBerはC#erにコンプレックスだらけ。C#erは相手にしてない
東京、大阪の関係みたいなもんだな

650
デフォルトの名無しさん[sage]   投稿日:2017/01/08 13:59:50  ID:pxQLZoyB.net
もともとはVBの方が好きだったけどさすがに2008以降はちょっと使う気にならん感じになっちゃったねVBは

ExcelをCOM Interop;する時はOption Strict Offで適当にキャストかましてくれる
VBの方がまだちょっと使いやすいけどそれ以外はあえてVBを選ぶ理由は消滅したな。
コメント2件

651
デフォルトの名無しさん[sage]   投稿日:2017/01/08 14:00:51  ID:vasp0ss6.net(3)
確かに東京ってVB案件ばかりだな。

652
デフォルトの名無しさん[sage]   投稿日:2017/01/08 14:06:57  ID:ZKkxHQju.net(3)
>650
Office関連はNetOffice使った方が便利で安全だぞ
わざわざVB.NETを選ぶ必要は無い

653
デフォルトの名無しさん[sage]   投稿日:2017/01/08 14:22:29  ID:XDbKIsfA.net(2)
VBerでもC#やらせれば書けるよ
あいつら食わず嫌いしてるだけ
ただ書けるだけであってVBっぽい気持ち悪いC#コードが生産されるので書かせない方がいいのは確かだ

654
デフォルトの名無しさん[sage]   投稿日:2017/01/08 14:37:23  ID:C9GVPqMv.net
>641
> 10年以上使わないなら、普通に使えるとは思えない
30年以上 FORTRAN を使ってないけど普通に使えるけど?
コメント1件

655
デフォルトの名無しさん[sage]   投稿日:2017/01/08 14:51:06  ID:dpJgVr6u.net(3)
>650
VB2008からはC#の開発チームと統合されて、VBを馬鹿にしてるアンダースの配下になったからね
それまでは独自路線だったが、以降は開発方針が変わってC#の方言になった

656
デフォルトの名無しさん[sage]   投稿日:2017/01/08 14:59:20  ID:AV67jRu6.net(11)
Aの「vbに慣れてない人なんか少数派ではないんかいな」という主張にBが「vbに慣れてない奴はごろごろいる」
と反論するために「10年以上使ったことないって奴はごろごろいると思うけど」と反論の理由を言ったんだろう
と解釈できるし、そうなると、Cが「FORTRANを30年以上使ってなくても普通に使える」という主張は、Bへの反
論かいな。

657
デフォルトの名無しさん[sage]   投稿日:2017/01/08 15:03:11  ID:dpJgVr6u.net(3)
慣れてなくてもC#使いがVB使うのは何の問題もないわ
3日で生え抜きのベテランVBerより品質の高いコードを書ける

658
デフォルトの名無しさん[sage]   投稿日:2017/01/08 15:07:20  ID:AV67jRu6.net(11)
「普通のC#使いのほとんどはVBも普通に使えるぞ」や「普通のC#使いのほとんどはVBも普通に使えるぞ」
や「3日で生え抜きのベテランVBerより品質の高いコードを書ける 」等の発言から自分らを高く見せたい
というプライドがあるんだな。

659
デフォルトの名無しさん[sage]   投稿日:2017/01/08 15:11:41  ID:AV67jRu6.net(11)
間違えた、2つ目の「・・・・」は正しくは「FORTRANを30年以上使ってなくても普通に使える」
と書こうとした。

660
デフォルトの名無しさん[sage]   投稿日:2017/01/08 15:21:13  ID:tl4nBuMM.net
わざわざ訂正しなくてもいいよ。読んでないから

661
デフォルトの名無しさん[sage]   投稿日:2017/01/08 15:33:55  ID:j7hkxIjf.net
VBerは動けばいいやって人が多い
C#erはコードにもこだわる

662
デフォルトの名無しさん[sage]   投稿日:2017/01/08 15:41:15  ID:hmvsmXiF.net
>654
30年前のfortranってどんなの?

663
デフォルトの名無しさん[sage]   投稿日:2017/01/08 15:46:08  ID:dpJgVr6u.net(3)
F77じゃね
パンチガードで入力してたから、固定フォーマットでコメント文字は何文字目に打つというような決まりがあった

664
デフォルトの名無しさん[sage]   投稿日:2017/01/08 16:02:54  ID:XDbKIsfA.net(2)
VBは言語そのものではなく言語に纏わる文化が劣悪
VBで書ければC#でも書けるし逆も同じ
でも品質は全く違うものが出来上がる

665
デフォルトの名無しさん[sage]   投稿日:2017/01/08 16:14:56  ID:AV67jRu6.net(11)
>646 VB.NETスレで「キチガイ引き取って」と発言したな

666
デフォルトの名無しさん[sage]   投稿日:2017/01/08 16:17:18  ID:mLyjhJYP.net(3)
とりあえずvb.netスレに移動しろ

667
デフォルトの名無しさん[sage]   投稿日:2017/01/08 16:51:42  ID:CzVAxFca.net
朝早くからわけわからんレス書き込んでいる基地外に触んなよ
お前らも暇だなあ

668
デフォルトの名無しさん[sage]   投稿日:2017/01/08 17:06:56  ID:AV67jRu6.net(11)
何でお前らは人格異常なのか。
普通に疑問に答えればいいものを人格攻撃かいな。

669
デフォルトの名無しさん[]   投稿日:2017/01/08 17:07:39  ID:bz1GF1b+.net(2)
ちょまどでも使えるのがC#


670
デフォルトの名無しさん[sage]   投稿日:2017/01/08 17:18:11  ID:ZD9uWaqV.net
VB使いはC#も読めなけきゃスレタイも読めないのか(呆れ
コメント1件

671
デフォルトの名無しさん[]   投稿日:2017/01/08 17:22:24  ID:bz1GF1b+.net(2)
>670
俺は褒めてるんだけど?

672
デフォルトの名無しさん[]   投稿日:2017/01/08 19:41:33  ID:GefrbuSU.net
別に言語なんてなんだろうが出来るに越したことはないだろ
世の中にはプログラミングが出来るだけで神様のように崇める挫折した人らがごまんといるんだからさぁ
ただ今さらVBは無いわなってだけで
ある程度のプログラミングのスキルがあれば大抵の言語やればできるわ

673
デフォルトの名無しさん[sage]   投稿日:2017/01/08 19:47:55  ID:TbfsFEah.net(2)
消しとけって言っただろうが1日中相手しやがって休みに予定の一つもない暇人どもめ

674
デフォルトの名無しさん[sage]   投稿日:2017/01/08 19:55:49  ID:zjQfPtHB.net
>ある程度のプログラミングのスキルがあれば大抵の言語やればできるわ

察してあげる優しさも必要だと思うの。
・・・そうじゃなきゃこんなに拘ったりしないだろ。こんなどうでもいいことに。

675
デフォルトの名無しさん[sage]   投稿日:2017/01/09 01:08:12  ID:vxkpROxT.net
VBの問題は、VB6上がりがクソコード量産することであって、言語自体の問題とも思えんな
一部を除けばなれの問題じゃね?

676
デフォルトの名無しさん[]   投稿日:2017/01/09 03:40:15  ID:iFTSomz+.net
構造が異なるのにVisual Basicって名前が良くなかったな
C# LITEとかのがよかった

本当はVB6の文法のまま.NET化したほうがよかったが気がするけど
コメント1件

677
デフォルトの名無しさん[sage]   投稿日:2017/01/09 08:28:02  ID:PTkphACT.net
VB6的なものは、残してもらいたかった。

678
デフォルトの名無しさん[sage]   投稿日:2017/01/09 09:27:26  ID:4NqOEoqD.net(2)
VB6は基本そのままでCLIインターフェースを定義・公開できるようにするだけでよかった
レガシーコンポーネントとの接合面に徹するということね

679
デフォルトの名無しさん[sage]   投稿日:2017/01/09 10:11:36  ID:ES9C16us.net
そもそも言語の違いだけで
やれることが変わるっておかしいだろ

Basicで低級から高級まで、技術計算からwebまで全部網羅しなさいよ
コメント1件

680
デフォルトの名無しさん[sage]   投稿日:2017/01/09 10:20:44  ID:EPA1tS/m.net(2)
>676
書き方が違うのにc#の名前つけるのと不自然だろ

681
デフォルトの名無しさん[sage]   投稿日:2017/01/09 10:28:05  ID:5eZppcho.net
不自然な日本語
コメント1件

682
デフォルトの名無しさん[sage]   投稿日:2017/01/09 10:46:51  ID:4NqOEoqD.net(2)
日本語そのものがまず不自然
規格化して機械可読にしろ
曖昧過ぎて話にならん

683
デフォルトの名無しさん[sage]   投稿日:2017/01/09 10:53:09  ID:Ml4ZG/LK.net(2)
>681
「と」が多いだけで不自然じゃないだろ
そっちじゃなくて、>679の相手してやれよ
コメント1件

684
デフォルトの名無しさん[sage]   投稿日:2017/01/09 10:55:14  ID:qNaaD21i.net
>683
不自然すぎるだろ

685
デフォルトの名無しさん[sage]   投稿日:2017/01/09 11:28:05  ID:EPA1tS/m.net(2)
不自然と言うかただの誤字脱字なんだが

686
デフォルトの名無しさん[sage]   投稿日:2017/01/09 11:34:45  ID:GZgSniwS.net
this.RemoveRange(スレタイ読めないやつら);

687
デフォルトの名無しさん[sage]   投稿日:2017/01/09 11:49:57  ID:CAx+Qp4q.net
RemoveAllじゃね
コメント1件

688
デフォルトの名無しさん[sage]   投稿日:2017/01/09 12:04:50  ID:Ml4ZG/LK.net(2)
thisのスコープに注意

689
デフォルトの名無しさん[sage]   投稿日:2017/01/09 23:22:09  ID:PtjtbCa1.net
>687
いやすでにゴミなら
GC.Collect();
が妥当

690
デフォルトの名無しさん[sage]   投稿日:2017/01/10 22:17:04  ID:uwegHVoP.net
//デブはLOHに残る
GCSettings.LargeObjectHeapCompactionMode = GCLargeObjectHeapCompactionMode.CompactOnce;
GC.Collect();

691
デフォルトの名無しさん[]   投稿日:2017/01/11 23:03:15  ID:5ZcY/57e.net
PHPのコンストラクタって__construct()で統一されてるけど
C#は相変わらずクラス名と同名で行くのかな

<?php
class BaseClass {
function __construct() {

}
}
コメント2件

692
デフォルトの名無しさん[sage]   投稿日:2017/01/11 23:08:33  ID:1SbN3a75.net
>691
地味に面倒臭いな確かに
数が多くなると発狂レベル

693
デフォルトの名無しさん[sage]   投稿日:2017/01/11 23:45:27  ID:SOQiv9G3.net
public class Hoge(IFuga fuga) : IHoge {
public void DoSomething() { fuga.Hello(); }
}

こういう構文をサポートしてほしい
インジェクションで決まりきったコンストラクタと読み取り専用フィールドをダラダラ書くのがめんどくさい
コメント1件

694
デフォルトの名無しさん[sage]   投稿日:2017/01/11 23:49:54  ID:IQVyJq11.net
PHPは特殊だから比較にならない

695
デフォルトの名無しさん[sage]   投稿日:2017/01/12 01:46:35  ID:9/EXlZU1.net
>691
同じ名前にするのって歴史的以外になんか理由があるのかね
まぁ、手打ちすることはないからコピペしたときぐらいしか気にはならんが

>693
入りそうになったけど、レコード型と一緒に入れようとかで延期になった気がする
コメント1件

696
デフォルトの名無しさん[sage]   投稿日:2017/01/12 07:05:51  ID:0A4eRqXF.net
>695
歴史って言うか C++ 由来でしょ
Delphi みたいにキーワードで指定する方法もあるし、PHP みたいに固定的な名前もある

697
デフォルトの名無しさん[sage]   投稿日:2017/01/12 07:57:37  ID:gDCHiAoV.net
まあ自動生成が面倒になったりするだけで特にメリットは無いわな
単にC++やJavaの人が違和感なく入れるように配慮しただけ
メソッド名にキーワード使うのはインデクサのthisとかあるから public new() がベストだと思う
コメント2件

698
デフォルトの名無しさん[sage]   投稿日:2017/01/12 08:22:28  ID:arip6tnc.net

699
デフォルトの名無しさん[]   投稿日:2017/01/12 19:27:23  ID:xSuUU/8s.net(2)
>698
ASP.NETよりも桁違いに普及してる時点で
.NETのが格下扱いだろ

700
デフォルトの名無しさん[sage]   投稿日:2017/01/12 19:33:30  ID:2oeweQcz.net
普及している方が優秀なの?
コメント1件

701
デフォルトの名無しさん[sage]   投稿日:2017/01/12 20:12:53  ID:wTRJIMgP.net(2)
昔に流行ったけど保守性が低くて駆逐できなかっただけなんだとさ
コメント1件

702
デフォルトの名無しさん[sage]   投稿日:2017/01/12 20:13:54  ID:QYJftQFG.net
>701
phpがか?

703
デフォルトの名無しさん[sage]   投稿日:2017/01/12 21:40:32  ID:TJ6nofkx.net
>697
> public new() がベストだと思う
構造体は常に new する訳じゃないから
コメント1件

704
デフォルトの名無しさん[sage]   投稿日:2017/01/12 22:00:11  ID:b+ED7Ag1.net
>703
構造体のコンストラクタが呼ばれるのは明示的にnewされた場合だけだからそれでいいだろ

705
デフォルトの名無しさん[sage]   投稿日:2017/01/12 22:29:17  ID:3WOOMgjX.net(2)
new a()が

new new()扱いになるのがキモイ
コメント1件

706
デフォルトの名無しさん[sage]   投稿日:2017/01/12 22:30:43  ID:3WOOMgjX.net(2)
a.が抜けてた

new a.new()

707
デフォルトの名無しさん[]   投稿日:2017/01/12 22:38:31  ID:ja9bCuYX.net
.NET Coreって普及してるの?もしくはこれからweb開発のスタンダードになりそう?

708
デフォルトの名無しさん[sage]   投稿日:2017/01/12 22:47:22  ID:oQ7f95Jk.net
なってほしいな
今は仕事だとphpとrailsメインだけどc#でなんでもやりたいわ
LAMPがどかーんと行ったのだって言語云々じゃなくサーバが無料ってのが大きかったと思うんよね
コメント1件

709
デフォルトの名無しさん[sage]   投稿日:2017/01/12 22:50:38  ID:wTRJIMgP.net(2)
コスト安くなるし普及するだろうね
海外では

710
デフォルトの名無しさん[sage]   投稿日:2017/01/12 22:53:57  ID:XIu+56Iq.net
静的型でポータブルでオールインワンって他にないからな
Goの代わりくらいにはなれるかもね

711
デフォルトの名無しさん[]   投稿日:2017/01/12 23:10:57  ID:xSuUU/8s.net(2)
>708
VisualStudioも無料になったら
本気で普及し始めると思う

あと、ザマリンの導入がもうちょっと
解りやすくなったら

712
デフォルトの名無しさん[sage]   投稿日:2017/01/12 23:45:09  ID:vtJ2CftH.net
>705
ならないでしょ
VBが>697の言う仕様だけど、そんなことにはなってない

713
デフォルトの名無しさん[sage]   投稿日:2017/01/13 07:15:03  ID:hmsqUFNG.net
>700
じゃあ俺の自作言語が最強だな
変数ないけど

714
デフォルトの名無しさん[sage]   投稿日:2017/01/14 08:53:21  ID:rv9Bkqpt.net(2)
C#にはヘッダーファイルがない。
クラスはC++と全然書き方が違う。
Cの派生言語のように見せかけた、中身はVBと同じ言語だ。
こんなもんでVBよりC#のほうが偉いはずがない。
コメント1件

715
デフォルトの名無しさん[sage]   投稿日:2017/01/14 09:02:17  ID:exppjyX7.net
相談スレでは相談しろ

716
デフォルトの名無しさん[sage]   投稿日:2017/01/14 10:10:34  ID:H4kTcvBH.net
VBよりC#が偉い理由はラムダが書きやすいのと直感に反する余計な事をしないってとこだな

717
デフォルトの名無しさん[sage]   投稿日:2017/01/14 11:52:35  ID:C/3o1CZS.net
一つの言語にやたらこだわるのは無能だからだろうな
>714
お前がバカなのはこのスレでよくわかったから、もう書かなくていいぞ
コメント1件

718
デフォルトの名無しさん[sage]   投稿日:2017/01/14 12:41:03  ID:DO73KmNH.net
これ以上カスに触るなら二郎コピペでこのスレ埋めてやる

719
デフォルトの名無しさん[sage]   投稿日:2017/01/14 16:48:32  ID:OgQ0DzZw.net(2)
おう、はよ埋めろや

720
デフォルトの名無しさん[sage]   投稿日:2017/01/14 20:18:03  ID:rv9Bkqpt.net(2)
>717 どうバカなのかどうせまともな説明できないくせに黙ってろよ

721
デフォルトの名無しさん[sage]   投稿日:2017/01/14 20:41:22  ID:JD3u+vgV.net(2)
スレタイ読めないのはバカだろ

722
デフォルトの名無しさん[sage]   投稿日:2017/01/14 20:43:39  ID:dtN7VWLV.net
むしろ埋めてもらった方がワッチョイで立て直せるし、いいかも
ネタも無いしいいだろって住み着くオカシイ奴ってどこにでもいるから

723
デフォルトの名無しさん[sage]   投稿日:2017/01/14 20:44:39  ID:adzUep7y.net(2)
ワッチョイなんてつけるまでもなく一人だからスルーしとけばよくね

724
デフォルトの名無しさん[sage]   投稿日:2017/01/14 20:45:16  ID:JD3u+vgV.net(2)
ワッチョイつけりゃ一週間は登録の手間が省ける

725
デフォルトの名無しさん[sage]   投稿日:2017/01/14 20:58:45  ID:adzUep7y.net(2)
大きいコピペの連投とか見づらいもの以外でも細かくNG入れてる人も居るのか
自分が使ってないから登録のことは考えてなかったわすまんな

726
デフォルトの名無しさん[sage]   投稿日:2017/01/14 22:03:54  ID:4p1bTVm6.net
それ以上C#スレ荒らす気ならVBスレ荒らすぞ

727
デフォルトの名無しさん[sage]   投稿日:2017/01/14 23:42:52  ID:OgQ0DzZw.net(2)
おう、はよ荒らせや

728
デフォルトの名無しさん[sage]   投稿日:2017/01/15 06:06:15  ID:N0spz/4F.net
異常な嫌悪してるやつ自身が荒らしとる自覚もてよ

729
デフォルトの名無しさん[sage]   投稿日:2017/01/16 18:22:07  ID:h1Gia5xw.net
俺も色々やってみたほうが良いと思うけど、PHPだけは専門にやってる人以外は危ないからやらないほうが良いかもな

730
デフォルトの名無しさん[sage]   投稿日:2017/01/17 17:50:34  ID:cbxfPpyL.net
ASPもPHPも言語ではなくフレームワークみたいな認識。

731
デフォルトの名無しさん[]   投稿日:2017/01/17 18:27:11  ID:VcB0QsgY.net
web系全般そんなもんじゃね?

732
デフォルトの名無しさん[sage]   投稿日:2017/01/17 18:38:01  ID:TNo9RdVK.net
web系以外のも同じだな

733
デフォルトの名無しさん[sage]   投稿日:2017/01/19 02:27:36  ID:zUZJ1T5E.net(15)
VBのLike演算子が必要なので、C#という選択肢にならない。

InputBoxも使えるのがVB。
C#人は、C#使いながら、Microsoft.VisualBasic名前空間のライブラリを使ったりもしないのかな。
コメント1件

734
デフォルトの名無しさん[sage]   投稿日:2017/01/19 03:12:26  ID:mclODO+O.net(7)
.NET標準になくてMicrosoft.VisualBasic名前空間にしかないライブラリ機能ってあるの?
コメント1件


735
デフォルトの名無しさん[sage]   投稿日:2017/01/19 03:16:26  ID:HUduSCHL.net
>734
CSV絡みでTextFieldParserとか
CsvHelperあるしもう誰も使わんと思うけど

736
デフォルトの名無しさん[sage]   投稿日:2017/01/19 03:28:23  ID:zUZJ1T5E.net(15)
ならばInputBoxの代わりになる.NET標準を教えてほしい。
Like演算子の代わりなるものもあるんかいな。正規表現まで持ち出するのは一手間だし。
コメント1件

737
デフォルトの名無しさん[sage]   投稿日:2017/01/19 03:33:28  ID:zUZJ1T5E.net(15)
 マネージ拡張C++でTextFieldParser使おうとして、clコマンドでコンパイルしようとしたら、
なぜかコンパイラが異常終了したことがあった。VB.NETでないとexeが作れなかった。当時はC#
は勉強不足だったから、それでは試してない。

738
デフォルトの名無しさん[sage]   投稿日:2017/01/19 04:14:58  ID:LVeuyfqa.net(6)

739
デフォルトの名無しさん[sage]   投稿日:2017/01/19 04:20:46  ID:LVeuyfqa.net(6)
>736
inputBoxが必要でVBにしがみつく理由がわからない
そんなform一瞬で作れるだろ

740
デフォルトの名無しさん[sage]   投稿日:2017/01/19 04:30:24  ID:zUZJ1T5E.net(15)
InputBoxは、すでに用意されているので、正に一瞬だが、互換Formを作るのは少なくとも1分はかかる。
VBならこんなものを自作して管理する煩わしさもなく、作成済みのフォームをプロジェクトに追加する
必要もない。
コメント2件

741
デフォルトの名無しさん[sage]   投稿日:2017/01/19 04:39:21  ID:LVeuyfqa.net(6)
>740
じゃあ逆に聞くけど、VBで.NET Core使ってんの?
コメント1件

742
デフォルトの名無しさん[sage]   投稿日:2017/01/19 04:44:31  ID:zUZJ1T5E.net(15)
>741 そんなものは知らん。だがVB.NETでInputBox利用すればそれを利用する必要もない。
コメント1件

743
デフォルトの名無しさん[sage]   投稿日:2017/01/19 04:46:13  ID:LVeuyfqa.net(6)
>742
…やっぱ触っちゃいけない人だった

744
デフォルトの名無しさん[sage]   投稿日:2017/01/19 04:47:52  ID:2A4qP/TB.net
>740
https://blogs.msdn.microsoft.com/dotnet/2017/01/18/the-week-in-net-on-net-with...

.NETの勉強しててこれのF#以外をVBで試そうと思ったら、かなり大変じゃない?というかできるの?
コメント2件

745
デフォルトの名無しさん[sage]   投稿日:2017/01/19 04:59:14  ID:zUZJ1T5E.net(15)
>744 何のことについて書いてあるのかね。仮に日本語であったとしても、事前に何の説明もなくいきなり読んで理解できるかも疑問だ。
コメント1件

746
デフォルトの名無しさん[sage]   投稿日:2017/01/19 05:04:07  ID:bDIUTWZ4.net(2)
>745
英語も読めないなら消えな

747
デフォルトの名無しさん[sage]   投稿日:2017/01/19 05:11:17  ID:zUZJ1T5E.net(15)
事前に何の説明もなく、話の背景や前提もわからず学術論文とかを急に読まされても、専門家でもない限り日本語でも理解できるはずがない。
専門家でも、論文全体ではなく、ある一部分だけを抜き出して、それが何の論文から引用したかも何かも示されなければ、理解できるとは限らないだろう。
コメント2件

748
デフォルトの名無しさん[sage]   投稿日:2017/01/19 05:23:49  ID:bDIUTWZ4.net(2)
>747
学術論文の話なんかしてねーよ
.NETのtipsがいろいろとまとめられてるけど、どうやってそれをVBに読み換えてんの?

749
デフォルトの名無しさん[sage]   投稿日:2017/01/19 05:25:18  ID:LVeuyfqa.net(6)
>747
ただのブログだろバカ

750
デフォルトの名無しさん[sage]   投稿日:2017/01/19 05:26:05  ID:mclODO+O.net(7)
英語とはいえただのブログ記事を学術論文て

751
デフォルトの名無しさん[sage]   投稿日:2017/01/19 05:31:36  ID:mclODO+O.net(7)
ていうかTerrariaってC#/XNAで書かれてたんだ…その記事で初めて知ったわ

752
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:06:50  ID:zUZJ1T5E.net(15)
学術論文は例えばの話だろが。
いきなり長文を出されて、どこの何をどのようにして読むのか何も示さず、それをどうしてもらいたいのかも
説明がないと困るだろ。
コメント1件

753
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:10:42  ID:JVh2O255.net(3)
>752
説明してるだろVB脳
コメント1件

754
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:16:44  ID:zUZJ1T5E.net(15)
このリンク先ページに示されてるC#のプログラムコードをVBに読み替える、あるいはVB用にコードを作り替える
のが大変ではないか、またはできるのか、あるいはその前に読み替えもできるのかを聞きたいのかね。
コメント2件

755
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:18:51  ID:zUZJ1T5E.net(15)
>753 わかるように説明しろよ

756
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:21:00  ID:JVh2O255.net(3)
>754
仕方ないからその中のこれだけでいいよ
http://www.codemag.com/Article/1701061

これVBでやってみ
コメント1件

757
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:21:30  ID:mclODO+O.net(7)
>754
最初からVBじゃなくてC#使ってれば何も悩まず書いてあるのをコピペして使えるよねって話じゃねえの

758
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:21:31  ID:zUZJ1T5E.net(15)
C#の技術力以前に人格をどうにかしろよ。
バカ扱いすれば自分が偉くて高い立場だとでも思ってるのかね。
コメント1件

759
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:25:06  ID:zUZJ1T5E.net(15)
>756 仕方がないからこれだけでいいというから、分量を大幅に絞り込んだものかと思えば、これも大量にあるじゃないか。
コメント1件

760
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:29:21  ID:JVh2O255.net(3)
>759
少し見たらわかると思うけど、これ極々基本的なことしかやってないよ?むしろこれができないならVBには無理だわ

761
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:29:25  ID:BbnbZdnl.net
VBやると頭がおかしくなるということがよくわかった
コメント1件

762
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:31:34  ID:LVeuyfqa.net(6)
そもそもVBなんて、まだ.NET Core1.0ですら正式対応してないからな

763
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:34:19  ID:mclODO+O.net(7)
ID:zUZJ1T5Eが頭おかしくても、VB.NETのことは嫌いにならないでねっ!
コメント1件

764
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:38:41  ID:zUZJ1T5E.net(15)
>761 >763
お前の頭がおかしいから、他人の頭がおかしいと思い込んでるだけだ。

765
デフォルトの名無しさん[sage]   投稿日:2017/01/19 06:52:09  ID:zUZJ1T5E.net(15)
自分の主張を正当化できないから、相手をバカ扱いしてごまかすだけか。
コメント1件

766
デフォルトの名無しさん[sage]   投稿日:2017/01/19 07:07:47  ID:krZQnAr8.net
>765
vb.netは自分も嫌いじゃないけど
ここはスレ違いと認識してそろそろやめませんか?
コメント1件

767
デフォルトの名無しさん[sage]   投稿日:2017/01/19 07:09:56  ID:EGANxKDd.net
伸びてると思えばまたVBネタかぁ
VBといえば
Microsoft.VisualBasic.FileIO.FileSystem.DeleteFile()
は便利だよね。よく使う
コメント1件

768
デフォルトの名無しさん[sage]   投稿日:2017/01/19 07:30:09  ID:zUZJ1T5E.net(15)
>766
 vbにはない有利なところ、切り替える価値を探ってるんだけどな。vbだけの有利
と思えるところが.netで代替策があるならそれもまず知る必要がある。その準備
なしで、漠然とC#使うだけなら意味がないし。そのためにC#を知るための話題だか
らな。
コメント1件

769
デフォルトの名無しさん[sage]   投稿日:2017/01/19 07:38:27  ID:Xmxeyump.net(3)
>768
知ろうとしてないだろ

770
デフォルトの名無しさん[sage]   投稿日:2017/01/19 07:42:49  ID:b0abdje/.net
俺もN-BASIC世代だからVB好き

771
デフォルトの名無しさん[sage]   投稿日:2017/01/19 07:55:09  ID:mclODO+O.net(7)
>vbにはない有利なところ、切り替える価値
なんて、>744をはじめとする最先端のコード資源がほぼコピペだけで使えるってだけで十分じゃん
コメント1件

772
デフォルトの名無しさん[sage]   投稿日:2017/01/19 07:57:11  ID:q3hudiC7.net
行番号のないBASICは所詮偽モノ。インタプリタでもねーし。
BASICのいいところはすべて失われた。

773
デフォルトの名無しさん[]   投稿日:2017/01/19 07:59:57  ID:Ntb3+hAE.net(2)
.NET Coreに関する和書かいいサイトってある?
コメント1件

774
デフォルトの名無しさん[sage]   投稿日:2017/01/19 08:00:00  ID:Xmxeyump.net(3)
>771
VBでも同様の処理を書けるならまだしも、そもそもフレームワークでサポートされてないからな

775
デフォルトの名無しさん[sage]   投稿日:2017/01/19 08:02:10  ID:Xmxeyump.net(3)
>773
体系的にまとめられてるのは見たことないから、素直に公式のdocs読むのが一番手っ取り早いよ
まあVisual Studio2017が出た時点で大幅に修正が入るからね
コメント1件

776
デフォルトの名無しさん[sage]   投稿日:2017/01/19 08:29:16  ID:9oxUjj4Y.net
急に伸びてると思ったらこれかー

777
デフォルトの名無しさん[sage]   投稿日:2017/01/19 09:22:15  ID:X4NEWeGC.net
>758
相対的にそうなるね

778
デフォルトの名無しさん[sage]   投稿日:2017/01/19 13:01:19  ID:0ZEPc8s2.net
MODIを使って並列処理をすると、スレッド数が論理コア数では固まるが物理コア数だと動いてしまう
原因わかりますか?

779
デフォルトの名無しさん[]   投稿日:2017/01/19 16:18:48  ID:C+ssGhBJ.net
またVBガイジかよ

780
デフォルトの名無しさん[sage]   投稿日:2017/01/19 18:03:11  ID:t+KfFfyK.net
コピペって・・・。そのままコピーするだけか。
普通はコードを理解して、自分の作る目的のプログラムに合わせて必要変更をするだろうが。
ただのコピペ厨の自称プログラマーかいな。
コメント1件

781
デフォルトの名無しさん[sage]   投稿日:2017/01/19 18:10:34  ID:yUxFIvB5.net
真っ赤だな

782
デフォルトの名無しさん[sage]   投稿日:2017/01/19 19:01:51  ID:Ccs4bPhG.net
>767
ワイルドカードが使えるから便利ってこと?
コメント1件

783
デフォルトの名無しさん[sage]   投稿日:2017/01/19 19:56:33  ID:mclODO+O.net(7)
>780
もちろん必要があれば読むよ
でも他人がもう書いてるコードなんて可能な限り自分で書き直さないで済むほうがいいんだよ
そもそもライブラリってそういうもんだろ

784
デフォルトの名無しさん[]   投稿日:2017/01/19 20:37:07  ID:Ntb3+hAE.net(2)
>775
ありがとう
Core始めてみてEntity Framework使おうとしたら
dotnet efのコマンドが通らなくていきなりくじけたでござる
コメント1件

785
デフォルトの名無しさん[sage]   投稿日:2017/01/19 20:45:51  ID:xEZd6WIv.net
>784
Entity Framework Coreは、まだOracleが正式にサポートされてないのが辛いね

786
デフォルトの名無しさん[sage]   投稿日:2017/01/20 03:17:40  ID:mnoV+t38.net
>782
ゴミ箱に入れられるからでしょ

787
デフォルトの名無しさん[sage]   投稿日:2017/01/20 07:11:21  ID:1c/0Zcpc.net(2)
君らcoreは何に使うん?

788
デフォルトの名無しさん[sage]   投稿日:2017/01/20 07:26:59  ID:73D0Dll6.net
何にもクソもCoreはLinuxサーバーでWebサイトを運用するためのもんだよ
Windowsで運用とか苦痛でしかないし
コメント2件

789
デフォルトの名無しさん[sage]   投稿日:2017/01/20 07:30:05  ID:1c/0Zcpc.net(2)
>788
iis便利やん。何が苦痛なん?

790
デフォルトの名無しさん[sage]   投稿日:2017/01/20 07:32:52  ID:Bg1tCMvm.net
Linuxの方が苦痛だよ
システムやアプリの設定方法に統一感なくてわかりにくいし
SeLinuxとか鬱陶しいし
コマンドへのIOが文字列とか前時代的だし
スイッチも一文字じゃ何やってるサッパリかわからん

791
デフォルトの名無しさん[sage]   投稿日:2017/01/20 08:16:51  ID:uaOwYInA.net(2)
>788
APIも知らないのかな?ASP.NETにおけるWebサイトとWebアプリの違いはわかってるかい?
コメント1件

792
デフォルトの名無しさん[sage]   投稿日:2017/01/20 08:43:19  ID:kuRbEAeZ.net
>791
さすがにその言いがかりは無理があるだろ
Webサイトと聞いてASP.NET用語のWebサイトのことだと思っちゃう人は相当特殊だということを自覚したほうがいいよ
コメント1件

793
デフォルトの名無しさん[sage]   投稿日:2017/01/20 10:28:22  ID:l+Qn6xw4.net
.NET Core 自体には 1 つのアプリケーション モデル (コンソール アプリ) が含まれており、ツール、ローカル サービス、およびテキストベースのゲームに便利です。

次のような機能を拡張するために、.NET Core の上に追加のアプリケーション モデルがビルドされています。
ASP.NET Core
Windows 10 ユニバーサル Windows プラットフォーム (UWP)
Xamarin.Forms

https://docs.microsoft.com/ja-jp/dotnet/articles/core/

794
デフォルトの名無しさん[sage]   投稿日:2017/01/20 11:07:17  ID:uaOwYInA.net(2)
>792
単に無知なやつを茶化してるだけだろ

795
デフォルトの名無しさん[]   投稿日:2017/01/21 12:06:38  ID:qCdjOj58.net
C#を勉強してるのですが、無償環境の為インストーラーの作成が出来ません
動作環境を知ることができる特定の相手のみアプリケーションを配布するのにインストーラーが必要なのはどういった場合になるでしょうか
コメント1件

796
デフォルトの名無しさん[sage]   投稿日:2017/01/21 12:42:00  ID:wnvzR/a/.net
>795
どんな無償環境?
無償環境だけが条件ならVisual Studio Community 2015 でインストーラーを作れるけど
コメント1件

797
デフォルトの名無しさん[sage]   投稿日:2017/01/21 13:15:17  ID:3w6w5xSi.net
翻訳ソフト使ったのかな

798
デフォルトの名無しさん[]   投稿日:2017/01/21 13:26:11  ID:DU5/M7G9.net
>796
ありがとう。調べてみたら
Installer projectっていうのがあるんだね

799
デフォルトの名無しさん[sage]   投稿日:2017/01/22 05:11:30  ID:SRnP25ta.net(2)
コードはいじれないdllにClickイベントがあって

private void OnClick(object sender, DeviceGestureEventArgs e)
{
  // いろいろ処理
}

Clickイベント自体はpublicです。
Clickイベントをどうにかしてこの いろいろ処理 を無効にできますか?
button.Click -= OnClick; みたいなことがやりたいのですが。
コメント2件

800
デフォルトの名無しさん[sage]   投稿日:2017/01/22 08:34:45  ID:6kGfbYFS.net
HogeクラスにClickとOnclickがあって、イベントの型がFugaEventHandlerとして
var m = hoge.GetType().GetMethod("OnClick", BindingFlags.NonPublic | BindingFlags.Instance);
var h = (FugaEventHandler)m.CreateDelegate(typeof(FugaEventHandler), hoge);
hoge.Click -= h;
コメント1件

801
デフォルトの名無しさん[sage]   投稿日:2017/01/22 09:43:23  ID:phG9hQKS.net
>799
継承して OnClick (>799に書いてあるものではなくてこれhttps://msdn.microsoft.com/en-us/library/system.windows.forms.control.on...(v=vs.110).aspx)
をオーバーライドして潰せばClickイベントは発生しなくなる

802
デフォルトの名無しさん[sage]   投稿日:2017/01/22 10:20:22  ID:SRnP25ta.net(2)
>800-801
ありがとうございます。
いけそうです。

803
デフォルトの名無しさん[sage]   投稿日:2017/01/22 23:41:02  ID:B37Hjrvb.net
2GBを超えるバイナリファイルをbyte配列に取り込もうとしているのですがうまくいきません

byte[] bs = System.IO.File.ReadAllBytes(file_path);
↑これだと2GB未満にしろといわれます

できるだけ分割したくないのですが方法はありますか?
コメント2件

804
デフォルトの名無しさん[sage]   投稿日:2017/01/22 23:47:39  ID:5CC/gWkn.net
[] ←これが2Gまでじゃないかな
コメント1件

805
デフォルトの名無しさん[sage]   投稿日:2017/01/22 23:56:07  ID:f0ZpZ2O5.net
C#って2GiBの壁も超えられないクソ言語なの!?
コメント1件

806
デフォルトの名無しさん[]   投稿日:2017/01/22 23:58:32  ID:2orbyh8h.net

807
デフォルトの名無しさん[sage]   投稿日:2017/01/22 23:59:03  ID:7Uo1H//c.net
>803
配列の長さは仕様上Int32なのでどうしようもない
コメント1件

808
デフォルトの名無しさん[sage]   投稿日:2017/01/23 00:06:09  ID:dQYVkXPH.net

809
デフォルトの名無しさん[sage]   投稿日:2017/01/23 00:14:05  ID:iJ5kh901.net
2GBってネタじゃなくて真面目に言ってるのかw
少なくとも現時点では富豪的過ぎる気がするんだけどw
ムーアの法則とっくに終わってるし将来的にも疑問だなあw

まあ現時点でも動作環境を限定できるならそれほど非現実な数字でもないんだろうけど

810
デフォルトの名無しさん[sage]   投稿日:2017/01/23 00:41:33  ID:ft2qOqRV.net(2)
803じゃないけど、

10〜20個くらいのプロパティを持つクラス(ほとんどstring型)の、数百万個単位のインスタンスを処理したい
(現在百数十万個だがデータは日々増えていて、将来的には500万個以上のデータを扱いたい)
データ追加時を除けば1つのデータのプロパティを書き換えることはあまりない
全データを対象に集計や抽出をバリバリやる

今はこのクラスのジェネリックリストでメモリ上に保持していて、XmlSerializerとStreamReader/Writerでロード/セーブしてるけど、
500MB以上のファイル読み書きに十秒単位で時間が掛かるようになってきてしまい、使用メモリも多いときは1GBに届きそうになってきた

個人のPCでも実現出来る範囲で何か工夫して軽量化するとすれば、どういうやり方があるだろうか
データベースを使うと却って重くなる?
コメント2件

811
デフォルトの名無しさん[]   投稿日:2017/01/23 01:00:04  ID:AKblCqbZ.net
DB使え

812
デフォルトの名無しさん[sage]   投稿日:2017/01/23 01:17:39  ID:ft2qOqRV.net(2)
やはりデータベースか…
この規模のデータでデータベースを使うなら何がいいですかね?
コメント2件

813
デフォルトの名無しさん[sage]   投稿日:2017/01/23 05:19:54  ID:3LnhEFNW.net(2)
>810
むしろそんなになるまでデータベースを使わない選択をしてたのが信じられんわ

814
デフォルトの名無しさん[sage]   投稿日:2017/01/23 07:25:59  ID:4eKNVnEB.net(2)
>812
postgresかな
高性能で、ライセンスが緩く、比較的ローカルでも利用されることの多い非常に有名なDBMSだ
広く配布するようなものではなさそうに見えるから、
SQLiteみたいな組込型に拘る必要はないと思う

815
デフォルトの名無しさん[sage]   投稿日:2017/01/23 08:36:41  ID:mc6Hyr1K.net
>812
SQL-SERVER LocaDB でいいんじゃね?
Visual Studio から操作できるし
他の端末からも参照したいって言われたら SQL-SERVER Express に移行すればいいし
もっとでかくなったら Standard や DataCenter Edition あるし
コメント1件

816
803[]   投稿日:2017/01/23 11:57:28  ID:Enhoy4E3.net
>804
>805
>807
>808
レスありがとうございます
<gcAllowVeryLargeObjects> を有効にしてもbyte配列自体が2GB超えて作ることができないため
それそも不可能ということでよろしいですか?
その場合、int32などに配列作りなおしたいと思います
コメント3件

817
デフォルトの名無しさん[sage]   投稿日:2017/01/23 12:04:12  ID:uKeJP+/b.net(2)
byte[]としては無理
byte*にするなら可能

818
デフォルトの名無しさん[sage]   投稿日:2017/01/23 13:01:08  ID:GKpZ78C8.net
>816
バイナリファイルの編集が目的ならreader/writer使えば良いんじゃないの
コメント1件

819
デフォルトの名無しさん[sage]   投稿日:2017/01/23 21:01:33  ID:bI3M8V88.net
>816
ビルドターゲットはx64になってる?
AnyCPUだと最近のは32bitを優先がデフォルト設定だから上手く行かないかも。こっちを直しても良いけど。
いずれにせよ、64bit環境は必須。
コメント1件

820
デフォルトの名無しさん[sage]   投稿日:2017/01/23 21:16:01  ID:4O+fDoKV.net(2)
>815
SQL Server Expressは10GB制限があるから話にならんよ
DBまでわざわざMSにロックインとかアホらしいし
コメント3件

821
デフォルトの名無しさん[sage]   投稿日:2017/01/23 21:55:33  ID:3LnhEFNW.net(2)
>820
じゃあ何がおすすめなの?教えて先生!

822
デフォルトの名無しさん[sage]   投稿日:2017/01/23 21:58:50  ID:hTicmAdc.net
postgreオヌヌメ

823
デフォルトの名無しさん[sage]   投稿日:2017/01/23 21:59:47  ID:LuyUsAN1.net
>820
10GBも有れば十分だと思う
コメント1件

824
デフォルトの名無しさん[sage]   投稿日:2017/01/23 22:29:35  ID:4O+fDoKV.net(2)
>823
既に500MBあってまだまだ増えるって言ってるのに何を根拠に十分だというのか
いくつも一時テーブル作ったりしたらカツカツだろ
DBってそれぞれに結構癖屋独特のノウハウがあるから、後で問題が出てから乗り換えるより最初から一本に決めたほうがいい
MSに金払う気がないならpostgresにしとけ
コメント2件

825
デフォルトの名無しさん[sage]   投稿日:2017/01/23 22:53:34  ID:uKeJP+/b.net(2)
>824
>(現在百数十万個だがデータは日々増えていて、将来的には500万個以上のデータを扱いたい)
> XmlSerializerとStreamReader/Writerでロード/セーブしてるけど、
> 500MB以上のファイル読み書きに十秒単位で時間が掛かる

今のデータで考えると10GBには百数十万個の20倍
今のデータはxml
どんな根拠で10GBが不十分だというのか逆に聞きたい


826
デフォルトの名無しさん[sage]   投稿日:2017/01/23 22:59:20  ID:UsEI+ALW.net
>824
理由もなしにpostgresとな

827
デフォルトの名無しさん[sage]   投稿日:2017/01/23 23:08:01  ID:wWnQplUy.net
話は変わるけど、LocalDBをOS標準にしてくれると嬉しいんだけどな
コメント1件

828
デフォルトの名無しさん[]   投稿日:2017/01/23 23:15:06  ID:wcSM/s0i.net
いまだにPOCOの概念がよくわからないんだけど、POCOと対になるものと併せて誰か教えてクレメンス
コメント1件

829
デフォルトの名無しさん[sage]   投稿日:2017/01/23 23:19:31  ID:4eKNVnEB.net(2)
>828
わかりやすいのは型付データセットだな
強制された基底クラスや大量の自動生成コードにクソミソに汚されたクラスのことだ

830
デフォルトの名無しさん[sage]   投稿日:2017/01/23 23:25:33  ID:8CargB7Y.net
DBはころころ変わり続けるのはもうやめてほしいな

831
デフォルトの名無しさん[sage]   投稿日:2017/01/24 01:13:39  ID:JiOoKhp+.net
>816
GetValueなら64bitを指定できはする
64bitなら一応確保できるのかなぁ

だけど、そもそも2GB超の連続領域を安定して確保できるかは不安
メモリマップとかも検討したら?
コメント1件

832
デフォルトの名無しさん[sage]   投稿日:2017/01/24 08:39:50  ID:HHZbO6eg.net(4)
>820
> SQL Server Expressは10GB制限があるから話にならんよ
生の XML を格納する訳じゃないだろうしデータ圧縮もできるし話にならないのは君のちんけな知識じゃないかな? w
PostgreSQL もいいと思うけどちょっとしたデータの確認とかを Visual Studio でできる SQL-Server の便利さは捨てがたい

833
デフォルトの名無しさん[sage]   投稿日:2017/01/24 08:42:05  ID:JKcqAdCJ.net
その程度の便利さならどうでもいいな
GUIの管理ツールを使えば済む話
コメント1件

834
デフォルトの名無しさん[sage]   投稿日:2017/01/24 08:42:56  ID:HHZbO6eg.net(4)
>827
内部的には SQL-Server のプロセス動いてるから大多数の人には邪魔にしかならんと思う
コメント1件

835
デフォルトの名無しさん[sage]   投稿日:2017/01/24 08:46:39  ID:ghFC1Ntr.net
sqlserverってselectでもデッドロックするからヤダ
コメント1件

836
デフォルトの名無しさん[sage]   投稿日:2017/01/24 10:25:32  ID:tgh5wy6g.net
>834
Vistaか7あたりから、ファイルシステムがSQL Serverベースになるという話があったよな
コメント2件

837
デフォルトの名無しさん[sage]   投稿日:2017/01/24 10:52:48  ID:g9KGWoah.net
>835
ちょっとはググれよ

838
デフォルトの名無しさん[sage]   投稿日:2017/01/24 11:02:46  ID:tjYeiy24.net
OSにDBもたせるとかまたセキュリティホールの温床やん

無駄な機能は悪

839
デフォルトの名無しさん[sage]   投稿日:2017/01/24 11:05:54  ID:4uwrNeCv.net
DB=セキュリティホールときたかw

840
デフォルトの名無しさん[sage]   投稿日:2017/01/24 11:23:21  ID:1ohBhH6C.net
痴性溢れる御意見ですね

841
デフォルトの名無しさん[sage]   投稿日:2017/01/24 11:25:32  ID:b/7/gkXo.net(2)
たしかにレジストリも一種のDBでセキュリティホールの温床だから
OSで各種設定を保持するのはやめよう(名案)

842
デフォルトの名無しさん[sage]   投稿日:2017/01/24 11:28:18  ID:nhx4+y/y.net
>836
頓挫しちゃったのが勿体無い

843
デフォルトの名無しさん[sage]   投稿日:2017/01/24 11:47:35  ID:HE6oytLN.net
ゲイツ3世さんがずいぶん入れ込んでたみたいだったけど、正直俺にはアレのメリットが
さっぱり理解できんかった。

844
デフォルトの名無しさん[sage]   投稿日:2017/01/24 12:20:30  ID:b/7/gkXo.net(2)
ツリー式のファイル管理はもう人が把握できる限界に近づいてると思うし
もっとリッチなタグ情報をファイルシステムで持たせて
OSの検索機能に統合する思想は支持するよ

845
デフォルトの名無しさん[sage]   投稿日:2017/01/24 12:43:39  ID:HHZbO6eg.net(4)
>833
> GUIの管理ツールを使えば済む話
それをいちいちインストールするのが面倒だって話

846
デフォルトの名無しさん[sage]   投稿日:2017/01/24 12:47:25  ID:HHZbO6eg.net(4)
>836
WinFS か
いい考え方だと思うがちょっと構想が壮大すぎたな

847
デフォルトの名無しさん[sage]   投稿日:2017/01/24 13:11:04  ID:VXWwcrkC.net(2)
ゲイツは過去にXMLは使い物にならないと言った。

WinFS、WPF・・・ゲイツはやはり生粋のプログラマである。
コメント1件

848
デフォルトの名無しさん[sage]   投稿日:2017/01/24 15:21:09  ID:iRQG5obN.net
WPFでXAMLにGoサインだしておいてよく言う

849
デフォルトの名無しさん[sage]   投稿日:2017/01/24 15:39:07  ID:VXWwcrkC.net(2)
ゲイツはVista以降はタッチしていない。

850
デフォルトの名無しさん[sage]   投稿日:2017/01/25 03:10:02  ID:WHRwTArY.net
>847
全部読まないと一部分が取り出せないってのがデータが多くなると致命的だよね

851
デフォルトの名無しさん[sage]   投稿日:2017/01/25 07:15:37  ID:fntd/u0o.net
そこまででかいならDB使えってことでしょ

852
デフォルトの名無しさん[sage]   投稿日:2017/01/25 11:50:15  ID:3NBpStvW.net
JAVAやVB6、WPF、LINQが遅くないと暴れてるアホと同じ臭いがする。
機械語NativeとそうでないPGとに根本的な認識の断絶がある。
コメント1件

853
デフォルトの名無しさん[sage]   投稿日:2017/01/25 11:53:43  ID:2idQLFdG.net
悪いけど暴れてるのは君の方だと思うw
コメント2件

854
デフォルトの名無しさん[sage]   投稿日:2017/01/25 11:59:10  ID:uJriqNlz.net(2)
同感w
コメント1件

855
デフォルトの名無しさん[sage]   投稿日:2017/01/25 12:27:26  ID:eMOc+Lms.net
もう一票
時代について行けてないお爺ちゃん頑張って
コメント1件

856
デフォルトの名無しさん[sage]   投稿日:2017/01/25 12:38:38  ID:obtTERoQ.net
そもそもVB6は割りと早かっただろうに
C#に移行するときにモッサリ感でイライラした人も多かったはずだが

857
デフォルトの名無しさん[sage]   投稿日:2017/01/25 14:12:06  ID:LppA2Fcl.net
C#も実行時は機械語だし、VB6なんて完全に機械語だろ
コメント1件

858
デフォルトの名無しさん[sage]   投稿日:2017/01/25 14:18:51  ID:7AoQtGUX.net
>855
+1
>854
+1
>853
+1
>852
-1

859
デフォルトの名無しさん[]   投稿日:2017/01/25 16:32:03  ID:ABI1PFb6.net
ラムダガイジ、LINQガイジ、staticおじさん、VBガイジは巣に帰れ

860
デフォルトの名無しさん[sage]   投稿日:2017/01/25 19:30:14  ID:/wdbuGDr.net(3)
俺も>853にもう一票。
ただそれ以前に暴れている奴がいないと思うが。

あとC#はnativeでは無くMSILだろ。そして必要十分な速度は出ていると思うよ。
DBについては、自前でDBモドキを作る位なら最初からDB使えって話だろ。
ただしOSは今のNTFS+検索用インデックス(現行システム)でいいと思うけどね。
大半は階層化で問題ないし、必要あればDBを動作させればいいだけ。
WPFは使ったこと無いが、中途半端なものを作るのではなく、
最初からHTMLにしとけばよかったと思う。
コメント1件

861
デフォルトの名無しさん[sage]   投稿日:2017/01/25 19:33:54  ID:G7Mt73tJ.net
>860
C#は実行時はネイティブだよ
Javaみたいなインタプリタとのハイブリッドとも違い、ほぼAOTな方式
コメント2件

862
デフォルトの名無しさん[sage]   投稿日:2017/01/25 19:34:38  ID:uJriqNlz.net(2)
>857が言ってるのはCPUに命令渡されるときは機械語だってような意味でしょw

863
デフォルトの名無しさん[sage]   投稿日:2017/01/25 20:00:27  ID:/wdbuGDr.net(3)
>861
JITと言えよ。話が余計におかしくなるだろ。
とはいえMonoは直接native吐けるようだが。
コメント1件

864
デフォルトの名無しさん[sage]   投稿日:2017/01/25 20:06:49  ID:a2fwv9ft.net
>863
.NETは起動時にコンパイルだから、JavaのHotSpotみたいなのが真のJITだとするなら実質的にはAOT寄りでしょ
あくまでコンパイルするタイミングの問題でしかないので、ngenや.NET Nativeみたいなのも技術的に難しくない
Cのソースを実行前にコンパイルしてるようなもんだ
コメント1件

865
デフォルトの名無しさん[sage]   投稿日:2017/01/25 21:03:29  ID:/wdbuGDr.net(3)
>864
所詮は言葉の定義だから争う意味はないんだが、
普通は「直接実行出来ない形式」(=MSIL)で配布され、
それを実行時(=CLR)に機械語に変換して実行するのなら、それはJITと言う。

MonoのAOTは見た目EXビットの対策用で、結果的にnativeが入手出来るが、それはJITより効率が悪い。
例えばJavaScript(V8)の場合は実行時にまず手抜きJITを行い、実行する。
そして何度も実行される部分だけ、最適化JITを行う。
最適化JITを最初から全面的に行わないのは、最適化にも時間がかかるから。
つまり、「JITコンパイル時間+実行時間」が最小になるように最適化している。
もちろん最適化JIT済みのnativeを吐くのも簡単なはずだが、必要ないから見たことはない。
Javaは知らんがHotJavaも同じようなコンセプトだったので、多分同じ。

結局、MonoのAOTは「常に最適化JIT」を全面的に行う分だけ効率が悪い。
ただしAOT済みのexeを配布/使用する場合はJIT時間分だけ効率がよくなる。
MonoはLinux等もターゲットにしているのでAOTが必要だが、
動的コードを実行出来る環境(windows)では必要なかった。
ここで.NET Nativeが出てきたところをも見ると、MSもJIT時間が気になっていたということではある。

.NET NativeならAOTと言っていい。
ただの.NET(MSIL)なら、やっぱりJITだよ。それは実行時(ダブルクリック以降)にコンパイルしている。
最初から全面最適化JITするという、頭の悪いJITを積んでいるだけでしかない。
ではC#は?というのはこの意味では質問が悪いが、
今のC#はMSILが主流だと思うが、
所詮大半はwindows/x86(x64)でしかないのでexeでも問題ないし、今後は変わるのかもね。

ちなみに.NET Nativeにしたら、難読化はかなり進むのかな?
コメント1件

866
デフォルトの名無しさん[sage]   投稿日:2017/01/26 02:07:47  ID:NrOKhjjD.net(4)
>865
技術が進歩したり、複合技を使うようになったから言及することにあんまり意味はないんだけどね

MSILで配布してインストーラでngenをかけるソフトとか、AndroidのArtの事前コンパイルを見ればAOTというのも間違いではない
コメント1件

867
デフォルトの名無しさん[sage]   投稿日:2017/01/26 07:09:13  ID:hf6GrTPo.net
今度は完全に論破しないと気がすまない奴が集まりだしたなぁ

868
デフォルトの名無しさん[sage]   投稿日:2017/01/26 09:22:35  ID:+HXQGO57.net
c#で出来たms製の製品って何がありますか?
コメント1件

869
デフォルトの名無しさん[sage]   投稿日:2017/01/26 09:47:45  ID:e+Zq8z+D.net
>868
Visual Studio
コメント1件

870
デフォルトの名無しさん[sage]   投稿日:2017/01/26 10:33:30  ID:MZPXqvXg.net
>869
devenv.exe
cl.exe
ml.exe
nmake.exe
link.exe
こういうの全部ネイティブなんだが、C#で作ってネイティブ化してるのか?w
コメント1件

871
デフォルトの名無しさん[sage]   投稿日:2017/01/26 11:30:14  ID:Bx3m0kqD.net
>870
例えばdevenv.exeとかファイルサイズが1MBすら無いけどそれだけでVS動いてんの?
コメント1件

872
デフォルトの名無しさん[sage]   投稿日:2017/01/26 12:08:47  ID:sD2fcvWW.net(2)
>871
何馬鹿なこと言ってるんだ?
今俺が起動してるVSだとntdll.dlljから数えて426モジュールロードされてるが、その中にはC#で作られてるのもあるよ
VSはVSで作られてるかもしれんが、VSはC#で作られてるとは言わないだろ
コメント1件

873
デフォルトの名無しさん[sage]   投稿日:2017/01/26 12:13:43  ID:ecr0NxNG.net
馬鹿はおめーだよ死ねガイジ

874
デフォルトの名無しさん[sage]   投稿日:2017/01/26 12:23:03  ID:A9+CgNOi.net
どうでもいいですよ

875
デフォルトの名無しさん[sage]   投稿日:2017/01/26 14:11:50  ID:+5gKaLQm.net
>872
>その中にはC#で作られてるのもあるよ
どのくらいの割合で?
コメント2件

876
デフォルトの名無しさん[sage]   投稿日:2017/01/26 14:51:13  ID:sD2fcvWW.net(2)
>875
このスレにいるならVSぐらい入れてるだろ。興味あるなら自分で数えろよ

877
デフォルトの名無しさん[sage]   投稿日:2017/01/26 15:46:52  ID:NrOKhjjD.net(4)
VSはWPF製

878
デフォルトの名無しさん[sage]   投稿日:2017/01/26 15:54:26  ID:mfu+uciH.net
ガワがWPFでネイティブツール群を呼び出しているならC#製と言っていいね

879
デフォルトの名無しさん[sage]   投稿日:2017/01/26 16:25:36  ID:eYmqMcR3.net
VS2010からWPFになって激重。
コメント1件

880
デフォルトの名無しさん[sage]   投稿日:2017/01/26 17:41:07  ID:Ofw1Wwb+.net(2)
SSD君登場

881
デフォルトの名無しさん[sage]   投稿日:2017/01/26 18:25:52  ID:BIlB42US.net(2)
"PrismUnityApplication" は名前空間 "using:Prism.Unity.Windows" に存在しません。

とエラー一覧に出るようになって

<prism:PrismUnityApplication

に波線が付くようになったんだけどどうすれば直りますか?
プログラムは何の問題もなく動きます。
コメント2件

882
デフォルトの名無しさん[sage]   投稿日:2017/01/26 18:38:59  ID:RbsnIhge.net
>879
逆でしょ
偶にVS2010使うと糞重くてイライラするぐらいなのに

883
デフォルトの名無しさん[]   投稿日:2017/01/26 20:12:45  ID:FrBndq/i.net
質問すみません
今MVCでEntityFrameworkの勉強中なんですけど、DisplayNameの属性で日本語指定すると文字化けするんですが何が原因と思われるでしょうか
コメント2件

884
デフォルトの名無しさん[sage]   投稿日:2017/01/26 20:39:43  ID:kmw2XayL.net(2)
>883
えーっと俺も経験あるような気がするんだが思い出せない。
どうにかしたら直ったと思う。
コメント1件

885
デフォルトの名無しさん[sage]   投稿日:2017/01/26 20:50:44  ID:Ofw1Wwb+.net(2)
>881
気にしない
xamlのコンパイラ統合は未だみたいだね
コメント1件

886
デフォルトの名無しさん[]   投稿日:2017/01/26 21:45:58  ID:3P/eAUHh.net
>884
ありがとうございます
そうですか。このあいだまでは確か普通に出来てたんですよね。。
プロジェクト変えたりweb.configでencoding書いてみてもダメでどうしたものかと

887
デフォルトの名無しさん[sage]   投稿日:2017/01/26 21:47:05  ID:He8RO7U3.net(2)
>866
何で君がAOTということにしたいのかよく分からんが、
俺は誤解の少ない言葉を使えと言っているだけ。
主流派がMSILならJITと言うべき。
主流派が君の言うようにnativeならAOTと言うべき。それだけ。
君がAOTだと言い張るのは自由だが、周りから見たら面倒な奴でしかない。

ただAOTは時間予算が潤沢であるところが本質的に異なる。
> しかし,AOT方式をいざ導入してみると,サイズの大きなアプリのインストールや,
> 一度に複数のアプリをアップデートするような場合にコンパイルに時間がかかり,
> 場合によっては20分程度かかるケースが存在していたようです。
> このインストール時間を問題と捉えて,
> Android NのARTでは,JIT方式をもう一度使うことになりました。
> これまでのAOT方式を止めてしまったというワケではなく,実行のタイミングが変わり,
> 端末がアイドル中かつ充電されている場合のみに変更されることになりました。
> http://gihyo.jp/lifestyle/clip/01/awt/201603/24
だから単純に持ってきた場合にはこういう事が起きる。
ちなみにngenも同様の仕組みは持っている。
> https://msdn.microsoft.com/ja-jp/library/6t9t5wcf(v=vs.110).aspx

最近思うのは○○言語スゲーという信者が多いこと。
C#はそういう馬鹿は比較的少ない感じだが、君がそうなら、それは止めた方がいい。
C#は開発速度を最適化した言語で、結果的に実行効率はC/C++より悪いし、よくなることはない。
これを踏まえた上で、そのアプリにとって最適な言語を選択すればいいだけのこと。
コメント1件

888
デフォルトの名無しさん[sage]   投稿日:2017/01/26 21:48:44  ID:6c1mJ3TJ.net(2)
>875
デバッガのホストのように、目的の性質上ネイティブでなければならない一部のものを除けばほぼ全て
VS2010のときに全面的にC#で作り直したらしいよ
VSはC#で書かれたマネージドアプリだと公言してるし
コメント1件

889
デフォルトの名無しさん[sage]   投稿日:2017/01/26 21:57:18  ID:6c1mJ3TJ.net(2)
>887
誤解の少ない言葉を使えと言いながら実行速度の話とJITをごっちゃにして不要な混乱を招くのはいかがなものか
原理的にはJITの方が実行時のプロファイルをヒントとして最適化ができる分だけ有利だ
あとは起動時間や実行時にコードを差し替えるコストとのトレードオフだが、
サーバーならそこは全く問題にならないので実際JavaのHotSpotなんか(あくまでサーバー用としてはだが)すごく高性能だよ
重い処理やらせると段階的に最適化されて速くなっていくのが目に見えて、最終的には素直に書いたC++を超えるケースもある
コメント2件

890
デフォルトの名無しさん[sage]   投稿日:2017/01/26 22:14:43  ID:kmw2XayL.net(2)
>883
ファイルのエンコードデングが関係してないか?
コメント1件

891
デフォルトの名無しさん[sage]   投稿日:2017/01/26 22:15:11  ID:BIlB42US.net(2)
>885
Blendで試したらエラーもなく、デザイナーも表示されたのでこれでしのぐことにします。

892
デフォルトの名無しさん[sage]   投稿日:2017/01/26 22:19:59  ID:vDjllkLc.net
>881
可也期待薄だが、俺の環境のxamlのトラブルは
https://social.msdn.microsoft.com/Forums/vstudio/ja-JP/f7541527-df77-4bd7-8458-...
の一番最後の方の解決法で何とかなった

こっちはblend関係だから望み薄だが、やっても害が出るものじゃないしよろしければどうぞ

893
デフォルトの名無しさん[sage]   投稿日:2017/01/26 22:28:27  ID:uLxLwJKu.net
>888
> VSはC#で書かれたマネージドアプリだと公言してるし
ソースある?

894
デフォルトの名無しさん[sage]   投稿日:2017/01/26 22:34:12  ID:He8RO7U3.net(2)
>889
つか、全体として何が言いたいのか分からない。

C#についてなら、俺は主流はMSILだと思っているから、JITと言う方が適切だと言っている。
俺の認識が間違いで、主流は既にnativeであれば、AOTという方が適切だ。
君がそう思っているのならそれでいい。

C#の方がC/C++よりも高速であれば、高速アプリは全てC#で開発されることになる。
実際は、高速アプリは全てC/C++で組まれてるだろ。これが現実。
速度差は仕様差から来ているから、今後ともこれは埋まらない。

> 最終的には素直に書いたC++を超えるケースもある
JA馬鹿も同じ事を言うのだが、探して見つけて喜んでいる時点でゴミ。
アプリの性質を考えて、適切な言語を選択すればいいだけ。
ただ現実的にGUIも含めて全部C/C++で組むのもだるいので、
NumPyが流行るのも分かるし、実際あのアプローチがいいと思うが。

いずれにしても、C#信者ならそれは止めておけ。
それぞれ得手不得手はある。それは当たり前の話。
万能言語があったらこんなに乱立しない。
コメント2件

895
デフォルトの名無しさん[sage]   投稿日:2017/01/26 22:54:19  ID:7sPtmcfc.net
長文ウゼエ

896
デフォルトの名無しさん[]   投稿日:2017/01/26 22:57:35  ID:SLW9Whol.net
速度はC++の方が早いよ
でも普通のアプリならそこまで問題にならない程度の差

897
デフォルトの名無しさん[sage]   投稿日:2017/01/26 23:03:14  ID:C8HlRM2h.net
なんか昨日から長文野郎が常駐してて空気が悪くなってる

898
デフォルトの名無しさん[]   投稿日:2017/01/26 23:03:30  ID:GQnwZs38.net
>890
ありがとうございます
確認してみます!

899
デフォルトの名無しさん[sage]   投稿日:2017/01/26 23:30:49  ID:NrOKhjjD.net(4)
>894
自分で争う意味はないって言ったのになんでそんなに定義にこだわるんだ?
俺を含めて、一般的にはJITと呼ぶ(個々を見るとAOT的な側面や使い方もあるね)って言ってるだけだぞ
コメント1件

900
デフォルトの名無しさん[sage]   投稿日:2017/01/26 23:50:28  ID:NrOKhjjD.net(4)
>894
あと、>889はJavaやC#がC++よりはやいとか優れてるなんていってないじゃん
Javaも悪くはない言語選択だよっていってるのに

お前は何か、みんなが前提として理解してることを延々と説明してる感じ

901
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:00:30  ID:sOrVpnzk.net
高速アプリが全てC++で組まれてるというのも思い込みもいいとこだな
AmazonがC++でやっててクソ遅かった大規模データ処理が
Java+Hadoopに乗り換えることで大幅に改善されたという例もある
今時言語の速度なんてあくまで要素の一つに過ぎないんだよ
コメント1件

902
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:06:54  ID:FPm896mM.net
>901
こういう馬鹿のデスマーチの尻拭いを何度したことか。氏ね。

903
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:07:53  ID:fDORPAeX.net(3)
別に長文でもスレ違いでも参考になるようなレスなら何とも思わないけど
今のこれは実にくだらないねw

904
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:11:06  ID:a4ei9zsf.net
ガチのHPCだとコアはCUDAだったりFortranも現役だったりで、これまたC++とは限らない
あまりにも見識が狭すぎる

905
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:24:44  ID:QXZBJ6J+.net
長文はキチガイ

906
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:29:28  ID:CH0FWDPd.net(2)
>899
おいおいすりかえんなよ。
俺はC#はJITと言う方が近いと言っている。
君はC#はAOTだと言い張っている。

俺は君が「C#はAOTだ」と言い張る理由が分からない。
C#に問題があるとしたらまずは速度だ。AOTと言い張る理由にもなる。
だからそれに言及しただけ。
では何故AOTだと言い張るのか理由をを言ってみてくれ。

俺はCUDAも使ったことあるよ。
ただそれをここで言う意味もないだろ。
コメント2件

907
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:30:54  ID:iNBXS39I.net
申し訳ないが3行以上はNG

908
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:31:00  ID:g7nuPYvQ.net
>906
.NET Native知らないの?

909
デフォルトの名無しさん[sage]   投稿日:2017/01/27 00:54:42  ID:9J0c8boi.net
本日のNGID:CH0FWDPd

910
デフォルトの名無しさん[sage]   投稿日:2017/01/27 01:49:06  ID:z/+I8zAR.net(2)
>906
「JITのほうが近い、ただしAOT的な側面もある」をどうやったら「C#はAOTだ」に変換できるんだ?

多分、お前は「AOT=配布時に機械語、JITとは真逆の概念」みたいな定義にこだわりがあるから話が合わない
みんなは「AOT的=実行する瞬間以外の機械語へのコンパイル」程度の認識だから、ネイティブキャッシュとかArtの事前コンパイルもAOT的と捉えてるだけだ

ただ、.NET Nativeはまだしも、iOS向けUnityとXamarinがそれなりに使われてるので「C#はJIT」は誤解を招く気もするけどね
コメント1件

911
デフォルトの名無しさん[sage]   投稿日:2017/01/27 02:14:06  ID:fDORPAeX.net(3)
実にどうでもいいんだけど、そういうアーキテクチャー的な話をするんなら、
言語としてのC#と、そのWindows版.NET Framework用の実装は
一応理念的には別門だって前提で議論しないとまずいんじゃないのそもそもw

912
デフォルトの名無しさん[sage]   投稿日:2017/01/27 02:19:16  ID:fDORPAeX.net(3)
しかしあれだね「、.NETの言語はJITだから実行環境に合わせた最適化がされるようになる」
っていううたい文句は最初の.NET1.0のころからあるけど、
これ今はちゃんと実現されてるんだっけ?
コメント1件

913
デフォルトの名無しさん[sage]   投稿日:2017/01/27 03:21:05  ID:z/+I8zAR.net(2)
>912
SSE命令関連とかは結構頑張ってるみたいだね
一応.NET NativeでAOTするのと比べて優位を保てる程度には最適化してるらしい
http://blogs.microsoft.co.il/sasha/2014/04/28/net-native-performance-inter...
ちょっと古いから今はどちらも改善されてるかもしれんが

914
デフォルトの名無しさん[sage]   投稿日:2017/01/27 23:51:25  ID:CH0FWDPd.net(2)
>910
俺が問題にしているのは>861
> ほぼAOTな方式
についてだぞ。全然そんなこと無いだろ、という話をしている。
ただまあ、お前らが過剰に反応するのはお前ら自身も理解出来ているからだと思うが、
誤解のない表現で言い切ってしまうと以下だ。

・C#は遅い
・C#は20年後には無くなる言語

速度面については、native化や最適化でいいところまでは行くだろうが、
仕様上、保護無し、ランタイム無しで突っ走るC/C++には勝てない。
JITガーって言う意見もあるだろうが、CでもJITしてはいけないわけではなくて、
Cでも関数ポインタが不変なら関数の中身を差し替えたところで問題はない。
だからスカスカに配置しておいて差し替えることも可能ではある。(誰もやってないが)
そもそもDLLだけアップグレードすることは今でも問題ないわけだし。
速度面でC/C++に勝つ芽は今後ともない。

.NETのコンセプト、全ての言語/環境で同じフレームワーク、というのは素晴らしかった。
ただそれも過去形だ。
色々あった言語(VB/J++/VC++)も結局C#に統合されつつあるし、あとはせいぜいF#位か。
.NET compactは結果的にマーケットを取れずに失敗した。
全ての言語/環境での共通フレームワークはHTML/ブラウザでほぼ確定した。

今C#がまだ生きているのはJavaがあの体たらくだからだ。
とはいえ、見て分かるとおり結果的にC#とJavaはモロ被りだ。
そして一応Javaも動きだした。(Java8)
JavaとC#のシェアでは喧嘩にならないし、Javaで済む場合にC#を選ぶ理由がない。

今現在はJavaは相変わらず糞だが、今後機能追加されてC#との差が無くなると死ぬのはC#。
C#信者はこれをちゃんと認識しておいた方がいい。
C#は差別化出来ていない。
コメント3件

915
デフォルトの名無しさん[sage]   投稿日:2017/01/28 00:01:46  ID:lJFdXfrP.net
20年も残るなら十分

916
デフォルトの名無しさん[sage]   投稿日:2017/01/28 00:15:29  ID:vlmW/cIj.net(2)
>914 ※個人の思い込みです。
コメント1件

917
デフォルトの名無しさん[sage]   投稿日:2017/01/28 00:16:54  ID:rD7WeMm9.net(2)
後はbuilderスレ辺りで続きをやって下さいって事で

918
デフォルトの名無しさん[sage]   投稿日:2017/01/28 00:24:24  ID:lGyRVc7d.net
>914
10年前の過去スレかと思ったわ。
コメント2件

919
デフォルトの名無しさん[sage]   投稿日:2017/01/28 00:29:22  ID:GpK52peC.net(2)
JAVAは特許絡みで自滅しそうだけどな。
Googleも.NET Foundationに加入したことだし、脱JAVA考えてたりして。
コメント1件

920
デフォルトの名無しさん[sage]   投稿日:2017/01/28 00:33:11  ID:B8Cbj4aW.net
>918
だなww

921
デフォルトの名無しさん[sage]   投稿日:2017/01/28 00:50:41  ID:cRpkhDFF.net
Javaは環境に排他的なところがあるからなあ
JVMの世界にどっぷり浸かってしまえば楽なんだが、
PHPやらRailsやら他にもいろいろ使ってるとJavaだけデプロイが異色すぎる
その点 .NET Core は今時のWebらしいデプロイ方法を実現してるので非常に馴染みやすい
Javaの置き換えというより、スクリプト+αとしてのGoに代わる選択肢の一つとして普及する可能性は高いんじゃないかな
コメント1件

922
デフォルトの名無しさん[sage]   投稿日:2017/01/28 01:05:26  ID:iWacJ3fP.net
.net nativeがスタティックリンクでライブラリから必要なクラスだけ取り込む仕組みなのを知らないとはね

923
デフォルトの名無しさん[sage]   投稿日:2017/01/28 03:02:12  ID:VlCpYCgG.net(3)
>914
それ俺じゃないし、そのレスもAOTの定義次第でしょ
君が言葉の定義にこだわりがあるのはわかったからそんなにAOTに過剰反応するな

言語の20年後は予想するだけ無駄
C/C++もgoやrustに置き換えられてるかもしれないし、Javaの代わりにKotlinがJVMの中心になってるかもしれない
ハードと通信の向上で富豪プログラミングができるといいけど、ナノマシンとかの制御のために今より貧相なハードウェア要件だったりするかもね
コメント1件

924
デフォルトの名無しさん[sage]   投稿日:2017/01/28 06:50:26  ID:7LkpJPRm.net
C++が、FORTRAN化している。

925
デフォルトの名無しさん[sage]   投稿日:2017/01/28 07:29:56  ID:bLDCN2m1.net
>916
妄想だろ w
本人楽しそうだしいいんじゃね?

926
デフォルトの名無しさん[sage]   投稿日:2017/01/28 09:05:59  ID:O0GHMxPw.net(2)
VisualStudioの無いC#なんて
コメント2件

927
デフォルトの名無しさん[sage]   投稿日:2017/01/28 09:35:59  ID:O0GHMxPw.net(2)
rust.NETは未だかね?

928
デフォルトの名無しさん[sage]   投稿日:2017/01/28 09:48:31  ID:vlmW/cIj.net(2)
>926
Windows7に標準装備されてるcsc.exeは役立ったよ
入力支援のないメモ帳でコーディングするのはちょっと面倒だったけど
小物アプリ作ったり、暇つぶしに十分だった

929
デフォルトの名無しさん[sage]   投稿日:2017/01/28 11:45:36  ID:QNTErMWx.net(2)
>918
確かに10年前もほぼ同じ状況だったろうね。
ただJavaはそこから全く進歩しなかった。それで延命してる。

>919
MSは何だかんだで技術力は相当あるし、OracleではJavaを発展させられないのも事実だ。
とはいえ、周回遅れでよければ他言語のいいところを採り入れればいいだけ。
これならOracleにも出来る。
今のC#が生き残るとしたらJavaを食らうことだが、
現代のCOBOL化しつつあるJavaはもう食いきれない。
(Javaは向こう30年の需要はあるし、その後他言語に移行するメリットもない)
周回遅れであってもJavaが追いついてくる限りC#は死ぬ運命だ。
(ただし逆に、周回遅れであるうちは死にきらないとも言えるが.。)

>921
Javaが殿様商売でブラウザから外されてあたふたしていたのは事実だ。
Web系の連中はその辺も含めてJavaは嫌いかもしれないね。
とはいえC#がサーバサイド言語として君臨するとも思えない。
C#にはサーバ用途のサポートがなく、移行される理由がない。
C#の特徴はLINQだけど、それがどこの分野にフィットするかだね。
コメント1件

930
デフォルトの名無しさん[sage]   投稿日:2017/01/28 11:46:16  ID:QNTErMWx.net(2)
>923
分からないことは考えない、さすがのゆとりだな。
確実に言えるのは、今のままのC#だと生き残る芽がないこと。
もちろんMSも分かっているだろうから、色々試してはいるのだろうけど。

C#はPascalと同じでベンダーが一つだ。よってMSが辞めますといったらいきなり終わる。
C/C++はその点各社各様なので誰も終わりの号令を出せない。
機能的にもあの範囲では完成しているし、今後共、流行はしないが使われ続けるだろう。
ただし開発効率がいいとは誰も思ってないだろうし、その点色々努力は為されるはずだ。

JVM言語群はJavaの発展には寄与するだろう。
ただそれらもJavaが追いついてくれば死ぬ運命にある。もっともこれは幸せな死だが。
で、C#もランタイムが違うだけでほぼJVM言語群と立ち位置が同じだろ、という話。

お前らが「C#は永久に不滅です!」なんて思ってるのなら完全に勘違いだぞ、というだけ。
ただそこまで信者化する理由もよく分からんのだがな。
C#が死ぬ頃にはC#とJavaの差異も今より無くなっているはずで、移行は容易だ。
逆に差異がある状態ならC#が死ぬこともない。
コメント1件

931
デフォルトの名無しさん[sage]   投稿日:2017/01/28 11:51:01  ID:sBhxwabY.net
次スレはふらっとみたいにワッチョイ付けてもらえるとNG楽でありがたい
コメント1件

932
デフォルトの名無しさん[]   投稿日:2017/01/28 12:03:08  ID:PWlkAQF7.net
C#の心配はもういいからとりあえず病院行ってこいよ

933
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:09:23  ID:7tAJxods.net(2)
もう言語の優劣とかこの後とか考えるのやめようよ
好きなの使えばいいじゃん

934
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:09:39  ID:q55sXuC9.net
>926
つ SharpDevelop

935
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:13:41  ID:7tAJxods.net(2)
C#なんてこの後廃れる一方だから気にするんじゃないよ
俺は使いたいから使ってるだけ

コンピューターサイエンスジャンルとかじゃもうpythonに追いつけない
入門者もc#よりpy選んでるらしいし

時代遅れのc++使ってる人も流行ってるからとか他が使えないって理由じゃないでしょ
使いたいから使うでいいよ

936
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:29:18  ID:op86qfG/.net(5)
>931
あんたがNGにしやすくするためだけに
2ちゃんねるの特徴を捨て去って全員強制コテつけろというのはひどいエゴだと思う
コメント1件

937
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:36:35  ID:kK1HMpWm.net
>929
C#にサーバー用途のサポートがないって、一体こいつはなんのことを言ってるんだ
まさかどっか別のパラレルワールドの住人なのか、それともC#と言う名の別のマイナーな別言語の話をしていたのか

938
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:38:31  ID:GpK52peC.net(2)
ワッチョイ付けてるスレは増えてきてるし、賛成が多ければ構わないだろ
強制コテも一週間で変わるんだし、IP表示が無ければ反対する真っ当な理由が思いつかない
コメント2件

939
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:41:01  ID:XpAKmUmz.net(2)
>936
みんなエゴ丸出し自己中でいくのが2ちゃんねるの特徴よ

940
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:41:42  ID:rD7WeMm9.net(2)
言語の優劣がどうでもいい訳じゃないけど
比較なら他所のスレでやってくれ
C++ Builder vs C# どっちがいいか教えて

941
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:42:51  ID:s1e/PAHl.net(2)
>938
それぞれ好きなスレ立てて使えばいいんだよ
どの板でもワッチョイ有り無しでスレが分かれているのをよく見るし
逆にその手の議論で荒れだすとどこでもひどい有様になる

942
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:50:41  ID:op86qfG/.net(5)
>938
一週間で変わるというのは違うよ
3、4文字目は仕様上永久固定だし、表面上変わる1、2、5〜8文字目も簡単に逆引きできるから実質永久固定だよ

943
デフォルトの名無しさん[sage]   投稿日:2017/01/28 12:58:20  ID:ivgBCMum.net
「SNSじゃあるまいし、なんで2chでわざわざコテハンを強制されなきゃならないのか」は真っ当な理由じゃないのかな…

944
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:00:33  ID:k4gxsyFf.net(2)
俺もワッチョイスレには書かなくなった

945
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:01:40  ID:mpmWyhNT.net
明らかに不適切な発言をしない限りはコテハンでも問題ないでしょ

946
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:16:35  ID:1Ptz3K6u.net
そんなコテハン好きならstackoverflowにでも行けばよろしいやん
なぜ2ちゃんをコテハン化する必要があんの?
コメント1件

947
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:29:21  ID:yHdW8px1.net(2)
荒しがいるからだろw

948
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:33:06  ID:WlIlAAzs.net(2)
>946
よう荒らし
元気か?死ね
コメント1件

949
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:40:45  ID:op86qfG/.net(5)
自治厨が自分に賛同する奴以外を荒らし扱いしてるだけか

950
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:45:46  ID:Bb/tAbed.net
荒らしだけならまだいいが、沸点が低いのかプライドが安いのか
煽りにのって相手を始める低脳が多過ぎる
本当に目障りでNGが面倒臭くてワッチョイもやむを得ないと考えてしまうのはこっちが原因

951
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:47:14  ID:5yCHiIBr.net
c#のスレで他言語の話を連投してる時点で
誰がどう見ても荒らしだと思うが

952
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:47:33  ID:6ehsSW1c.net
uyのスレ立て荒らし以来変なのが増えたな

953
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:48:54  ID:ktdFkm2m.net(2)
そんなにNGされたくないのかな?

954
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:50:24  ID:WlIlAAzs.net(2)
どう見てもそうだろ

955
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:53:53  ID:ya7J4hzr.net(2)
他言語の話なんてしてないのに荒らし扱いされて死ねって言われたんだけど

956
デフォルトの名無しさん[]   投稿日:2017/01/28 13:55:50  ID:JTtKbdRr.net
昔、JavaやVBで暴れてた低脳馬鹿が今はC#で暴れてるふうにしか見えない。

だって言ってることが同じだものw ○○は遅くない!! ○○で十分!!!

957
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:58:32  ID:yHdW8px1.net(2)
>948
それは酷すぎ。荒しと変わらんぞ。

958
デフォルトの名無しさん[sage]   投稿日:2017/01/28 13:59:47  ID:vlyo6wmu.net
相手してる生ゴミがうざいって人は連鎖NGができるブラウザに変えるのはどうだろうか?
強制はできないけど…。

959
デフォルトの名無しさん[sage]   投稿日:2017/01/28 14:06:49  ID:ya7J4hzr.net(2)
ワッチョイでNGが便利になるって言う人たちは、なぜかNGwordを工夫したり連鎖NGすることはできないという不思議現象

960
デフォルトの名無しさん[sage]   投稿日:2017/01/28 14:07:29  ID:y9Lbrz1V.net
自分でNGできないような奴がこの板にいる方がどうかしている
無能と自白しているようなもんだろ

961
デフォルトの名無しさん[sage]   投稿日:2017/01/28 14:11:07  ID:XpAKmUmz.net(2)
ごちゃごちゃ言わず、ワッチョイありなし、2つ立てて盛り上がった方を採用すりゃいんだよ
コメント1件

962
デフォルトの名無しさん[sage]   投稿日:2017/01/28 14:44:57  ID:k4gxsyFf.net(2)
スレも無料じゃないんだぞ
節約しないと

963
デフォルトの名無しさん[sage]   投稿日:2017/01/28 14:48:10  ID:s1e/PAHl.net(2)
ほらスレ違いで荒れる
このまま埋めてくれればいいよw
>961
採用っていうか使われなくなった方が消えたり過疎るだけ

964
デフォルトの名無しさん[sage]   投稿日:2017/01/28 14:53:25  ID:GmC+rupt.net
2chの基本だけど、スレが荒れる(このスレの現状はそこまで行ってないと思うが)と
ギャーギャー騒ぎだす連中の大半は本当はギャーギャー言いたいだけの寂しい奴ではある。

要するに、本当はスレッドの趣旨にそったレスが淡々と続く状況なんか内心望んでない奴、
もっと言えばまともなレスをする能力がない奴に限って文句言ってるのね。
本当はウンコが大好物なウンコ蠅がウンコの周りを周回しながらウンコが臭いって文句言ってる図式だねw

「スレッドの平和」を本当に望んでいる人(俺もその一人)は、逆説的だけど
神経質にスレ違いの話題を咎める連中に与しない方がいいと思うよ。
それは上記の「ウンコ以上にうっとうしいウンコ蠅」をのさばらせることにしかならないからね。

まあそうは言ってもあんまりスレ違いの議論が延々続くのもうっとうしいのも確かだから、
このスレに限らずスレ違いの議論が続いた時に誘導する「何でも議論スレ」みたいのが
あったらいいのかもしれないとも思う。
コメント1件

965
デフォルトの名無しさん[sage]   投稿日:2017/01/28 15:11:26  ID:VlCpYCgG.net(3)
>930
C#は永久に不滅とか信者とか、存在しない敵を叩くなよ
他の言語でも同等の処理があるLINQを特徴というのは、理解してないからか?

C#もJavaも互換性最優先なので、いつか時代遅れの限界が来て、保守以外では使わない言語になる気もする
死ぬならVB6みたいな長期サポートで亡霊にならないといいんだけど
コメント2件

966
デフォルトの名無しさん[sage]   投稿日:2017/01/28 15:16:41  ID:VlCpYCgG.net(3)
そういえば、llilacはどうなったのかな
LLVM化は結構需要ある気がするんだが

967
デフォルトの名無しさん[]   投稿日:2017/01/28 16:06:14  ID:VlGJ2K6H.net
荒れすぎだろ
投票による自治機能があるanontownに来ないか?
登録制だけどメアド不要だから簡単
https://anontown.com/

968
デフォルトの名無しさん[sage]   投稿日:2017/01/28 16:20:45  ID:BREm5bG1.net
>965
いつかはそうなるだろうけど、今のところはその兆候はないな

969
デフォルトの名無しさん[sage]   投稿日:2017/01/28 16:41:32  ID:ktdFkm2m.net(2)
>964
2ちゃんにおいて三行以上の長文はマナー違反だぞ

970
デフォルトの名無しさん[sage]   投稿日:2017/01/28 16:44:14  ID:op86qfG/.net(5)
立てにいく
コメント1件

971
デフォルトの名無しさん[sage]   投稿日:2017/01/28 16:48:51  ID:op86qfG/.net(5)

972
デフォルトの名無しさん[sage]   投稿日:2017/01/28 17:45:23  ID:JQ2q8v+C.net
>965
数年前、高速なNVRAM的な物が安価で作れるようになって
コンピュータの構成が大きく変わるなんて話が一部で盛り上がってたけど、
その手のパラダイムシフトが起こらない限り、プログラミング言語の世界でも
そんなガラガラポンは起こらないだろう

973
デフォルトの名無しさん[]   投稿日:2017/01/28 19:05:48  ID:oY/klkah.net
一体みんな誰と戦っているんだ
コメント1件

974
デフォルトの名無しさん[sage]   投稿日:2017/01/28 20:01:47  ID:XnHJw37P.net
>973
オラもそう思う

975
デフォルトの名無しさん[sage]   投稿日:2017/01/28 20:12:25  ID:09upZDzm.net
自分以外は敵というスタンスがトランプ流w

976
デフォルトの名無しさん[sage]   投稿日:2017/01/28 21:15:25  ID:yCMaAzsY.net
C#はマルチプラットフォーム化でサーバーサイドで需要がますます拡大するし
クライアントでもWPFが実用的になってくるんじゃないかな

977
デフォルトの名無しさん[sage]   投稿日:2017/01/28 21:23:25  ID:buSCJS7G.net
胡散臭いCMだな

978
803[sage]   投稿日:2017/01/29 12:03:54  ID:6CKnMYhm.net(3)
>818
>819
>831
64bitでコンパイルする
2GB内に配列を分割する
などいろいろやりましたがメモリオーバーになってしまいどうしても実行できませんでした
結局、元のファイルを分割し、最後に結合する方式にしてやっと通りました
使用メモリ見ると10GB位食ってましたが一応全部実行できています
ご協力ありがとうございます
コメント1件

979
デフォルトの名無しさん[sage]   投稿日:2017/01/29 12:28:52  ID:NqGwYzj0.net
>978
配列に入れて何がしたいのか最後まで聞けなかったけど、FileStreamで読み書きじゃ駄目だったの?
コメント1件

980
デフォルトの名無しさん[sage]   投稿日:2017/01/29 12:34:03  ID:Be2uFNKC.net
同意見
そんなもん全部メモリに読んだところで
どうせシーケンシャルに処理する以外にやれることがあるとは思えない

981
803[sage]   投稿日:2017/01/29 13:07:42  ID:6CKnMYhm.net(3)
>979
BinaryWriterで挿入操作ができれば使っていたのですが
以下を見るとできないようなので使いませんでした
http://dobon.net/vb/bbs/log3-46/27592.html

982
デフォルトの名無しさん[sage]   投稿日:2017/01/29 13:12:51  ID:WfZCQfEI.net
一時ファイルに元のファイルの内容と挿入データを書き込む
→元のファイルを削除する
→作成した一時ファイルの名前を元のファイルの名前に書き換える
でできると思うけど自分の好きな方法でうまくいったのならいいんじゃね
コメント1件

983
803[sage]   投稿日:2017/01/29 13:29:04  ID:6CKnMYhm.net(3)
>982
>一時ファイルに元のファイルの内容と挿入データを書き込む
確かにこのやり方がスマートでした
元のコード流用しようとしたので今のやり方になってしまいました
あらかじめわかっていたら・・・

984
デフォルトの名無しさん[sage]   投稿日:2017/01/29 17:25:54  ID:UOF0Asn0.net
うめ

985
810[sage]   投稿日:2017/01/29 22:35:39  ID:F8/CipCU.net(4)
>810です。反応が遅れてすいません。現在は、
クラスのインスタンスの複数のプロパティの値を比較して等価かどうか判定しているのですが
データをリストに追加する際、2種類の等価比較法(IEqualityComparer)を用いています

つまり追加対象のデータのうち、
まず弱い比較(少なめのプロパティだけが一致するか比較)で
既存のリストにないデータの「候補」をざっくりピックアップして、
候補たちに少々時間のかかる処理をかけてから(一部プロパティが書き換えられる)、
次に強い比較(多めのプロパティを比較)で候補の中から真に「新しい」ものをリストに追加しています

PosgresやLocalDBといったデータベースでは、こういうことって簡単にできるんでしょうか
ネット検索してみたところ複数のプロパティを比較すること自体は
UNIQUE制約(?)というので出来そうに思ったんですが、
現在やっているような2段構えの比較法は実現可能なんでしょうか?
コメント1件

986
デフォルトの名無しさん[sage]   投稿日:2017/01/29 22:51:26  ID:M0HgmB1M.net(3)
二段構えにする必要はない
比較に必要な全てのカラムセットにuniqueインデックス張りなさい
コメント1件

987
デフォルトの名無しさん[sage]   投稿日:2017/01/29 22:55:35  ID:F8/CipCU.net(4)
>986
それだと誤判定になりませんか?
追加前のデータと実際に追加するデータでは
一部プロパティ(弱比較ではチェックしないが、強比較ではチェックするプロパティ)の値が異なっているのですが…
コメント1件

988
デフォルトの名無しさん[sage]   投稿日:2017/01/29 23:02:20  ID:faIlAfcC.net
>987
強比較の値がDB上に固定できるなら、最初から強比較でやっても十分な速度が出ます
取り出してから変化する性質なら、弱比較でDBから取り出し値を生成してからメモリー上で強比較で良いんじゃないの?
コメント1件

989
デフォルトの名無しさん[sage]   投稿日:2017/01/29 23:27:53  ID:F8/CipCU.net(4)
>988
すいません、「DBから取り出す」という表現が何を指しているのかよくわかりません…

いま思案しているのはデータの集計作業時ではなく登録作業時の話です
各データについて、一部のプロパティの値を確定させるには処理時間がかなり必要になっています

追加登録したいデータたちについて、このプロパティ値をあらかじめすべて確定するのは非常に時間がかかるので
まず弱比較でざっくりと追加可能な候補(プロパティ値を確定しなければならないデータたち)を絞っているのです

今はこんな風にしてます(実際のコードでは日本語変数じゃないです)

候補データリスト = 追加したいデータのリスト.Except(全リスト, new MyClass_WeakComparator()).ToList();

候補データリスト について全プロパティ確定作業; //←重い

全リスト = 全リスト.Union(候補データリスト).ToList();
コメント2件

990
デフォルトの名無しさん[sage]   投稿日:2017/01/29 23:33:19  ID:F8/CipCU.net(4)
>989補足
Union()のところで既定の等値比較子として強比較が使われています

991
デフォルトの名無しさん[sage]   投稿日:2017/01/29 23:37:15  ID:M0HgmB1M.net(3)
>989
insert into 処理対象テーブル
select 追加後の値を得る計算式
from 処理対象テーブル
where 追加対象を得る条件式

これでいいんじゃないの?
弱比較とかよくわからん言葉遣いはやめた方がいい混乱するから

992
デフォルトの名無しさん[sage]   投稿日:2017/01/29 23:50:32  ID:M0HgmB1M.net(3)
なんか違うなこうか

insert into 全リスト
select 任意の計算式
from 追加データ
where not exists (
select *
from 全リスト
where 簡易な比較条件式)
and 完全な比較条件式

インデックスは簡易な比較に使うカラムだけでいいよ
コメント1件

993
デフォルトの名無しさん[sage]   投稿日:2017/01/30 00:02:56  ID:kb+lR8OL.net(2)
>992
やはり、条件式を2種類地道に書くしかないんですか…長くてハゲそう

>インデックスは簡易な比較に使うカラムだけでいいよ

アドバイスありがとうございます

994
デフォルトの名無しさん[sage]   投稿日:2017/01/30 00:07:16  ID:YrqXkGEW.net
>989
それだと「弱比較」で一致してしまった物は全部捨ててしまっているがいいのか?
>985の書き方だと、「弱比較」で一致しても「強比較」で一致しない物があり、
それは書き込むと読める。
まあこの辺はそちらがやればいい話だが。
コメント2件

995
デフォルトの名無しさん[sage]   投稿日:2017/01/30 00:14:31  ID:GO+RhKVN.net
数千行のSQLとか当たり前だから!!!
そのためのDBMSでしょ!!!
コメント2件

996
デフォルトの名無しさん[sage]   投稿日:2017/01/30 00:23:01  ID:RAZ09caE.net
1回のクエリで完結させようとせず
1次候補抽出クエリ → ローカルで1次候補のプロパティ書き換え → 最終候補抽出&インサートのクエリ
の3段構えにしてもいいんじゃないかと思うけど
コメント1件

997
デフォルトの名無しさん[sage]   投稿日:2017/01/30 00:33:18  ID:kb+lR8OL.net(2)
>994
>「弱比較」で一致してしまった物は全部捨ててしまっているがいいのか?

詳しくは書けませんが、やりたい動作としてはその動作でOKです
985の説明はちょっと正確ではありませんでした

>995
大規模なデータベースを触ろうとするのは初めてだったので…すいません

>996
どっちみち長い比較条件を書かないといけないのは避けられそうにないので
その方法でもよさそうですね

998
デフォルトの名無しさん[sage]   投稿日:2017/01/30 01:03:13  ID:9w4b/GJp.net
>995
SQLが数千行もあって当たり前なの?異常じゃないの?SQLだよ?

999
デフォルトの名無しさん[sage]   投稿日:2017/01/30 02:19:40  ID:ty17mMxy.net
SQL Serverは問合せ文と制御文を1つのストアドに混在できるので複雑な工夫が容易で、
腕が良ければ数千行の複雑な処理を書くことによって物凄く高速化できることがある

Oracleは混在できないため複雑な処理を書くには手間がかかり、プログラマーがあまり工夫しなくなり、
そのため腕が上がらず、結果としてSQL Serverより遅いシステムが多いらしい

現在のSQL ServerにはOracleと同じスナップショット分離(古い人は「行ロック」って言う)があるが、
2000の頃はなかった(今でもデフォルトでオフになってる)ため、高速な更新処理が必要だったことも腕に関係すると思われる
(スナップショット分離があれば、ダラダラ更新しても他ユーザーの閲覧に迷惑かけない)

1000
デフォルトの名無しさん[sage]   投稿日:2017/01/30 02:31:32  ID:RISpHKLn.net
次スレ

C#, C♯, C#相談室 Part92 [無断転載禁止]©2ch.net
C#, C♯, C#相談室 Part92
更新情報
・スレッド一覧ページで過去ログのタイトル検索・一覧表示ができるようになりました(2016/1/20)
NGワード登録
登録する
スレッド内検索

プログラム板 タイトル検索

このスレッドが人気です(実況系)
クイズ!金の正解!銀の正解! (726)フジ実況
志村動物園 (634)NTV実況
炎の体育会TV (568)TBS実況
満天☆青空レストラン 岩手編★2 (513)NTV実況
名探偵コナン「米花町二転三転ミステリー(前編)」★3 (663)NTV実況
実況 ◆ テレビ朝日 47697 楽園のごはん (459)テレ朝実況
[再]世にも奇妙な物語'16 秋の特別編★4 (751)フジ実況
報道特集★4 (164)TBS実況
このスレッドが人気です(ニュース系)
【軍事】フランス海軍の強襲揚陸艦「ミストラル」が佐世保基地に入港 日本、英国、米国の部隊を乗せ初の4カ国共同訓練へ ★4 (1001)ニュー速+
【サッカー】<ボールボーイを小突いて一発退場>徳島DF馬渡「感情がバッと出てしまった…」試合後ボールボーイに謝罪 (541)音楽・芸能ニュース
【サッカー】徳島サポーターがボールボーイに水かけ! (1001)音楽・芸能ニュース
【芸能】キングコング西野が激怒、テレビ収録中に途中退席 (1000)音楽・芸能ニュース
【サッカー】J2で異例の退場処分 相手選手ではなくボールボーイへの”ファウル”で一発レッド (1000)音楽・芸能ニュース
【軍事】フランス海軍の強襲揚陸艦「ミストラル」が佐世保基地に入港 日本、英国、米国の部隊を乗せ初の4カ国共同訓練へ★3 (1002)ニュー速+
【調査】40代、35%が「貯蓄ゼロ」 (1000)ニュー速+
【軍事】北朝鮮が弾道ミサイル1発を発射し失敗 東京メトロなど一時運転見合せ★13 (517)ニュー速+
プログラム板の人気スレ
オブジェクト指向って自然な文法だな 3 (575)
Excel VBA 質問スレ Part47 (705)
次世代言語議論スレ[Go Rust Kotlin Scala]第4世代 (150)
ねねっちと一緒にプログラムを勉強するスレ第2話 (600)
C言語なら俺に聞け 139 (862)
【統計分析】機械学習・データマイニング15 (158)
スレ立てるまでもない質問はここで 147匹目 (418)
くだすれPython(超初心者用) その33 (351)
推薦図書/必読書のためのスレッド 81 (905)
C++相談室 part130 (276)
ふらっと C#,C♯,C#(初心者用) Part127 (408)
C#, C♯, C#相談室 Part94 (64)
Pythonのお勉強 Part52 (873)
Git 15 (672)
Visual Studio 2015 Part8 (715)
Visual Studio 2017 Part2 (139)
Xamarin Part3 (845)
Swift part10 (462)
Java入門・初心者質問スレ Part.3 (140)
Ruby 初心者スレッド Part 59 (1000)
C# vs Java どっちが好き? その3 (191)
クラス名・変数名に迷ったら書き込むスレ。Part27 (948)
HSP総合スレ【part 10】 [無断転載禁止](c)2ch.net (302)
プログラミング言語 Rust 2 (817)
【JavaScript】スクリプト バトルロワイヤル55【php,py,pl,rb】 (643)
Androidプログラミング質問スレ revision53 (220)
【初心者歓迎】C/C++室 Ver.100【環境依存OK】 (636)
Androidプログラミング質問スレ revision53 (212)
このサイトについて
このサイトは2ちゃんねるからデータを取得し、表示するサービスです。
画像のインライン表示機能について
画像のURLの後ろにある[画像をインライン表示]をクリックすると、URLの下に表示します。
表示される画像は横幅100pxに縮小されていて、クリックすると原寸で表示します。
このサイトの特徴
1)スレッド内検索ができます
2)レス(「>>1」など)のポップアップができます
3)不適切な言葉を含む投稿を表示しません
4)ページ内で画像を直接表示できます
5)2ch他スレッドへのリンクはタイトル・板名つきでリンクします
6)すっきりとしたデザインで表示します
7)最新スレや前スレをチェック・一覧表示します
8)NGワード機能の搭載でイヤな言葉が目に入りません
9)荒らしを自動チェックします
10)スレッド内・同一IDの書き込みだけ表示できます
11)レスの返事をレスされた発言の下に表示する「まとめビュー」が利用できます
12)シリーズ化したスレッドの一覧を表示します
13)最新のスレッドがある場合はお知らせします
削除について
こちらをご覧ください
機能要望について
現在機能要望受付中です。
問い合わせについて
こちらのページからどうぞ
広告


首都圏の方、ソフトバンク光オススメですよ


このサイトは2ch.scからデータを取得・表示しています。削除などについてはこちらをご覧ください。 アクセスモード:差分取得 - 新着書き込みなし(304)