15/07/25 16:14:05.15 I42JqLkf.net
■Visual Studio 2013 Community & Express(無償の統合開発環境)等はこちら
URLリンク(www.visualstudio.com)
■コードを貼る場合はこちら
URLリンク(ideone.com)
■前スレ
C#, C♯, C#相談室 Part87 [転載禁止](c)2ch.net
スレリンク(tech板)
■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
2:デフォルトの名無しさん
15/07/26 09:05:59.64 fLVu21Zo.net
質問しようと思ったけどボコボコにされそうだからしない事にした
3:デフォルトの名無しさん
15/07/26 11:30:04.61 46Fm2wcC.net
そんな……
やさしいおじさんが聞いてあげるから言ってみな?
4:デフォルトの名無しさん
15/07/26 11:39:51.33 N2oZlVgp.net
なんだ おまえ ホモか
5:デフォルトの名無しさん
15/07/26 16:15:48.72 xa5HdSSx.net
結局セキュリティソフト君はその後どうしたのかね?
6:デフォルトの名無しさん
15/07/26 17:26:44.71 lXSfNNdx.net
セキュリティソフトの作成方法を聞き出して
その情報を元にウイルスでも作ろうと思ってたんじゃないの
7:デフォルトの名無しさん
15/07/26 17:39:28.63 l9VGeSW8.net
>>6
そんな頭があれば既に作ってるだろうw
8:デフォルトの名無しさん
15/07/26 19:23:11.46 kjrWspdc.net
>>6
その匂いがプンプンするね
今日日セキュリティソフトを自作したところでそんな怪しげなもの誰一人使わない
犯罪目的のクズ野�
9:Yだろ
10:デフォルトの名無しさん
15/07/26 19:36:43.53 vtqRL+nm.net
>>8
2ch脳全開だなw
11:デフォルトの名無しさん
15/07/26 20:19:40.20 B0K0vZKc.net
そんなスキルあるやついないだろうしねぇ
でも祐ちゃんの例もあるし今居る住民もいつダークサイドに堕ちるか分からんよw
12:デフォルトの名無しさん
15/07/26 20:31:57.38 N2oZlVgp.net
おまえらの場合「立つ鳥、跡を濁さず」とか言って
社内インフラを綺麗にしていくんだろ
そうはいかない
13:デフォルトの名無しさん
15/07/29 10:43:41.78 Sn/ML9/s.net
最近になって開発環境を総グレードアップして
いよいよTaskやasync/awaitを使い始めたんだけど、信じられないくらい難解だね
ぱっと見スマートに見えるコードでも、finallyとかcatchとか使うと、実行順序が滅茶苦茶になるし、バグコードが分かりにくい
ストアアプリなんかはThread廃棄で、これだけを使えとかされているけど、こんなもの生き残るんだろうか・・・
少し心配になってきた
今どの程度の人たちが使っているんだろうか・・・使っている人います?
利用者が少ないようだと、そのうちコケるんじゃないかと思うので使用を躊躇う
14:デフォルトの名無しさん
15/07/29 10:47:04.71 ARLADCs4.net
新しいことに対応できない老人はずっとThreadのままでいいんじゃね
15:デフォルトの名無しさん
15/07/29 10:50:05.68 Sn/ML9/s.net
URLリンク(www.slideshare.net)
いくら効率が悪いといっても、こんなにしてしまうくらいならシンプルにlock式にした方が良い気がするんだよな・・・
何時までこの強引なシングルスレッドモデルを使う気なんだろうか
16:デフォルトの名無しさん
15/07/29 10:53:42.82 Sn/ML9/s.net
>>13
新しくて使えるものならOK
だけど、コードにバグがあるのかないのかはっきりしないコードが容易に生産されてしまう仕組みと
それを実現しているシステムが難解で一度バグったら解決困難に陥るところが気に入らない
17:デフォルトの名無しさん
15/07/29 11:08:36.50 KiB1GMXB.net
気に入らないなら使うなよ
馬鹿じゃねえの
頼まれてもいないくせに図々しく使った挙げ句ウダウダうるせえんだよ生ゴミが
スタバのミルクスチーマーに頭突っ込んで死ね
18:デフォルトの名無しさん
15/07/29 11:12:05.54 /xHve5to.net
まあ複雑な裏側を隠蔽した副作用で変な落とし穴作ってる側面はある
そういうや以前ストアアプリで生Thread使えないんで困ったような記憶があるなあ。
あれ何に困ったんだっけ
19:デフォルトの名無しさん
15/07/29 11:21:13.95 /xHve5to.net
スレッドをAbortする手段がないから、まれにデッドロックするバグがあるライブラリを
使えなくて困ったんだな確か...
20:デフォルトの名無しさん
15/07/29 11:23:56.70 5YdTwoj1.net
まれにデッドロックするバグのあるライブラリなんか、
Abort有る無しに関わらず使いたくないな。
21:デフォルトの名無しさん
15/07/29 14:35:01.41 Sn/ML9/s.net
こいつを完全理解しようと思うならSynchronizationContextの自前実装で試してみるくらいはしないと無理だな・・・ふぅ
なんでこんな変態的な事しようなんて考えたんだろMSの中の人は・・・
URLリンク(www.kanazawa-net.ne.jp)
22:デフォルトの名無しさん
15/07/29 14:36:16.21 Sn/ML9/s.net
まだ、C++のテンプレート変態メタプログラミングの方が可愛げがある
やり過ぎだ・・・
23:デフォルトの名無しさん
15/07/29 14:58:15.30 UDgaLD/w.net
やり過ぎの基準ってどこだろう。
ラムダだって初級者にはやり過ぎだろう。
24:デフォルトの名無しさん
15/07/29 15:09:34.16 Sn/ML9/s.net
知るべき内容が、際限なく発散しなければ、多少奇抜でも初心者は驚くだけでそのうち慣れるだろう
そうでないのは良くない
Task/asyncは際限なく発散している、質が良くない
あとドキュメント少なすぎ
25:デフォルトの名無しさん
15/07/29 15:51:42.49 i8OV3HLL.net
質が良くないとは思わんけど、便利だけどドキュメント少なすぎなのはまあそうかも
26:デフォルトの名無しさん
15/07/29 16:00:51.85 Sn/ML9/s.net
本当はね、言語の組み込み機能位なら、一ページで説明できる程度でなきゃ駄目だ
大量のドキュメントなしに全貌が理解できないなんてのは最低です
提供される要素は巨大ライブラリじゃないんだから・・・
27:デフォルトの名無しさん
15/07/29 17:41:02.30 RzPhPosx.net
asyncの例外はもうちょっと何とかして欲しい
だからと言ってpromiseもどきに退行する気もないが
28:デフォルトの名無しさん
15/07/29 18:09:37.81 Sn/ML9/s.net
だんだん問題が見えてきた。用心しなきゃならないのは、awaitをlockで囲んでしまわないことと
async void のケースで、完了を待たないという事をしっかりと理解しておく事だな
待たないから、awaitを使って書かれたコードより先にそれを囲っているfinallyを実行してしまう
前者にしても後者にしても、サブルーチンやイベント呼び出しに含まれていたりするケースはバグが潜在しやすいね
こりゃ、初心者に啓蒙活動するもの大変だ
後でアンチパターン集作らないと・・・どっかサイト作っている人いないかな、作るのメンドイ
29:デフォルトの名無しさん
15/07/29 18:15:27.82 kqrCR8QI.net
なんかレベル低くない?
30:デフォルトの名無しさん
15/07/29 18:22:32.72 ARLADCs4.net
低レベルな話題は初心者用スレでどうぞ
ふらっと C#,C♯,C#(初心者用) Part116 [転載禁止](c)2ch.net
スレリンク(tech板)
31:デフォルトの名無しさん
15/07/29 18:27:14.32 aeHXtAal.net
初心者に啓蒙…
32:デフォルトの名無しさん
15/07/29 18:31:26.26 7PHxXKam.net
勤勉な無能だな。
今日中にID:Sn/ML9/sを銃殺しておくように。
33:デフォルトの名無しさん
15/07/29 18:32:40.51 v5HDQPvF.net
Task使えばいいじゃない
34:デフォルトの名無しさん
15/07/29 18:44:23.60 Sn/ML9/s.net
>>28-32
お前らに何一つ理解できているとは思えないけどなw
35:デフォルトの名無しさん
15/07/29 19:02:27.32 eAAheHcV.net
気は済んだ?
じゃ、飛び込もうか
電車がきたよ
36:デフォルトの名無しさん
15/07/29 19:28:29.68 ozMfiNSe.net
>>27
バカ
37:デフォルトの名無しさん
15/07/29 21:50:33.64 G+YolpHZ.net
将来的にマイグレーションするんじゃねえのって考えると恐い
別の言語に移植できるのかこんなの
38:デフォルトの名無しさん
15/07/29 21:59:45.14 A0PWsVoV.net
非同期なんて見えないgoto文だらけみたいなもの
39:デフォルトの名無しさん
15/07/29 22:22:48.27 F3xhAPP9.net
ちなみにJavaScriptにはasyncが入ったよ
なんだかんだC#のやり方は正しい
40:デフォルトの名無しさん
15/07/29 22:30:49.56 ubdcnWrb.net
C#の機能を取り込もうと周りが真似ていくはずだから移植は難しくはない筈
41:デフォルトの名無しさん
15/07/29 22:59:35.19 JV2gkNFI.net
C++でも次期改定C++17の主要機能の一つとして挙げられている
42:デフォルトの名無しさん
15/07/29 23:13:48.97 eAAheHcV.net
Pythonも3.5でasync/await入る
try~catchの融通の利かなさまでおんなじw
43:デフォルトの名無しさん
15/07/30 01:34:31.84 1osdJ7bT.net
C#知らないけど、凄い詳細な仕様での例外の問題を話しているのかと思って、
わざわざC#のasyncの仕様読んだ
ただの非同期処理を知らない初心者がブーたれてただけだった…
44:デフォルトの名無しさん
15/07/30 01:36:30.16 1osdJ7bT.net
これがC++のTMPより複雑とか、Boostすら触ったこと無いとしか
45:デフォルトの名無しさん
15/07/30 06:07:53.43 TTNL8OnS.net
>>42-43
そんな知識で反応するとか酷過ぎるw
Boostはかなりきれいに整備されてるだろ
難しくはあるが複雑ではない
そして、あんまり落とし穴のような問題は無い
46:デフォルトの名無しさん
15/07/30 06:40:30.06 1osdJ7bT.net
>>44
なんでそんな使った事もないのバレバレなレスが出来るんだwwwww
spiritとか黒魔術の塊なのに
最近は浅い知識で知ったかぶりするのが流行ってるのか?
47:デフォルトの名無しさん
15/07/30 06:47:38.85 1osdJ7bT.net
つか別スレッドの例外を、開始スレッドのブロックで拾えないとか、
平均的Javaプログラマすらわかるような、当たり前すぎてビビる話されてドヤられても困るわ
48:デフォルトの名無しさん
15/07/30 06:50:57.70 JffQwXQ6.net
asyncやTaskがきれいかどうかはともかく、boost以下はないw
49:デフォルトの名無しさん
15/07/30 06:52:34.22 TTNL8OnS.net
>>45
黒魔術と難解性と複雑さの違いは理解し解こうなw
ついでに言うと知っているし、かつて使いまくってたし
今は開発全部C#に移って、だいぶご無沙汰だけどね
#あれは、構文解析機として独立したライブラリで、各種テンプレートの中でも他所への影響が少ない簡潔なライブラリだよ
50:デフォルトの名無しさん
15/07/30 07:13:49.61 1osdJ7bT.net
全然簡潔じゃねえよ糞ワロタwww
中身Phoenixそのままだぞww
最悪そのままスレッド内で例外処理すりゃいいだけの話と、
書き損じたら読めないエラー出す上に、
使う側にも魔術要求するバッドノウハウの塊を一緒にすんなw
51:デフォルトの名無しさん
15/07/30 07:16:43.41 TTNL8OnS.net
>>49
使ってみたけど難しすぎて全然分からなかったと言えよw
簡潔かどうか把握できるところまで辿り着けませんでしたと
52:デフォルトの名無しさん
15/07/30 07:31:38.69 1osdJ7bT.net
>>50
アホか使ってるから言ってんだよw
そんな中身のないレスしかできない時点で、
使ってもいないのがよくわかるw
53:デフォルトの名無しさん
15/07/30 07:37:48.65 TTNL8OnS.net
ちなみに俺だったら、テンプレートライブラリ群の中ではスマートポインタ類を挙げるよ
async/awaitの問題点の質は、参照カウンタ式のスマートポインタの問題点とよく似ている
spiritのように完璧な基礎を基盤に順次積み上げているようなライブラリを挙げたりはしない
54:デフォルトの名無しさん
15/07/30 07:47:59.99 qgoNGP4Y.net
こんな時間から真っ赤で大丈夫か
55:デフォルトの名無しさん
15/07/30 07:56:59.31 1osdJ7bT.net
>>52
>async/awaitの問題点の質は、参照カウンタ式のスマートポインタの問題点とよく似ている
んー?ちょっと理解できないので、ぜひ説明してみてくれ
ちなみにspiritは中身phoenixで、
普通にboost::mplも使ってるので基礎全然ではない
資産の積み重ねであると認めている時点で簡潔でもない
56:デフォルトの名無しさん
15/07/30 08:05:57.29 TTNL8OnS.net
>>54
内容物を封じ込めきれない場合、くるんで隠しちゃダメなんだよ
バグだらけになる、スマートポインタが流行ったときに散々議論された話
C++の場合、それ以上に生ポインタがやばいので、チーム全体のスキルを上げてだましだまし使うという選択肢も考えられるが
C#は初心者でも使う言語だからな C++ のようにメンバー全員エキスパートとか期待できない、このあたりもヤバイ
おまえ説明しろとか言っているだけで自分で考える気もなければ、調べる気もなさそうなのでこのあたりまでな
spirit説明しても君のレベルでは理解できないかと、とりあえず関数型言語やプログラムの証明に関する知識とか
そのあたりを理解していけば多少は分かってくるかと
57:デフォルトの名無しさん
15/07/30 08:11:05.97 HdXuYlDO.net
誰か相手してやれよ。こんなのがC++erだと思われると悲しいな。
58:デフォルトの名無しさん
15/07/30 08:13:51.40 L13dholr.net
嫌なら使うな
最初から別言語でやれ
59:デフォルトの名無しさん
15/07/30 08:22:49.93 1osdJ7bT.net
>>55
スキル問題の何が質的に同じなんだよ
頼むから少しはasync/awaitとスマートポインタの比較をしてくれ
>spirit説明しても君のレベルでは理解できないかと、とりあえず関数型言語やプログラムの証明に関する知識とか
>そのあたりを理解していけば多少は分かってくるかと
これもぜひ説明してほしいねw
TMPが関数型言語みたいなもんって話から証明は飛躍させすぎじゃね?w
60:デフォルトの名無しさん
15/07/30 08:28:21.77 TTNL8OnS.net
>>58
これで分からないなら、スマートポインタの問題についての知識すらなさそうなので、論外という事にさせてくださいなw
61:デフォルトの名無しさん
15/07/30 08:34:06.14 1osdJ7bT.net
>>59
本当ただ否定するためだけの言い訳ばっかりだな
お前は中身についてまともに議論できないのに、複雑だの何だの言ってたのか?
62:デフォルトの名無しさん
15/07/30 08:37:28.13 TTNL8OnS.net
>>60
その言葉そっくりそのままお返しですw
議論できるだけの基礎知識あるなら普通に返すよ、喧嘩腰にもしない
63:デフォルトの名無しさん
15/07/30 08:38:22.31 1osdJ7bT.net
そのレスって元から非同期処理そのものが複雑になる要因な時点で、
async/await関係ないじゃん
何を問題視しているのかわからないね
そんなに嫌いならPromiseでも使ってろと
64:デフォルトの名無しさん
15/07/30 08:40:07.48 1osdJ7bT.net
>>61
複雑さを語る割に中身は語らず、例にもスマポとかその程度で
それでいて万人に通じないTMPが簡単と言っちゃう
意味不明すぎるわ
65:デフォルトの名無しさん
15/07/30 08:40:31.54 JffQwXQ6.net
splitなんか昔からある技術を再実装してるだけじゃん
何も新しいことはない
C系言語をスタックフレームの実行モデルから脱却させるという無謀な試みと一緒にするなよe
66:デフォルトの名無しさん
15/07/30 08:48:52.83 1osdJ7bT.net
>>64
async/awaitって言う糖衣構文が難しいと言う割に
TMPが簡単とか言ってるから首をかしげてるだけだよ
その上、問題を非同期処理の複雑さにすり替えてて性質が悪い
67:デフォルトの名無しさん
15/07/30 08:50:33.32 TTNL8OnS.net
>>63
初心者がC++を初めて最初に驚愕するライブラリだけに、一番最初にこんなもの挙げると程度が知れるんですよ
次はもう少し賢そうに振る舞おうねw
68:デフォルトの名無しさん
15/07/30 08:54:43.00 G7yjDdda.net
>>53
全然大丈夫ではなさそうだ
双極性障害(躁病)であろう
69:デフォルトの名無しさん
15/07/30 08:56:33.54 1osdJ7bT.net
>>66
いくらレッテル貼ろうがboostは複雑だよ
もちろん読めなくはないが、話している内容との差がありすぎる
というかお前さん結局、async/awaitの中身に言及しなかったな
70:デフォルトの名無しさん
15/07/30 09:14:46.97 TTNL8OnS.net
async/awaitは、書き方、呼び出し方次第で見た目の実行順序と実際の実行順序が変わって危険
これに対してどうすべきかという話
スマートポインタの場合は、見た目解放されるべきポインタが何時までも残存する事があるよね
見た目と実際が予想どおりにならない時、中身が隠ぺいされていたらお手上げ
また、見た目に分からない以上、ちょっとしたことでバグは潜在してしまう
初心者が触る時に至っては、問題すら認識できなくなる
C++の場合は、まぁincludeファイルでも観ればエキスパートなら対処可能だろう
C#の場合は言語レベル隠ぺいだからちょっと大変だねILでもみればなんとかなるが、これやれるのはごく一部かな
そして、ILが見れても、その挙動を知るには、ほとんどドキュメントのない内部用ライブラリの挙動を知る必要がある
よほどの実力がないと、問題を起こした時の対処は困難極めるだろう
内容物を隠すのなら、ガベージコレクタくらい確りしたものである必要がある
参照カウンタのスマートポインタには心配が残るが、ガベージコレクタを心配してコードする人はいないだろう
71:デフォルトの名無しさん
15/07/30 09:37:38.62 9H67jH/Q.net
最後の2行ってC++er流のジョークのつもりなの?
72:デフォルトの名無しさん
15/07/30 09:53:27.70 Bcr2sdZI.net
>>69
>async/awaitは、書き方、呼び出し方次第で見た目の実行順序と実際の実行順序が変わって危険
意味が分からない。これはasync/awaitに限った話なのか
非同期処理ってそういうもんじゃないのか
73:デフォルトの名無しさん
15/07/30 09:55:56.44 L13dholr.net
非同期処理が理解できてない馬鹿だからな
真面目に相手しなくていいよ
74:デフォルトの名無しさん
15/07/30 10:00:59.23 Z0rCKaW0.net
>>70
これ以上煽るな
75:デフォルトの名無しさん
15/07/30 10:07:13.89 TTNL8OnS.net
>>71
async/awaitでなければ、意識する必要はないかもね、完全に意識下に置かれるから
とりあえず色々ライブラリを移行しまくっていて、食らいまくりなのはこれ、finallyの中身が最後であってほしいがそうはならない
問題点はライブラリの event が Task を戻り値としないために管理外にすっぼ抜けてしまう
導出したライブラリで頻発する
殆どのケースでは問題なく見た目通りの順序だから、普段は安心しきってしまってバグ混入と
finallyにはセマフォなどの制御があったりするから、処理が衝突したりする、しかしエラーはない
普段は正常に動いているふりをするので問題に気づくのにも結構かかった
他にもいろいろあるよ
try
{
1番
await 3番
4番
}
finally
{
2番
}
76:デフォルトの名無しさん
15/07/30 11:02:42.02 AGRRcWLu.net
try{}finallyにこだわるねw
77:デフォルトの名無しさん
15/07/30 11:09:17.38 AGRRcWLu.net
TPLでも同じやん?
try{
Task.Factory.StartNew( ... ).ContinueWith( ..., TaskScheduler.FromCurrentSynchronizationContext() );
}
finally{
...
}
78:デフォルトの名無しさん
15/07/30 11:47:18.26 HdXuYlDO.net
URLリンク(i-msdn.sec.s-msft.com)
この図でも見て落ち着け
79:デフォルトの名無しさん
15/07/30 19:27:24.30 FRlaAlkY.net
プログラマって馬鹿なのか?
複雑で使いにくい言語やライブラリは必然的に利用者が少ない
つまり普及度で比べれば自ずとどちらが洗練された良いものかが客観的にわかる
君たちの感想や妄想で比較するのはナンセンスなのにダラダラとくだらない議論を続けるなよ
さてboost::spiritとasync awaitはどちらがより普及している良い開発ツールなのか?
もう答えは見えたね
80:デフォルトの名無しさん
15/07/30 19:49:24.
81:54 ID:AGRRcWLu.net
82:デフォルトの名無しさん
15/07/30 21:09:44.72 1osdJ7bT.net
メタプロも何のその、スマートポインタをドヤ顔で語り、
他人を無知を許さない歴戦のC++er
しかしそんな歴戦の戦士ですら、shared_ptrをgcの一種とは思わなかった…
83:デフォルトの名無しさん
15/07/30 21:27:38.15 DC3tS+uj.net
議論なんでどこでやってんの?
小学生が夏休みの自由研究発表してるだけだろ
早いね。もうできたんだ
84:デフォルトの名無しさん
15/07/30 21:36:25.76 YQW0UVty.net
>>74
>finallyの中身が最後であってほしいがそうはならない
どんな場合にそうならない?
85:デフォルトの名無しさん
15/07/30 21:37:25.07 YQW0UVty.net
レスをよく見てなかった
82は忘れて
86:デフォルトの名無しさん
15/07/30 22:04:34.70 YQW0UVty.net
>>74
Visual Studio 2015のリリースノートにはawaitのfinally周りが改良された
と書かれているけど直ってない?
87:デフォルトの名無しさん
15/07/30 22:11:47.51 AGRRcWLu.net
>>84
どう治るんだよハゲ
88:デフォルトの名無しさん
15/07/30 22:38:17.31 l4sc3Y5p.net
>>85
これでしょ。
URLリンク(www.visualstudio.com)
> Await が catch ブロックと finally ブロックでも機能するようになりました。このため、一部の非常に巧妙な回避策を使用する必要がなくなりました。
89:デフォルトの名無しさん
15/07/30 22:41:31.61 AGRRcWLu.net
>>74のダボはfinallyブロックが非同期部分の終了時に実行されるべきだって言ってるんだろ?
治るもクソもないだろハゲが
90:デフォルトの名無しさん
15/07/30 23:14:50.63 S/Rfe7uQ.net
>>74の内容の妥当性はさておいて
日本語も読めない>>87は哀れだな
91:デフォルトの名無しさん
15/07/31 01:13:31.81 gTceL3gJ.net
いえ
>finallyの中身が最後であってほしいがそうはならない
って言ってますねモロに
92:デフォルトの名無しさん
15/07/31 08:19:22.46 ueomFH8Y.net
会話すらまともに成り立ってないwww
C#erってこんな
93:デフォルトの名無しさん
15/07/31 08:22:11.89 HYWsCY4P.net
ガキは一日中耐久ラジオ体操してろ
94:デフォルトの名無しさん
15/07/31 09:31:14.46 09Ldny0J.net
夏だなぁ
95:デフォルトの名無しさん
15/07/31 09:35:02.77 a7ClvwIj.net
シーシャーパーってなんか涼しそうな響き
96:デフォルトの名無しさん
15/07/31 10:50:37.05 IdVy18vn.net
クジラ守ってそう
97:デフォルトの名無しさん
15/07/31 14:37:14.32 gQtzllmk.net
いいえ、C#estです
98:デフォルトの名無しさん
15/07/31 21:56:52.32 5JIfYwes.net
シーシャニストのがカッコいい
99:デフォルトの名無しさん
15/07/31 22:32:23.44 D+nD3a7O.net
ペニス
ペニサー
ペニセスト
100:デフォルトの名無しさん
15/07/31 22:48:45.97 9Dpcu8YK.net
ガキは宿題済ませて早く寝ろ馬鹿
101:デフォルトの名無しさん
15/07/31 23:04:31.22 gTceL3gJ.net
finallyさんC++スレでも暴れてたのね
だいぶアレな人だね
102:デフォルトの名無しさん
15/07/31 23:23:49.25 gPjpb1D1.net
finallyさんは、ちょっと冷静になって
自分が何を言っているのか
考えた方が良い。
103:デフォルトの名無しさん
15/08/01 02:05:01.82 Y3XWk9yX.net
>>90
言語としても今一番微妙なポジションにあるからね。
このまま行くと消滅路線。
104:デフォルトの名無しさん
15/08/01 02:23:11.88 T8vYSDDC.net
夏休みの自由研究で、C#でアプリを作ろうと思っています。
本を読んで勉強したのですが、よくわからないです。
どうしたらアプリを作れますか?
105:デフォルトの名無しさん
15/08/01 02:31:45.31 QSZH+PJp.net
ボタンを押すと Hello WORLD と表示される愉快なサンプルプログラム載ってないか?
それがアプリだ
106:デフォルトの名無しさん
15/08/01 02:39:02.21 T8vYSDDC.net
>>103
できればゲームを作りたいです・・・。そんなに凝ったものじゃなくていいんですが。
まず何から始めたらいいんでしょうか?
107:デフォルトの名無しさん
15/08/01 02:53:06.53 QSZH+PJp.net
>>104
まずはテトリスからだな
「C# テトリス」でググレ
いろいろでてくる
108:デフォルトの名無しさん
15/08/01 03:58:15.72 T8vYSDDC.net
>>105
URLリンク(dixq.net)
のソースコードを動かしてみたら、エラーが113個出ました。
50分でテトリス作ってみたとかあるんですが、本当にそんなことができるんですか?
8月中にできないとやばいんですが・・・
109:デフォルトの名無しさん
15/08/01 04:18:39.98 kwRHUfwj.net
ジャンケンマンの方がいいんじゃないの
110:デフォルトの名無しさん
15/08/01 08:20:21.83 yECmM48c.net
ゲーム載ってる本買って、まずパクる
キャラ変えたり、音変えたり、ルール変えたり、好きにすれ
111:デフォルトの名無しさん
15/08/01 13:27:36.22 R9VQSBfm.net
>>106
むいてない
2度とプログラムなんかやるな
112:デフォルトの名無しさん
15/08/01 13:53:48.80 UUE723C3.net
>>106
動的なゲームではなく、まずはFormでも使ってウィンドウにhello worldと表示するだけのプログラムを作ってから質問してくれ
113:デフォルトの名無しさん
15/08/01 14:25:14.32 aojbSuUF.net
まいこんべーしっくまがじんという本を買ってくるんだ
たくさんゲームのプログラムが載ってるゾ
114:デフォルトの名無しさん
15/08/01 18:00:25.27 QVboZV4V.net
GCの性質と値オブジェクトって相性最悪な気がするんだけど
stringはどうやってパフォーマンスを担保してるの?
115: ◆QZaw55cn4c
15/08/01 19:26:52.48 KBiDhOrm.net
>>112
immutable
116:デフォルトの名無しさん
15/08/01 19:44:47.02 4FytA4pZ.net
値型はスタックに確保されるし
Stringは値型じゃないし
何がなにやら
117:デフォルトの名無しさん
15/08/01 19:46:39.35 UepidV+b.net
stringは特別な存在、とだけ憶えとけば大丈夫
118:デフォルトの名無しさん
15/08/01 20:38:03.25 xLNzW59X.net
>>113
immutableはCoWでもむしろパフォーマンス悪いだろ
119:デフォルトの名無しさん
15/08/01 22:14:12.34 aojbSuUF.net
同じ文字列を使う分には速いゾ
120:デフォルトの名無しさん
15/08/01 23:49:12.00 QVboZV4V.net
>>113-114
意味不明
>>115-117
stringは特別に最適化されたGC処理されるって事?
121:デフォルトの名無しさん
15/08/01 23:58:38.39 kwRHUfwj.net
元の質問が微妙に意味不明だから仕方ないのでは
122:デフォルトの名無しさん
15/08/02 01:21:35.36 uppJpE2l.net
Immutableはlockする必要がないオブジェクトという事だ
GCとは全く無関係ではないが、この場合焦点がボケてるね
123:デフォルトの名無しさん
15/08/02 06:31:34.45 dgw1R64K.net
>Immutableはlockする必要がないオブジェクトという事だ
Itaniumの.NETをまだ使ってる奴がいたらどうすんだよ
x86 CPUが強いメモリモデルだからって無茶すんなタコ
124:デフォルトの名無しさん
15/08/02 12:06:07.57 WsWDxjYJ.net
>>121
デザインパターン入門[マルチスレッド編]くらい読めよ・・・
125:デフォルトの名無しさん
15/08/02 12:17:15.75 qgcm2xe/.net
stringで文字列処理するとオブジェクト数がメチャ増えるからGCと相性が悪い
StringBuilderを使っても引数に渡す文字列は結局オブジェクトだからオブジェクト数の削減にはならない
CLRでは文字列とGCの相性は最悪と言える
126:デフォルトの名無しさん
15/08/02 12:25:36.10 tdoSvti6.net
>stringで文字列処理するとオブジェクト数がメチャ増えるからGCと相性が悪い
ぼく初心者、これの意味が分からない
127:デフォルトの名無しさん
15/08/02 12:25:39.75 LFE7g0os.net
世代別GCなので平気です
128:デフォルトの名無しさん
15/08/02 12:27:03.30 LFE7g0os.net
stringはメモリ以外のリソースを含んでいないのでGCと相性がいいです
129:デフォルトの名無しさん
15/08/02 12:44:13.40 qgcm2xe/.net
>>125
ちょっとしたビジネスロジックに含まれる文字列計算でもすぐに第一世代を圧迫するので平気ではありません
>>126
マネージメモリのみを使う他のクラスのオブジェクト同士で比較すると
オブジェクトの生成が大量発生する文字列はgcと相性が悪いです
130:デフォルトの名無しさん
15/08/02 12:47:30.80 +O2Hc9iF.net
はあ、で、だから何?
言いたいことが言い終わったなら世間からGCされて死ねよ
俺がお前の家に行ってFinalizer実行してやろうか
131:デフォルトの名無しさん
15/08/02 12:56:45.82 LFE7g0os.net
第一世代が圧迫されて、GCが発動して直ちに解放されたら、それでいいじゃないですか
言っている意味が分かりません
132:デフォルトの名無しさん
15/08/02 13:06:24.68 wlM1NnFc.net
文字列計算
↑これの意味からして分からんのだが
133:デフォルトの名無しさん
15/08/02 13:10:24.61 qgcm2xe/.net
>>129
残念ながら第二世代へ昇格してしまうオブジェクトがあるので直ちに解放されるという認識は甘すぎます
134:デフォルトの名無しさん
15/08/02 13:15:42.32 LFE7g0os.net
彼は、おかしなことを言っていると言うことが分からないんですよ
文字列で溢れかえるのは、文字列をたくさん作ったからであって、
そのプログラムの仕様なんですが、彼にはそれが分からないんですね。
GCの無い言語でもdeleteがたくさん発生するわけで、同じことなんです。
GCの有る無しは関係ないということが分からないんです
135:デフォルトの名無しさん
15/08/02 13:54:15.30 HOry/lAS.net
お前らは暇つぶしの相手をさせられてるだけだな
136:デフォルトの名無しさん
15/08/02 14:09:04.38 qgcm2xe/.net
>>132
Cであればメモリを即時解放できます
スタックに文字列を格納したり
ヒープの再利用も容易いです
あなたの理解は素人レベルですよ
137:デフォルトの名無しさん
15/08/02 14:25:14.82 LFE7g0os.net
Cのfreeの処理がどれだけ重い処理なのか知らないのですか?
即時開放=同期処理というだけですが、それがどうかしたんですか?
論理アドレス空間が断片化するのは無視ですか?
138:デフォルトの名無しさん
15/08/02 14:30:15.00 qgcm2xe/.net
>>135
ここまでとは…
Cなら標準のメモリアロケーションに頼る必要はありません
カスタムアロケータで確保した文字列にも既存の文字列用資産を活用できます
しかしC#ではマネージ文字列でなければ便利なライブラリが使えないのです
文字列とCLRひいてはGCの相性はやはり最悪なのでしたとさ
139:デフォルトの名無しさん
15/08/02 14:41:33.06 +O2Hc9iF.net
黙れ
殺すぞ
140:デフォルトの名無しさん
15/08/02 14:43:39.46 LFE7g0os.net
彼の言っている事は意味不明なんですよ。
文字列がGCに向いていないなら、他のすべてのリソースはGCは向いていない
141:デフォルトの名無しさん
15/08/02 14:50:20.59 qgcm2xe/.net
>>138
理解が足りていないのですね
文字列は他のクラスよりはるかに多くのインスタンスを必要とされるものです
ゆえに文字列を通常のGCに当てはめて処理するのは愚かであると言えます
文字列は文字列に最適化された別のメモリ管理システムを使って管理すべきなのです
142:デフォルトの名無しさん
15/08/02 14:50:35.31 LFE7g0os.net
GCが嫌いなら初めからそう書けばよい。
文字列のようなGCの得意分野を持ち出して、向いていない、とか言い出すから分からなくなる。
143:デフォルトの名無しさん
15/08/02 16:12:28.48 +B7/KlLQ.net
いや、別に得意分野じゃないと思うけど…
immutableならなおさら、操作の度に細かいインスタンス出てくるので、
ヒープメモリの管理に割く処理なんて無い方が良い
C++ならスタック内だけで消費されるのも本当
144:デフォルトの名無しさん
15/08/02 16:36:46.05 +O2Hc9iF.net
うるせえ
お前も殺すか
145:デフォルトの名無しさん
15/08/02 16:44:47.75 JzmP3MFk.net
どうしてこんなくだらない話をいつまでも続けられるのか。
暇なのか?馬鹿丸出しだな。
146:デフォルトの名無しさん
15/08/02 16:45:41.27 MUxSxVtD.net
つ 夏休み
147:デフォルトの名無しさん
15/08/02 17:26:37.18 4jhYOwvv.net
うるせーな、メモリ管理したければC++使え
ここは何のスレか言ってみろ
C#はGC使うんだよ
148:デフォルトの名無しさん
15/08/02 17:39:16.04 SLv/zRdd.net
QZに釣られてやがる
149:デフォルトの名無しさん
15/08/02 18:14:35.59 /ORiOewr.net
ラムダ式、LINQ、Taskを普通に使えるスキルのあるC#開発者人口は日本にどのくらいいると思いますか?
うちの会社の連中、そんなもん使わなくてもコーディングできると言って聞きません。
外部社員でラムダ式が使える奴も見たことない。
これが普通なんですかね?
150:デフォルトの名無しさん
15/08/02 18:16:16.70 SLv/zRdd.net
そのC#のラムダ式って不動点コンビネータが構成できない似非じゃなかったっけ.
そんなラムダ式なんか要らない
151:デフォルトの名無しさん
15/08/02 18:23:38.38 GEMDX31J.net
責任取るのが嫌だから導入しねーだけだろ
事なかれ
152:デフォルトの名無しさん
15/08/02 18:35:48.73 hYBXycnP.net
>>147
全体の5%でも居れば良い方じゃね?
とりあえず、うちの社内の人間でラムダ式やらLINQが使えない奴は総じてソースが糞だよ
というかプログラムの学習意欲が全くないから新しい技術を取り込もうという気すらない
153:デフォルトの名無しさん
15/08/02 18:37:32.45 mqZtRy/B.net
>>150
周りに合わせろ雑魚が。
154:デフォルトの名無しさん
15/08/02 18:43:32.27 SLv/zRdd.net
新しい仕様がなんでもいいわけじゃない
ラムダ式はラムダ式であることの意味がない?なもの
155:デフォルトの名無しさん
15/08/02 18:43:44.25 UnTn4u7/.net
>>147
それが普通なのかしらんが
おれの周りもそう
今ので動くから新しいことは覚えない
プログラマーってこんな集まりだったんだって思っている
趣味でプログラムやってるのが俺だけ
156:デフォルトの名無しさん
15/08/02 18:44:50.65 hYBXycnP.net
>>151
10年以上前の技術で止まったままの奴らに合わせる気はないわ
157:デフォルトの名無しさん
15/08/02 19:42:53.76 qgcm2xe/.net
プログラム勉強する時間があったら遊んだ方が有意義に決まってるだろ
158:デフォルトの名無しさん
15/08/02 19:52:54.86 WqOvzvBs.net
お前は死んだ方が有意義だけどな
159:デフォルトの名無しさん
15/08/02 20:13:52.63 qgcm2xe/.net
>>156
でも遊んじゃうんだなぁ~
めんどくさい事は外注か新人に丸投げしてな
160:デフォルトの名無しさん
15/08/02 20:24:43.63 Ofq9w7gw.net
>>99
C++はもう五年以上やってないし、そっちへは行ってないよ
spiritの人みたいなのならともかく、今となっては現在も技術維持している人に混ざって応えられるだけのレスを返す自信は無いし
また、C++を使った開発予定ももうないので
見つけたのなら、それはキミの仲間だよw
161:デフォルトの名無しさん
15/08/02 20:28:28.25 0wmkVz0F.net
何があったか知らんけど、相手に変なあだ名を付けて呼んでる奴がいたら
8割方そいつが論争に負けた方だw
精神勝利法って奴だな
162:デフォルトの名無しさん
15/08/02 20:42:15.23 jaEEYgaD.net
ソフトウェア技術の進歩は早いから
20歳頃に勉強した技術にいつまでも固執していると、使い物にならなくなって
よく言う、プログラマー35歳定年説ってのに引っ掛かっちゃうよ
163:デフォルトの名無しさん
15/08/02 21:05:04.87 OoqJwaHz.net
>>153
覚えずにやるからとても非効率
そういう輩には旧VBがびったりだわ
164:デフォルトの名無しさん
15/08/02 21:06:42.06 ZVKO9GMz.net
C#のLINQやらラムダ式やら、世に出てから何年経ってると思ってんだ
って話だよな
なんでこんなに普及率が低いのかと
継承だらけのコード書く奴が偉いと思ったら大間違いだ
165:デフォルトの名無しさん
15/08/02 21:16:31.19 qgcm2xe/.net
そういうのは趣味だけにしておけよカス
166:デフォルトの名無しさん
15/08/02 21:18:34.51 Ofq9w7gw.net
新機能が流行らない理由はMicrosoftに落ち着きがないからだろうな
Windows8とか余計なことし過ぎなんだよ
あれでは雨後の筍のようにバズワードに飛びついて刹那の利益を得るイナゴ開発者しか集まらない
細かいバージョンアップは従来の客層には興味のない話だろうし
そして何度もバージョンアップするならある程度まとめて移行する事を考えるだろうし
そのうち、もうちょっと待ってからが延々待ちに変わってしまうよね
167:デフォルトの名無しさん
15/08/02 21:21:44.75 OaNtdkYp.net
javaのswingの継承の階層は凄すぎる
168:デフォルトの名無しさん
15/08/02 21:32:05.14 +O2Hc9iF.net
>>163
お前の存在も冗談なら良かったな
169:デフォルトの名無しさん
15/08/02 21:36:00.70 +x5c8m5K.net
>>160
おれロト7当たったので自主隠居しました
170:デフォルトの名無しさん
15/08/02 21:37:05.83 +B7/KlLQ.net
>>164
過去レスで無思慮にasync批判してた人が
そんな事言っても説得力なさ杉
171:デフォルトの名無しさん
15/08/02 21:39:58.97 Ofq9w7gw.net
>>168
無思慮なのはお前だけだろw
だいぶ調べてみたが、多くのブログでも問題点について色々懸念しつつ使うというのが常套手段のようだしな
172:デフォルトの名無しさん
15/08/02 21:46:09.22 0wmkVz0F.net
WPFは流行らなくて本当によかったw
173:デフォルトの名無しさん
15/08/02 21:49:46.15 +B7/KlLQ.net
>>169
あんな単純な機構に何の懸念があるの?
ちゃんとデコンパイルしたコード見たの?
174:デフォルトの名無しさん
15/08/02 21:49:56.58 9q07iZqZ.net
ひどい、俺がんばったのに・・・・挫折したけど
175:デフォルトの名無しさん
15/08/02 22:19:13.17 HOry/lAS.net
>>169←これtry{}finallyの人?
176:デフォルトの名無しさん
15/08/02 22:21:35.57 Ofq9w7gw.net
WPFはそのうちATLみたいな微妙な物になってしまいそうな予感はしなくもない ^^;
177:デフォルトの名無しさん
15/08/02 22:25:58.33 wrwHaPDN.net
HTMLでローカルアプリの画面が作れたら
凄く興味あるけど、ニッチなXMLとか
嵌ったら抜け出すの大変そうで関わりたくない。
178:デフォルトの名無しさん
15/08/02 22:28:09.68 Ufblihje.net
HTAが泣いてるぞ
179:デフォルトの名無しさん
15/08/03 01:51:07.90 pNSXFoy6.net
リフレクションってもう使う意味ないですよね?
dynamic型を使う方がいいですよね?
180:デフォルトの名無しさん
15/08/03 12:38:55.67 R9pQU16a.net
>>162
C#のラムダ式はYコンビネータを記述できない紛い物
無名デリゲートで使うだけならまだしも、
>>147 のようにC#erの実力や進取スタンス判定に使うなど
プログラミングの基本がわかっていない馬鹿としかいいようがない
害になるから消えてほしい
181:デフォルトの名無しさん
15/08/03 13:31:25.78 CtQaDoTD.net
>>178
ラムダ式を理解できない老害こそ消えるべき♪
182:デフォルトの名無しさん
15/08/03 15:01:00.11 gHG/w8Da.net
不動点コンビネータだのYコンビネータだの
言ってみたかったんだよね
183:デフォルトの名無しさん
15/08/03 18:16:27.74 LdMIlPMJ.net
不動点コンビネータが記述できないものはラムダでない
という持論が世界普遍的に正しいものと信じて盲信する
キチガイのタワゴトです
184:デフォルトの名無しさん
15/08/03 18:42:16.07 scYGV4Wn.net
たわごとなどききたくない
185:デフォルトの名無しさん
15/08/03 19:32:53.72 4R/NRCjC.net
Microsoftは不要な技術を切り捨てただけ
コンビネータ君もまた不要な人材なので社会から切り捨てられる運命なんだね
186:デフォルトの名無しさん
15/08/03 20:35:34.82 QrF7rs+g.net
不動点コンビネータが記述できないことがどれだけ実務の支障になるんだ?
煽りじゃなく具体例を教えてくれや
187:デフォルトの名無しさん
15/08/03 21:05:47.80 2JpaSVHC.net
Zコンビネータなら書けるし
書けてもいいことないけど
188:デフォルトの名無しさん
15/08/03 21:59:21.98 fkEOVG2I.net
Yコンビネータ使うような案件はF#に任せればいいだけだ
全部C#にするのがまず間違っとる
189:デフォルトの名無しさん
15/08/03 22:20:26.90 jNbM75sK.net
動きゃいいんだよ
190:デフォルトの名無しさん
15/08/03 22:20:38.41 VRwLh7Nw.net
Yコンピネータが無いと書けないコードや利点があるとすれば
それは、ラムダ式を引数にしている関数が再帰をしたい場合とかだろう
(x) => x == 0 ? 1 : x*thisfunc(x)
みたいな感じで、自身の関数名をキーワードとして書ければ良い気がする、直接的で分かりやすい
Yコンピネータがあれば無くてもできるというがコードが汚い
あと、名前空間を汚さずに済むケースが増えるなどかな
汚れの少ない名前空間ではインテリセンスがうまく機能してくれるから、重要といえば重要
ただ、これも名前空間をもっと綺麗に整理できるような機能があってくれた方がいいな
関数内クラスとか欲しい
191:デフォルトの名無しさん
15/08/03 22:24:33.54 fkEOVG2I.net
いや、Zは書けるんでしょ?
192:デフォルトの名無しさん
15/08/03 22:25:11.33 7E1soqtP.net
finally君は何時になったらC#卒業するの?
193:デフォルトの名無しさん
15/08/03 22:29:55.11 VRwLh7Nw.net
dynamic 使って書くかねw
194:デフォルトの名無しさん
15/08/03 22:38:49.23 fkEOVG2I.net
よく見たらコン"ピ"ネータ
何故知ったかぶりするのか
195:デフォルトの名無しさん
15/08/03 22:38:55.27 vbPvRk2A.net
「ラムダ式」などと誇大にいわず,無名デリゲートでお茶を濁しておればよかったんだが
196:デフォルトの名無しさん
15/08/03 22:44:36.51 VRwLh7Nw.net
>>193
ラムダ式はLINQで式ツリーを作ったもんだから必要になったから別途用意したんじゃないかと
無名デリゲートではコンパイルしてSQL文を吐き出すといった操作はできないから
197:デフォルトの名無しさん
15/08/04 03:36:34.18 Ru0/ho15.net
本当ただの簡易AST変換だな
198:デフォルトの名無しさん
15/08/04 12:27:43.87 m+fooKhS.net
わしのラムダは108式まであるぞ
199:デフォルトの名無しさん
15/08/04 13:57:48.78 bMUTQ2fC.net
>>193
まぁこれでこそC#って感じだけどな
もちろん悪い意味で
200:デフォルトの名無しさん
15/08/04 16:48:14.90 wPc1LIE6.net
ヒント :夏休み
201:デフォルトの名無しさん
15/08/04 17:04:57.64 NUOEqkl8.net
仕事ができなくて溜まったストレスぶちまけてるおっさんだろw
学生が暴れているようには見えんわ
202:デフォルトの名無しさん
15/08/04 17:34:46.86 aAgYc1Dv.net
質問があります。
これまでC#でCSVデータをシリアル化して外部ファイルに出力する
機能を実装していました。この「�
203:Vリアル化したファイル」というのは WEB開発言語PHPでシリアル化したファイルと互換性はありますか? 例えば、PHPでシリアル化したデータをWEBサーバ上に配置し クライアントツール(C#)からそのシリアル化したデータを ローカルにダウンロードし、そして逆シリアル化して復元 といった運用は出来のでしょうか?
204:デフォルトの名無しさん
15/08/04 17:49:57.34 NUOEqkl8.net
C#にCSV用の標準ライブラリってあったっけ?
自前で実装したなら、分かるのは実装した本人だけかと
ちなみに自分はexcelに仕様を合わせたライブラリを作っている
205:デフォルトの名無しさん
15/08/04 18:09:56.36 0uDnfCnt.net
>>201
そういう問題じゃないと思うけどw
206:デフォルトの名無しさん
15/08/04 18:14:08.39 wPc1LIE6.net
「CSVデータをシリアル化して外部ファイルに出力」したらテキストのCSVファイルになるんじゃなくて?
207:デフォルトの名無しさん
15/08/04 18:47:05.52 rfwH7+bZ.net
シリアル化って言いたかっただけじゃないの?
208:デフォルトの名無しさん
15/08/04 18:49:56.95 N21FScZA.net
CSVはそれ自体が既にシリアル化されています
209:デフォルトの名無しさん
15/08/04 19:07:37.25 JacjvlNa.net
>>200
CSVファイルと言うのは通常テキストファイルの一種なので
それを使う事を普通はシリアル化/逆シリアル化とは呼びません
CSVファイルは細かい仕様がいろいろあるので
CSVというだけでは互換性があるかどうかは判断できません
210:デフォルトの名無しさん
15/08/04 19:15:23.79 qaA+gaVg.net
PowerShell なら、import-csv, export-csv,
-encoding で、UTF-8, Shift-JIS のエンコードも指定できる
Excelのファイル形式では、
6 CSV
22 Mac CSV
23 Windows CSV
24 MSDOS CSV
"a,b","a b"
こういうように、文字列の中に、
カンマや空白が入っていると、
ややこしいので、タブ区切り(TSV)を使う
211:デフォルトの名無しさん
15/08/04 19:19:05.97 r/hdf4e8.net
タブ使いたいときはどうすんだよ低能
212:デフォルトの名無しさん
15/08/04 19:26:03.23 aAgYc1Dv.net
>>206
そうなんですね。ありがとうございます。
ようは、せっせと作ったあるデータを悪い事するヤツに
ぱくられるのが嫌でシリアル化しようと思っていた次第です。
もっともぱくれる人はそもそもぱくったりしないで自分でそういった用途のツールは
作れるので被害数は少ないのかな~なんて悩んでます。
213:デフォルトの名無しさん
15/08/04 19:29:44.57 rfwH7+bZ.net
暗号化と間違えてる?
214:デフォルトの名無しさん
15/08/04 19:33:30.97 NUOEqkl8.net
>>209
それシリアル化と違うw
215:デフォルトの名無しさん
15/08/04 19:43:04.44 4wCZUsr6.net
さすが、PHPer
216:デフォルトの名無しさん
15/08/04 19:50:47.06 2RIpmI50.net
PHPerとVBerは低脳、みんな分かっていることじゃないか
217:デフォルトの名無しさん
15/08/04 19:52:41.23 NUOEqkl8.net
揚げ足取りと煽りしかできない低能の例 >>212-213
218:デフォルトの名無しさん
15/08/04 20:15:51.50 si5ERY1h.net
>>200のシリアル化が暗号化の事言っているなら出来るでしょ
219:デフォルトの名無しさん
15/08/04 20:21:13.38 D63J00pB.net
C#もVBも変わらんやろ
220:デフォルトの名無しさん
15/08/04 20:23:11.10 DSzfOyI8.net
根本的な頭の差だよな
221:デフォルトの名無しさん
15/08/04 20:30:05.37 aAgYc1Dv.net
これで保存したらシリアル化してる事になるよね?
C#で保存したファイルと同じデータをWEBサーバ側(PHP)で作る事は出来ますか?
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(fs, Instance);
222:デフォルトの名無しさん
15/08/04 20:34:50.51 VO4nX6cY.net
もうXMLでシリアライズ()しとけよ
誰でも見れるけどな!
223:デフォルトの名無しさん
15/08/04 20:37:30.69 tHoFWEHK.net
PHP側でBinaryFormatter実装すれば
暗号化が目的ならパスワードZIP使うのが無難
224:デフォルトの名無しさん
15/08/04 20:42:06.66 aAgYc1Dv.net
>>219
じゃー、いみねーだろ
>>220
解読ぱすわーどをreflectorとかでのぞかれちゃいますよね?
225:デフォルトの名無しさん
15/08/04 20:47:55.07 DSzfOyI8.net
BinaryFormatterがOKなら暗号化いらねーだろw
226:デフォルトの名無しさん
15/08/04 20:47:56.74 NUOEqkl8.net
既にCSVの出力があるなら、それに独自の暗号化で対応するのが良い気がする
単純な暗号化でも謎のフォーマットであれば解読する気になるのは難しいから
それよりシリアライズという言葉に拘っても仕方ないでしょ
227:デフォルトの名無しさん
15/08/04 20:52:14.90 DSzfOyI8.net
reflector使われる前提で謎のアルゴリズムも糞もあるのか?
228:デフォルトの名無しさん
15/08/04 21:03:17.96 NUOEqkl8.net
>>224
お前らがそうやって煽るから目的見失って意固地になってんのが問題なんで
229:デフォルトの名無しさん
15/08/04 21:03:56.06 tHoFWEHK.net
クライアントに置くプログラムだったら何しても無駄
230:デフォルトの名無しさん
15/08/04 21:06:55.71 DSzfOyI8.net
reflectorでパスワードが見えなければいいなら
データをwebからダウンロードする時にパスワードを一緒に発行したらいい
231:デフォルトの名無しさん
15/08/04 21:11:56.51 aAgYc1Dv.net
>>223
サンキュー!そうします。
>>224
黙れ糞
>>227
通信を監視されたらパスワードばれるよね?
232:デフォルトの名無しさん
15/08/04 21:14:00.50 DSzfOyI8.net
パスワードがどうやってデータに含まれてるか、お前が漏らさなきゃ大丈夫だよ
小便垂れ小僧
233:デフォルトの名無しさん
15/08/04 21:16:18.14 HOSQCMMN.net
SSL通信を監視してパスワード抜いて暗号化のされ方を調べて復号化するのに比べたら
Reflectorでコード読んで同じ方法で戻すなんて赤子の手をひねるようなもの
234:デフォルトの名無しさん
15/08/04 21:19:21.40 m7aLZgrl.net
いまどきSSL通信なんてどうやってやるんだよ
SSLは10年以上前に廃れただろ
235:デフォルトの名無しさん
15/08/04 21:21:56.64 NUOEqkl8.net
売り言葉に買い言葉になっているだけで、当初の投稿内容を見る限りそこまでの暗号化が必要な何かには見えない件w
236:デフォルトの名無しさん
15/08/04 21:25:30.10 HOSQCMMN.net
>>231
今時HTTPSを全く使わずに生活してるとかどこの原始人だよw
237:デフォルトの名無しさん
15/08/04 21:34:50.08 XZl3Vdz7.net
TLS言いたいだけだろ、当人はw
238:デフォルトの名無しさん
15/08/04 21:42:30.48 GsFgeSUy.net
なんか悪いほうに悪いほうに行ってるな
スレの質的に
239:デフォルトの名無しさん
15/08/04 21:47:08.67 wPc1LIE6.net
いやこんなんもんやで
240:デフォルトの名無しさん
15/08/04 21:54:10.88 8AFF5O0U.net
>>201
> C#にCSV用の標準ライブラリってあったっけ?
.NETFramework だけど Microsoft.VisualBasic.FileIO.TextFieldParser クラスが定番みたいだな
241:デフォルトの名無しさん
15/08/04 21:57:51.71 si5ERY1h.net
>>232
>>209みたらパスワードZIPが最適解の様に思えるわ
242:デフォルトの名無しさん
15/08/04 22:00:16.11 QCZq3/o/.net
ユニコード文字もマトモに扱えないZIPが最適とな
243:デフォルトの名無しさん
15/08/04 22:01:37.91 GsFgeSUy.net
>>238
なんで「最適解」って言ったし?
「最適」じゃなくて
244:デフォルトの名無しさん
15/08/04 22:48:49.48 a+hgGQs8.net
>>240
それは一つ前の自分のレス読んだ上で言っているのか?
245:デフォルトの名無しさん
15/08/05 00:46:50.12 Nv7QXLgv.net
>>229
お前と違って皆スキルたけーんだよ。じじぃ
246:デフォルトの名無しさん
15/08/05 00:48:53.88 w1UWuDWC.net
>>232
オメーが引き受けたんだからオメーがきっちり回答しろボケ
247:デフォルトの名無しさん
15/08/05 01:13:56.73 jL5pDRik.net
初心者ですが
このスレ全部読めばアプリ1本つくれますか?
248:デフォルトの名無しさん
15/08/05 01:17:03.57 bdT2SiZU.net
>>244
ハローワールドなら作れるんじゃね?
249:デフォルトの名無しさん
15/08/05 06:48:51.18 12Hajjty.net
>>243
本人もう方向性決めてるんだから、この話はもう終わってるんだよ
能無しは黙るという事を覚えろ
250:デフォルトの名無しさん
15/08/05 07:13:55.18 w1UWuDWC.net
>>246
いちいちしょうもない話題で慣れ合いするわ
初心者質問引き受けてかき回すわ
お前こそ能無しなんだから黙っとけよ
251:デフォルトの名無しさん
15/08/05 07:17:40.22 tQ69mcSf.net
じゃあハローワールドの書き方教えてください
252:デフォルトの名無しさん
15/08/05 07:29:23.76 e4gAPQI9.net
いやです
253:デフォルトの名無しさん
15/08/05 09:02:51.39 4qiJRodC.net
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\>echo ハローワールド
ハローワールド
C:\>
254:デフォルトの名無しさん
15/08/05 09:37:48.34 nxXw/daG.net
>>246
お前はスレ分けてる理由理解しとけよチンカス
255:デフォルトの名無しさん
15/08/05 09:52:29.59 dcbhMYr4.net
URLリンク(jbbs.shitaraba.net)
C#おしえてくださ
256:デフォルトの名無しさん
15/08/05 15:33:24.08 bdT2SiZU.net
2Dゲームの当たり判定で透過pngを読み込んで幅*高さのbool配列を作る。
透明部分をfalseにして残りはtrue。
これで当たり判定をしたいんだけど重いかな?
257:デフォルトの名無しさん
15/08/05 16:04:06.01 IqH75krm.net
最初矩形で判定してあたってたら詳細チェックかな?
まあ労力の割に報われない気もする
258:デフォルトの名無しさん
15/08/05 16:40:58.05 bdT2SiZU.net
>>254
その方法いいですね。流石に最初からしてたらマズイか。
式が乗ってるサイトとかないですかね?
259:デフォルトの名無しさん
15/08/05 17:05:58.09 IqH75krm.net
まいかいググるからサイトはわからん、、AABBでググるとかどうかなあ
260:デフォルトの名無しさん
15/08/05 17:23:40.78 mF9W7r6V.net
そもそもピクセルごとに厳密にヒットテストする必要があるのか疑問だけど、
BitBltを使ったら思いっきり高速化できそうな気が
261:デフォルトの名無しさん
15/08/05 19:35:05.62 /gxT3Aye.net
ヒットテスト??
262:デフォルトの名無しさん
15/08/05 19:37:58.35 spC4qo2X.net
距離で判定だろ
矩形判定したら大抵は直感的じゃないのと条件分岐回数が増える
263:デフォルトの名無しさん
15/08/05 20:46:05.43 bdT2SiZU.net
短形を回転させたのは短形じゃ無理だよな。
当たり判定ってどれが一番速いの?
264:デフォルトの名無しさん
15/08/05 20:50:23.38 A44YML9F.net
中心点からの距離
265:デフォルトの名無しさん
15/08/05 20:51:18.27 pM9rsz35.net
た....矩形w
266:デフォルトの名無しさん
15/08/05 21:15:47.26 7hSDQEcX.net
クソワロタ
267:デフォルトの名無しさん
15/08/05 21:22:56.01 e4gAPQI9.net
あー>>260。ちょっと職員室に来なさい。
268:デフォルトの名無しさん
15/08/05 21:24:13.47 /SddKZ7Q.net
260のソースコードは短形で統一されているのかな
ちょっと気になるから見てみたいわ
269:デフォルトの名無しさん
15/08/05 21:28:51.37 HSrSK7kE.net
>>237
固定長も扱える優れものかと思ったら、ホントに文字数だからバイト数で指定できるようにしてほしいの
270:デフォルトの名無しさん
15/08/05 21:30:58.55 /lT/VJHo.net
画像は矩形なんだから、最終的にピクセル単位で判定するんなら矩形でしょ
円使ったら単純な実装だと矩形に比べて無駄にピクセル単位の判定の頻度が増えるから
全ピクセルが収まるような最小の円を求めるとかしなきゃいけなくて無駄に面倒
まあ普通は複数の円の組み合わせで十分じゃないかな
回転や拡大縮小も特別な考慮がいらないし速いしベクトル計算で統一できてソース綺麗になるし
271:デフォルトの名無しさん
15/08/05 21:31:34.62 12Hajjty.net
ゲームとか作らんし使ったこともないけど System.Numerics.Vectors にマルチメディア拡張命令を直接生成できる構造体があるという話をふと思い出した
サクッとググッてみたら、ビットごとの and or もってるから
これを使えば 128bit まとめてテストできるんじゃないかな
これでたいぶ早くなるかと
#すでに上がっているBitBltの方がもっと早そうなので、オマケ程度に
272:デフォルトの名無しさん
15/08/05 21:40:49.37 /lT/VJHo.net
>>268
最適化は小手先の細工の前にアルゴリズムを工夫するんだよ。
例えば画像を小さな領域に分割しておけば、全部透明な領域は判定しなくていいだろ?
C++&SSE&インラインアセンブラで書き直したりするより遥かに速くなる。
273:デフォルトの名無しさん
15/08/05 21:44:27.09 12Hajjty.net
>>269
俺凄いってそこまでアピールしないと生きていけないのかよ、この屑w
#見ての通りオマケ程度にみてくれという話なんだが
274:デフォルトの名無しさん
15/08/05 21:44:45.24 pM9rsz35.net
>>269
どっちかって言うとビット演算を使う方が王道で、小さな領域に分割云々の方が余程小手先の話に聞こえるけど。
275:デフォルトの名無しさん
15/08/05 21:47:10.94 nxXw/daG.net
いちいち#でオフコメ気取ってるのは何なの?
死ねよクソ/.er
276:デフォルトの名無しさん
15/08/05 21:51:13.43 y9IIWzjN.net
2Dの当たり判定なら、モートン順序が有名
URLリンク(marupeke296.com)
277:デフォルトの名無しさん
15/08/05 21:56:08.41 /lT/VJHo.net
>>271
それはリニアサーチが王道でクイックソートは小手先だと言ってるようなもの
278:274
15/08/05 21:58:24.93 /lT/VJHo.net
訂正
クイックソートじゃなくてバイナリサーチの間違い
279:デフォルトの名無しさん
15/08/05 22:02:40.30 12Hajjty.net
うぜぇ無能だな
自分、この手の分野まったくのド素人だが、それでも同じアルゴリズムネタなら >>273 の話の方がハイクオリティーな話だなと分かるし、>>274 無能って分かるんだけどw
>>273 参考になりました、機会があったら採用したい
280:デフォルトの名無しさん
15/08/05 22:03:52.92 e4gAPQI9.net
クソども
仲良くしろよ?
281:デフォルトの名無しさん
15/08/05 22:06:53.46 /lT/VJHo.net
>>273はまさに領域分割であって、
ビット演算がどうのというのは大した問題じゃないんだが
本当に何もわかってないんだな
282:デフォルトの名無しさん
15/08/05 22:10:51.37 e4gAPQI9.net
ゲーム以外で当たり判定が必要になる局面ってあるのかな
もっとUIがインタラクティブ()になったら多用されるのかな
283:デフォルトの名無しさん
15/08/05 22:12:25.26 w1UWuDWC.net
しかも>>273のアルゴリズムって当たり判定の常套手段だしな
284:デフォルトの名無しさん
15/08/05 22:14:01.89 /lT/VJHo.net
>>279
シミュレーション まあそのまんまだが
もっと身近な例だとマウスでボタンをクリックするのも当たり判定だよ
285:デフォルトの名無しさん
15/08/05 22:16:34.25 12Hajjty.net
モートン順序は高次統計データの範囲限定に使えそうな気がした、次元の呪い除けになりそう
これを三次元に拡張するなら、xyxy... と並べる所を xyzxyz... と並べればいいかななど、一工夫すれば行ける?
高次元でも以下同様な感じで
あとで応用考えたい
286:デフォルトの名無しさん
15/08/05 22:19:00.22 pM9rsz35.net
面倒くさいんで全部は読んでないが、>>273は当たり判定のアルゴリズムじゃなくて
当たり判定をしなくていいオブジェクトをふるいにかけるアルゴリズムじゃないのか?
287:デフォルトの名無しさん
15/08/05 22:19:49.62 12Hajjty.net
>当たり判定をしなくていいオブジェクトをふるいにかけるアルゴリズムじゃないのか?
無能には分からないのさw 無能だから
288:デフォルトの名無しさん
15/08/05 22:21:24.58 ezlo0CHQ.net
>>283
そうよ
正確に言うといろいろあるふるいのひとつにすぎん
289:デフォルトの名無しさん
15/08/05 22:23:16.73 pM9rsz35.net
>>285
だったら少なくとも質問者の役にはあんまり立たないね
290:デフォルトの名無しさん
15/08/05 22:29:15.39 w1UWuDWC.net
>>282
いちいち自己愛高めな奴だなあ
確かに3次元衝突判定にも使うが
多変量解析で木分割してったら次数上がるほど指数関数的に増えるだろ
自分で考えるなんて無駄な事するより学習に時間割いとけよ
291:デフォルトの名無しさん
15/08/05 22:29:35.82 e4gAPQI9.net
>>281 まあカーソルのホットピクセルとかの1ピクセルの当たり判定は除外しようよ
293:デフォルトの名無しさん
15/08/05 22:32:44.74 y9IIWzjN.net
当たり判定アルゴリズム≒いらない物をふるいにかけるアルゴリズム
なぜならあたり判定そのものの速度はそれ以上改善の余地がないので
無駄な計算を省く方向で考える
294:デフォルトの名無しさん
15/08/05 22:37:05.34 12Hajjty.net
>>287
新しいネタあれば使ってみる
やってみて使えそうだったら使うし、使えなさそうなら捨てる、それだけだよ
見た感じシンブルなアルゴリズムに見えるから、これに割く時間的コストは少々で済みそうだし
ほんと、噛みつかないと気が済まない人だねw
295:デフォルトの名無しさん
15/08/05 22:37:53.90 HSrSK7kE.net
なんか早いね。シーシャープ流行ってる?
296:デフォルトの名無しさん
15/08/05 22:41:52.30 w1UWuDWC.net
>>290
解析で探索領域を限定する時に、
データも見ずに事前の分割方法で木分割なんてしないだろ?
それをわかってて言ってるとは思えないから突っ込んでるわけ
297:デフォルトの名無しさん
15/08/05 22:43:17.03 12Hajjty.net
>>292
そんなもんとりあえずぶちかましてみて、問題があったらその時考えりゃいいんだよw
めんどくせー奴だな
298:デフォルトの名無しさん
15/08/05 22:45:08.73 y9IIWzjN.net
>>291
単に誰にでも分かりやすい話題が出ただけでそ
最近、2chへの書き込み量はめっぽう減りましたね
しかし、誰にでも答えられる簡単な餌が投入されると、
直ちにたくさんのレスが帰ってきますので、たくさんの人がWatchしているもよう
たくさんの人が見ているのに、書き込みが少なくて流れにくいということは、
広告やスパムの餌食にあいやすいということでしょうか
299:デフォルトの名無しさん
15/08/05 22:50:15.10 4qiJRodC.net
僕ときれいなお姉さんとの当たり判定を教えてください
300:デフォルトの名無しさん
15/08/05 22:51:58.37 w1UWuDWC.net
>>293
だから基礎からやれってば
301:デフォルトの名無しさん
15/08/05 22:52:12.04 HSrSK7kE.net
>>295
まず駅にゆきます
302:デフォルトの名無しさん
15/08/05 22:57:02.95 12Hajjty.net
>>296
多分この分野でもお前よりだいぶ自分の方が詳しいと思うので(笑)
#時間は有限、無駄には出来ない。すぐできるものはすぐやれ!、これが俺流
303:デフォルトの名無しさん
15/08/05 22:59:18.61 p4ECD10b.net
なら死ねよ今すぐに
304:デフォルトの名無しさん
15/08/05 23:00:36.23 BSV0tPUM.net
話を無駄に長引かせたお前ほど無駄な存在はいないな
305:デフォルトの名無しさん
15/08/05 23:01:26.69 3yG9sQVS.net
#は半コテでも目指してるのか
306:デフォルトの名無しさん
15/08/05 23:01:51.67 nxXw/daG.net
おし、締まったな
ついでにカッコ良く自害してくれや
307:デフォルトの名無しさん
15/08/05 23:03:11.89 PXH9N0kW.net
小学生か中学生か知的障碍者の書いた様なレスばっかだなw
308:デフォルトの名無しさん
15/08/05 23:03:15.88 zxDgQD7q.net
目障りなら#をNGしてくださいってことでしょ
309:デフォルトの名無しさん
15/08/05 23:04:10.44 /SddKZ7Q.net
C#スレで#をNGにするのか
310:デフォルトの名無しさん
15/08/05 23:06:51.80 0I3R2SM7.net
正規表現NGができるなら^#でいいのかな
311:デフォルトの名無しさん
15/08/05 23:07:33.69 bdT2SiZU.net
今まで短形って思ってた・・・矩形なのね。
312:デフォルトの名無しさん
15/08/05 23:08:11.96 /lT/VJHo.net
>>286
領域に分割してピクセル単位の判定をするとして、
一方が完全透明→はずれ
両方が完全不透明→あたり
一方がグレーでもう片方が完全透明でない→該当領域を分割してそれぞれ再度判定
と繰り返していけばピクセル単位の判定ができるはずだから、
ツリーの更新や探索で似たような方法が使えないかな
313:デフォルトの名無しさん
15/08/05 23:14:34.62 y9IIWzjN.net
>>308
それでうまくいくんかね
普通は
親領域で判定してハズレ→完全にハズレ
親領域で判定してアタリの可能性有り→子領域で再判定
だと思うんだが
314:デフォルトの名無しさん
15/08/05 23:19:25.78 /lT/VJHo.net
>>309
それをピクセル単位の判定に適用すれば>>308になると思うんだけど、違ってる?
透明とか不透明とかグレーとかいうのは領域内の透明度の平均値と考えてほしい
315:デフォルトの名無しさん
15/08/05 23:24:17.12 w1UWuDWC.net
>>298
何の高次元を言ってるのかしらんけど
少なくとも文書間距離なんかの近傍探索じゃ使い物にならないよ
そこまでいうなら突き進めばいい、そして戻ってくるな
316:デフォルトの名無しさん
15/08/05 23:25:22.08 y9IIWzjN.net
なるほど
317:デフォルトの名無しさん
15/08/05 23:38:24.81 HSrSK7kE.net
次に服を脱ぎ…なんか荒れてんなあ
318:デフォルトの名無しさん
15/08/06 01:19:21.09 QYfkW8HM.net
finally野郎以降が酷い
エナジードレイン10回食らってもこうはならんわ
319:デフォルトの名無しさん
15/08/06 01:26:49.79 WAl/fNJ8.net
そりゃ、初登場の最初の洗礼が >>16 だからな
320:デフォルトの名無しさん
15/08/06 01:55:10.84 rwLMabch.net
C#相談室(質問に答えるとは言ってない)
321:デフォルトの名無しさん
15/08/06 04:44:04.83 Op1qw5HR.net
美容師カオリのダイエット日記
URLリンク(kaori-diet.sblo.jp)
322:デフォルトの名無しさん
15/08/06 09:10:55.30 DlVmD4pB.net
結局AABBは採用しないんか
323:デフォルトの名無しさん
15/08/06 11:26:40.44 kBFzylAm.net
>>315
わろたw
厳しく適切な>>16であったことが今わかる
324:デフォルトの名無しさん
15/08/06 20:22:19.09 kl/392J0.net
C#でこれまで hage_list.txt を test.ex
325:e から読み込んで その内容を画面に表示するプログラムを作っていました。 しかし、 hage_list.txt は普通にメモ帳で開けば見えてしまいます。 そこで test.exe に hage_list.txt を統合する方法が無いか 探していますがいまいち分かりません。 リソースファイルとか何かで昔exeにガッチャンコした事が あるのですが忘れてしまいました どなたか方法をご教示くいださい。
326:デフォルトの名無しさん
15/08/06 20:32:44.41 MITLwi1y.net
リソースファイルでggr
327:デフォルトの名無しさん
15/08/06 20:34:44.53 Zc/oKMcW.net
リソースエディタで開けば普通に見えるけどね
328:デフォルトの名無しさん
15/08/06 20:46:00.45 DlVmD4pB.net
埋め込みと暗号化は別に考えないとな
併用は可能
329:デフォルトの名無しさん
15/08/06 20:50:57.18 h5fzoUK9.net
暗号化するんならリソースとして組み込まなくてもいいんじゃねと思ってしまう
330:デフォルトの名無しさん
15/08/06 20:52:36.14 WJS3pxUO.net
なんでリソースなんだ??
データを内部に持つか外部に持つかは内容で決まるものだぞ?
見られたら恥ずかしい程度なら文字列のBASE64表現が簡単でオススメ
331:デフォルトの名無しさん
15/08/06 20:57:51.83 U/Ws3l7N.net
ユーザーに容易に触らせるか触らせないかの違いもあるだろう
332:デフォルトの名無しさん
15/08/06 20:58:09.44 WJS3pxUO.net
>>323-324
昔暗号化やろうとしたけど単体アプリで安全な鍵管理できなくてショックを受けた
333:デフォルトの名無しさん
15/08/07 09:10:01.50 6Ol1nxYi.net
Cの20年前のコーディングルールをC#に適用するのは頼むからやめてくれ
const変数は大文字で書けとか、条件式は左に値を書けとか
コードレビューでの指摘はそんなんばっか。まじで頭痛い
334:デフォルトの名無しさん
15/08/07 09:47:11.85 vg93TV/0.net
てめえの職場の話はマ板でやれ
335:デフォルトの名無しさん
15/08/07 11:08:14.50 Yq0yocgf.net
静的コードチェックツールぐらい使いなよ
336:デフォルトの名無しさん
15/08/07 11:43:48.15 3jkMWAMO.net
>>330
ふつーの会社は中で何するか分からないソフトは使わないよ。
君がテキトーだということはよく分かった。
337:デフォルトの名無しさん
15/08/07 11:46:14.75 nibSxy0k.net
何にもされねーよ
ツール通したらコードが書き換わるとでも思っているのか
338:デフォルトの名無しさん
15/08/07 12:27:17.42 Ge1vGbPu.net
書き換えなくても外部に送信するかもしれない
とかなんとか言って欲しいのか
C#関係ないから失せろカス
京浜東北線の電線で感電して死ね
339:デフォルトの名無しさん
15/08/07 13:15:27.67 AXM43nM4.net
>>320
ソリューションエクスプローラのプロジェクトのプロパティーを開くと、そこにリソースの項目があるので、そのファイルを追加すればいいよ
リソースへのアクセスの仕方は Properties.Resources.TextFile1 みたいな感じでできる
#否定と罵倒しかしない奴は死ねばいいと思うんだ
340:デフォルトの名無しさん
15/08/07 13:21:07.74 R/QQtRSb.net
>>334
お前まだ生きてたの?
死ねって言ったろ
家どこ?
手伝うから
341:デフォルトの名無しさん
15/08/07 13:27:59.28 EOKzEcHq.net
楽しいか?お前の生き方
342:デフォルトの名無しさん
15/08/07 15:15:47.58 HWJu9s4e.net
>>334
ありがとうございます!暴言ばかり吐く>>335みたいなマゴットとは違いますね。
343:デフォルトの名無しさん
15/08/07 18:11:32.21 5F35ZKAl.net
マゴットに失礼
344:デフォルトの名無しさん
15/08/07 19:20:01.12 Wf7UnCAa.net
>>331
コンパイラも自社開発か
そりゃスゲー
345:デフォルトの名無しさん
15/08/07 19:35:13.24 7Fy+2m0Y.net
安倍は許した
URLリンク(live.fc2.com)
346:デフォルトの名無しさん
15/08/07 20:00:32.25 Yq0yocgf.net
>>331
あ、うん、どこだってそうだよね(汗
347:デフォルトの名無しさん
15/08/07 20:07:26.86 dQ9fwwsL.net
>>331がインテルの社員で自社のコンパイラを使ってる可能性もびれそん
348:デフォルトの名無しさん
15/08/07 20:38:07.94 TSMSNX7R.net
>>342
インテルをふつーの会社とはあまり言わないけどな
349:デフォルトの名無しさん
15/08/07 21:19:01.22 TzkIo9sF.net
const変数は大文字で描いた方がなんとなくまわりから浮くから
あぁconst変数なんだなぁと分かる気がするからそうしてる
350:デフォルトの名無しさん
15/08/07 23:17:33.17 /BWZNXKg.net
>>344
気持ちは分からんでもないけど、constかどうかをプログラマが意識する必要性は
ないんだけどね。
ところでconst変数てw
351:デフォルトの名無しさん
15/08/08 00:18:32.35 qUvMcN+h.net
C#ならconstはPascalかな…
Int32.MaxValueだし
352:デフォルトの名無しさん
15/08/08 00:39:43.01 Ijf29GRs.net
そやね
constだけなじみのルールを適用するのはどうかと思う
const大文字を見ると常常思ってた
353:デフォルトの名無しさん
15/08/08 01:04:23.34 z+a/XH7F.net
>>346
MSDNのプログラム例でもそうだね
public const int BufferSize = 1024;
354:デフォルトの名無しさん
15/08/08 01:22:42.61 cerAE1Gg.net
規約は従うためにあるもの
例え規約に小文字で書けとあってもそれに従え
嫌なら辞めろ
355:デフォルトの名無しさん
15/08/08 06:39:05.83 2mT64iaQ.net
.netのソースみたら大文字const結構あるね
private static readonlyも大文字がある
356:デフォルトの名無しさん
15/08/08 07:27:18.92 ja+NNaTJ.net
どういう事?
定数を大文字で書いたらダメなの?
C言語では大文字で書いてたからC#にもそのルール引き継いでるんだけどマズい?
357:デフォルトの名無しさん
15/08/08 08:00:56.43 xp2orv6h.net
>>351
URLリンク(msdn.microsoft.com)(v=vs.110).aspx
358:デフォルトの名無しさん
15/08/08 08:08:07.80 2mT64iaQ.net
何回も既出な話題だけど
規約、好み、MSのガイドライン とあって
規約があるなら従うほかないよね?
規約がなければ常識の範囲で好きにしろよ
あんまりMSのガイドラインから外れると他の人が読みにくくなるかもね
他人が絶対読まないんなら(略
359:デフォルトの名無しさん
15/08/08 08:20:44.45 cYx2D4V+.net
>>349
どの規約がいいかどうかの話だろ
規約を守りましょうとかの小学校レベルの話ではないよ
360:デフォルトの名無しさん
15/08/08 08:25:11.96 qm4uwrZi.net
規約は当然守られなければならない。
だが規約の意味を知らなかったり規約の適用範囲も認識しないバカは多い。
354みたいなものバカのことな
361:デフォルトの名無しさん
15/08/08 08:30:42.48 xp2orv6h.net
>>352はクラスライブラリ向けのガイドライン、つまり
互いにお約束の通じないチーム同士の間でも従うべき最低限のルール
チーム内部なら好きにすればいいという考え方もあるが、
一般的には.NET開発における絶対的なルールと考えるべき
実際VSの上位エディションだと問答無用で警告出るし
362:デフォルトの名無しさん
15/08/08 08:45:41.17 cYx2D4V+.net
>>355
> だが規約の意味を知らなかったり規約の適用範囲も認識しないバカは多い。
自己紹介? w
いきなり関係ないことで騒ぐのは授業が理解できない小学生によくある行動
363:デフォルトの名無しさん
15/08/08 08:52:39.89 rDuvbo6u.net
アスペのレスはやたらと「べき」を多用するよな
最低限()、絶対的()
364:デフォルトの名無しさん
15/08/08 09:41:18.59 Mi72fTNR.net
javaから入ったからconst大文字で書いてた。
あとNetBeansなら
if(true){
}
だけどVSだと
if(true)
{
}
になって戸惑った。
365:デフォルトの名無しさん
15/08/08 09:44:10.32 gs2aQZWx.net
細かく設定変えられるけど
366:デフォルトの名無しさん
15/08/08 09:52:45.16 Fe3rcXOX.net
コーディング規約守らせるテクニックとかないの
ラクダケースじゃなかったらビルドエラー出すとか
367:デフォルトの名無しさん
15/08/08 11:20:02.19 uyIUSJEf.net
const int NUM X
const int Num O
こういう事か?
368:デフォルトの名無しさん
15/08/08 12:20:01.30 ja+NNaTJ.net
マジかよ全部書き直しじゃねーかクソが
369:デフォルトの名無しさん
15/08/08 13:53:13.30 QwAfSdLt.net
今時、全置換機能くらいテキストエディタでもあるじゃろ
モダンなIDEならリファクタリング機能とか言うのかのう…
370:デフォルトの名無しさん
15/08/08 14:04:02.19 Mi72fTNR.net
>>363
VSなら変数名変更したら下に矢印出てくるだろ
371:デフォルトの名無しさん
15/08/08 14:08:52.14 ja+NNaTJ.net
>>365
使った事ないんだけどこれって信用できるの?
372:デフォルトの名無しさん
15/08/08 14:12:34.10 Mi72fTNR.net
>>366
メモ帳の置換えと違ってその変数のみが置き換えられる。
例えばフィールドのxとローカルのxがあったとしてフィールドのxをxxにしたらローカルは書き換えられない。
373:デフォルトの名無しさん
15/08/08 14:15:11.18 cYx2D4V+.net
>>366
やってみて差分とって確認してみれば?
374:デフォルトの名無しさん
15/08/08 14:24:41.94 ja+NNaTJ.net
>>367
ありがとう使ってみる
375:デフォルトの名無しさん
15/08/08 16:08:26.01 8yeleZKw.net
>>366
dynamicとプリプロセッサ使っていないなら、ほぼ信用できる感じ
使ってあっても変更したい対象には無関係という事は多いのでかなり使える
マイクロソフトが標準的に使っている規約から外れた規約を社内ルールで使っている場合
全員を説得して回ってマイクロソフト標準に合わせたほうがいいだろうね
IDEがバージョンアップする毎に面倒が増えるから、規約がコスト増の原因になる
規約の目的は面倒事やコストを減らす為なので
376:デフォルトの名無しさん
15/08/08 16:12:24.30 h9o0NTln.net
リネーム使ったことないプログラマってガチでいるのかw
大げさでなく信じられないw
377:デフォルトの名無しさん
15/08/08 16:19:06.87 8yeleZKw.net
>>371
他言語から来た人は知らない人もいるのでは?
ウエブ系の人にこれを見せたら、おったまげた人も結構いたよ
378:デフォルトの名無しさん
15/08/08 16:26:59.15 z+a/XH7F.net
かなりお世話になっているけど、リファクタリングって名前で俺かんけーねえしって人居るのかね
リファクタリング (C#)
URLリンク(msdn.microsoft.com)
379:デフォルトの名無しさん
15/08/08 16:45:24.01 x+KPzjiu.net
リファクタリング便利よね。
nameof演算子が最初からあれば良かったのに。
380:デフォルトの名無しさん
15/08/08 17:20:04.30 8yeleZKw.net
>>374
あとジェネリックスも最初から欲しかったかな
一旦object型に変換されると、そこですべてが切れてしまうので
ジェネリックスができてから typedef が後から実装できない仕組みだったのも痛かった
当時のtypedef嫌悪は大失敗だったね
381:デフォルトの名無しさん
15/08/08 17:43:22.51 AWBqCflR.net
今日も偉い低レベルな話に花を咲かせてんな
9月までこの調子なの?
ちょっと絶望するな
382:デフォルトの名無しさん
15/08/08 18:29:59.35 bub58w7+.net
ひ、ひぇぇ
高レベルな376様がいらっしゃたぞー
これから高レベルな話してくださるから
傾聴せよー傾聴せよー
383:デフォルトの名無しさん
15/08/08 19:08:49.81 GOE31OJa.net
リファクタリングの名前変更はASP.NET MVCには使えないから糞
384:デフォルトの名無しさん
15/08/08 19:41:42.79 6EY1XTBT.net
2015になって名前変更が全然別物になってるよね
前の方が良かった
385:デフォルトの名無しさん
15/08/08 20:37:26.94 8yeleZKw.net
376がオナニーできなくて悶えてるのかw
386:デフォルトの名無しさん
15/08/08 23:10:42.87 Ijf29GRs.net
意識高い人きてんね
こういう人は面白くないので人が寄ってこなくて
仲間だと思ってた連中の初詣とかに誘われなくてあれってなるんじゃね
387:デフォルトの名無しさん
15/08/08 23:23:23.15 m5zrYZQl.net
意識高いってのとはちょっと違うと思う
何か見下したい病?
388:デフォルトの名無しさん
15/08/08 23:52:44.97 3Z/4sEUi.net
そう言う人を皮肉って言ってるだけじゃ。
389:デフォルトの名無しさん
15/08/09 00:12:32.28 7R1hSeQZ.net
まあ、「意識高い」って言葉が使われる時、ほとんどの場合は「意識高い」って表現を使う側のルサンチマンなんだけどねw
390:デフォルトの名無しさん
15/08/09 00:31:14.85 Bf9QBgBr.net
お、c#スレ復活した
391:デフォルトの名無しさん
15/08/09 03:04:04.03 lFKFU4FJ.net
会社で相手にされなくて、寂しくて、こんな所にやってきてるんだよ
で、俺はできるんだから話を聞けぇってトコロなんだろうよ
多分リアルは自殺物レベルで悲惨なんだろうなw
392:デフォルトの名無しさん
15/08/09 09:55:43.54 /6/RtruA.net
友達も女も居ないけど猫が居るから寂しくないよ
393:デフォルトの名無しさん
15/08/09 20:02:02.17 fUCYV9NU.net
友達と女がいるとうれしさは猫の数倍だよ
知らないということは幸せかな
394:デフォルトの名無しさん
15/08/09 20:10:11.88 /6/RtruA.net
うるせぇ
なら猫を追加するだけ
幸せバイバインだ
395:デフォルトの名無しさん
15/08/09 21:09:12.82 4N/Y7Sm0.net
猫クラスを追加する事による負荷は問題ないのだろうか
友達の女クラスよりは軽いだろうけど
396:デフォルトの名無しさん
15/08/09 21:12:10.14 SGsZr1tS.net
かくしてIT土方の貴重な休日が無駄になっていくのである
おわり
397:デフォルトの名無しさん
15/08/09 22:57:53.03 I/IAYU21.net
別に友達いない=コミュ力なしってわけではないとは思うとか言ってみる。
いや、自分がそうなんだけどな。
398:デフォルトの名無しさん
15/08/09 23:31:19.08 fUCYV9NU.net
コミュ力 = 人と仲良くなる能力と思うとか言ってみる
仲良くなったら友達だろ
399:デフォルトの名無しさん
15/08/10 00:00:32.58 XP2wx0li.net
むしろ必ずしも仲が良くない人とでも意志疎通を行う能力なんだろうけどね本当は。
俺もそうだけど日本人って総じてこれが下手だから下らない飲み会とかやって
「みんな仲間」を演出してないと職場がうまく回らないんだよね
400:デフォルトの名無しさん
15/08/10 00:05:19.00 tkIOp5x+.net
コミュ力という言葉でくくれるほどコミュ力って狭い意味じゃないだろ
飲み会でウェーイもプレゼンも営業トークもコミュ力ないと出来ないが、これらが全部同じ能力とは思えない
自然言語的なコミュ力が高いやつもいれば、UMLみたいな言語のコミュ力が高いやつもいる
アーティスティックな表現力は抜群でも、喋るとバカっぽい人も居る
コミュ力は主にウェーイできる力の事であり、その意味でのコミュ力がないとコミュ障として、不当に扱われる事が多いってのは問題だよな
401:デフォルトの名無しさん
15/08/10 00:25:39.24 eozgHhmi.net
それは違うと思うな
ウェーイできる奴は全部に通ず
すなわち全部同じ能力
対人関係に柔軟さを持っている人間はコミュれる人でありウェーイでもある
ウェーイすらできないならすなわちこれ全てダメであり完全なるコミュ障
そして次に考えることは
コミュ力が不完全な状態でどう立ち回るかということ
コミュ力の不完全さをほかで補うことを考えること
多くの人間はこれを考えるべきなのに考えない
あるいはやはりウェーイ道を極めて修めるか
402:デフォルトの名無しさん
15/08/10 01:03:38.69 PN28vv9M.net
既にこの時点でコミュが成立してない気がするのは。。。
403:デフォルトの名無しさん
15/08/10 03:01:22.19 WsIPX/2a.net
初心者ですみません
上で定数をC言語のように全て大文字で書くのはまずいってありますが
それって↓の理由のためですか?
URLリンク(ryo021021.hatenablog.com)
unityがメインなんですが、プリプロセッサって全部大文字で書く事なんてあるんですか?
404:デフォルトの名無しさん
15/08/10 03:14:03.52 PX+3VVfn.net
>>398
>>352に書かれているわけだが読まずに質問とは
C#の初心者じゃなくて日本語の初心者ですかチョンですか?
405:デフォルトの名無しさん
15/08/10 04:25:04.74 RHMENy6h.net
書き込み見る端から攻撃しまくるキチガイには居なくなって欲しいですな
406:デフォルトの名無しさん
15/08/10 04:54:29.74 e3IdXlk7.net
リソースファイルとしてtest.exeに「hoge.dat(バイナリ化)」を
組み込みました。そしてリソースファイル名を「resource_hoge_1」と
名付けました。
リソースファイルの内容をC#から読み込む為にこの様に記述しました。
byte[] byte_data = Properties.Resources.resource_hoge_1;
ここまでは書けたのですが、 byte_data からどうすれば「hoge.dat」
をC#のプログラム中で復元する事が出来ます?
※
hoge.datはhoge.txt(中身は、"aiueo"だけです。)をバイナリ化したものです。
407:デフォルトの名無しさん
15/08/10 05:00:02.57 RHMENy6h.net
System.IO.MemoryStream あたりを使うのが一番てっとり早いかと
408:デフォルトの名無しさん
15/08/10 05:03:18.94 e3IdXlk7.net
>>402
早速ありがとうございます!
試してみます!
409:デフォルトの名無しさん
15/08/10 05:26:39.23 e3IdXlk7.net
>>402
出来ました。ありがとうございます!
410:デフォルトの名無しさん
15/08/10 07:21:22.75 C7dCXIlE.net
相手の承認欲求の満足と引き換えに情報もらう場で、
暗黙的な合意と正反対の行動しておいてコミュ力ってw
もちろん情報も出さずに煽ってるのは論外だけどさ、
そんなコミュ力()で主張続けてたら、人居なくなるよ?
411:デフォルトの名無しさん
15/08/11 02:29:03.29 t7UpLVsu.net
継承してあるプロパティを封印とかしたいんですができないでしょうか?
当然、キャストすると矛盾が生じるので、似てるけど継承関係がない扱いをしたいのですが。
412:デフォルトの名無しさん
15/08/11 05:50:36.72 USJNgyLH.net
>>406
AからBを派生させるんじゃなくて、AとBの基底クラスとしてCを作ってからA,Bを派生させるほうが理にかなうと思うが
413:デフォルトの名無しさん
15/08/11 08:18:55.99 t7UpLVsu.net
>>407
いわゆるテンプレートみたいなものなので、継承関係はありません
414:デフォルトの名無しさん
15/08/11 08:22:26.01 RnBcDQFJ.net
共通部分を別のクラスに括り出して移譲
415:デフォルトの名無しさん
15/08/11 09:29:28.39 C3iuhTEx.net
is aじゃなくてhas aにする
416:デフォルトの名無しさん
15/08/11 12:54:53.39 t7UpLVsu.net
>>410
そうします。
でも、いちいちプロパティとかラップするのめんどいですよね。
なんとかなりませんか。
417:デフォルトの名無しさん
15/08/11 13:07:55.82 MDlGrES8.net
>>411
だから>>407が言ってるようにすればいい。
何を言ってるんだ。
418:デフォルトの名無しさん
15/08/11 13:47:10.32 +IVNtZk/.net
>>412
>>407に対して>>408みたいに返す応用力のなさじゃ
手取り足取り説明しないとw
419:デフォルトの名無しさん
15/08/11 14:53:21.55 t7UpLVsu.net
>>412
キャストできたらまずいってーの、継承について勉強しろ
420:デフォルトの名無しさん
15/08/11 14:57:28.66 3SX2sjwF.net
多態性を利用する気がないのならhas aでいいんじゃね?
用もないのに、なんでもかんでも継承するのは良くない
時々そういう人いるけど、コード読みにくくてしょうがない
421:デフォルトの名無しさん
15/08/11 15:12:00.25 AH2YHVn8.net
そして>>411に戻る
422:デフォルトの名無しさん
15/08/11 16:13:22.92 g1gPnYXA.net
>>414
兄弟同士はキャストなんかできない。
何を言ってるんだ。
こんな馬鹿に限って勉強しろとかほざくんだから笑える。
そもそも論を言えば、明らかに互換性があるのにあえてキャストできないようにする意味がそもそも分からない。
423:デフォルトの名無しさん
15/08/11 16:22:07.65 3SX2sjwF.net
分からないのは >>417 が無能だからだよw
424:デフォルトの名無しさん
15/08/11 16:24:59.39 2YkwfTs1.net
と、ろくにコードも読めない無能が言ってますw
425:デフォルトの名無しさん
15/08/11 16:52:11.16 t7UpLVsu.net
>>417
エンジンとコンポーネントで考えましょう。
基本的なことですよ。
426:デフォルトの名無しさん
15/08/11 17:31:46.86 C3iuhTEx.net
自分の言いたいことが理解されないからといって、すぐ相手を馬鹿よばわりしたらあかんよ。
馬鹿って言われたからっいって、すぐ無能とか煽ったらあかんよ。
427:デフォルトの名無しさん
15/08/11 18:29:29.41 AWvgSxoB.net
>>417
そもそも
>継承関係がない扱いをしたい
のだから、互換性が無いのかもしれんぞ
継承関係がないのに、継承してクラス定義する意味がわからんが
428:デフォルトの名無しさん
15/08/11 19:06:04.27 3SX2sjwF.net
多態性使いたいなら、こういうケースでは素直にinterface使えば良いかと
本人見ての通り用は無いとしているみたいだし、それでいいと言われているのに食いつくのを見ていると
ふらっとスレのアレだな
>俺の考えをきけぇ、おまえらの事情なんかどうでもいいし、そんな事聞かれてもいないが俺の考えをきけぇ
て感じだね、例のアイツなんだろうが頭おかしい
429:デフォルトの名無しさん
15/08/11 19:36:37.74 DdSX6XRN.net
>>423
言っちゃ悪いけどあんたが一番頭おかしいように見えるよ。
例のアイツってもう典型的な2ch脳患者の症状じゃん。
って2ch脳の人に言っても無駄っていうか手遅れだろうけどさ。
430:デフォルトの名無しさん
15/08/11 20:44:37.23 BYbKL/Wt.net
もう少しハッピーな話をしろ
お前くらいのエリートなら8/7~8/18くらいは夏休みのはずだろ
431:デフォルトの名無しさん
15/08/11 20:47:38.90 RhCa6Veg.net
僕は7月18日から
432:デフォルトの名無しさん
15/08/11 20:51:01.02 flESq3
433:IS.net
434:デフォルトの名無しさん
15/08/11 21:55:13.91 pRf5qE0j.net
継承先でプロパティ封印してどんなメリットが…
435:デフォルトの名無しさん
15/08/11 23:34:01.58 HeaM7jtr.net
BCLでもNotSupportedExceptionを投げたりするのがあるけど、まあ仕方がないんだろうけど
あんまり美しくないよなああいうの。
436:デフォルトの名無しさん
15/08/12 02:18:44.84 6ZXtaURL.net
基底クラス作るとか、制限する意味ないとか
ここの人たちの話は良くわからないぞ…
前者は非現実的すぎるし、後者は公開用と実装で分けるとか結構ある話かと
面倒ってのがEclipse的な委譲の生成がないかって意味なら
Reshaper(有料)使うか、諦めて無心に手書きするといいよ
437:デフォルトの名無しさん
15/08/12 02:33:12.62 6ZXtaURL.net
あ、でもこの場合、1クラスの委譲のようだから、
制限インターフェース作って、欲しいクラスを継承+制限IFを実装、
そして制限IFにキャストして返すって手順でいいんでは?
438:デフォルトの名無しさん
15/08/12 02:40:22.65 XD0FvRJl.net
難しい事言うとまた質問者に勉強しろと言われちゃうよーん
439:デフォルトの名無しさん
15/08/12 03:14:27.59 6lFy7xXj.net
元の質問者はたぶん、型の弱い言語しか使ってないんだろ
ダイナミック使えば良いと思うんだ
440:デフォルトの名無しさん
15/08/12 03:14:47.82 4GoNFhR4.net
どんだけ俺の考えをきけぇ!!!!!なんだよ
寂しすぎだろw
441:デフォルトの名無しさん
15/08/12 07:59:58.15 jWJqOcxH.net
>>430
後者は公開用と実装で分ける
internalで十分じゃね?
442:デフォルトの名無しさん
15/08/12 08:09:14.50 6ZXtaURL.net
>>435
十分じゃないですよ
2者を分離できませんし、継承関係が欲しい訳じゃないですから
443:デフォルトの名無しさん
15/08/13 10:26:42.13 yl8Mdqy/.net
MVVMでダイアログとかポップアップメニューとか画面遷移ってどう扱うんだ?
VMにMessageBox.Showとか書きたくないよな
444:デフォルトの名無しさん
15/08/13 10:36:01.01 JHO9AiGv.net
>>437
画面遷移サービスみたいなのを用意してインスタンスをアプリケーション全体で共有
ただしシングルトンはやめろ
そういうサービスはVMからはインターフェースを通して扱うようにして、
VMには参照をプロパティやコンストラクタなどで渡す。DIを使ってもいい。
メッセージを使ってビュー経由でやる方法もあるがどこで何やってんのかわけわからなくなりやすいのでお勧めしない。
445:デフォルトの名無しさん
15/08/13 14:53:07.65 ZQmwk96y.net
>>437
prismにTriggerActionって仕組みがあって、ビヘイビアのようなクラスを定義すればメッセージボックスをVMから操作できます
メッセージボックスを開く程度をやるには可也面倒なんだけどね
446:デフォルトの名無しさん
15/08/13 20:47:02.81 uEvY/8an.net
List<T>.Sort()ってなんで安定じゃないんですかね
安定なの作っといてくれりゃいいのに
447:デフォルトの名無しさん
15/08/13 20:52:06.72 r6k8TIQq.net
>>440
LINQのOrderByは安定ソートだよ
448:デフォルトの名無しさん
15/08/13 21:42:16.81 uEvY/8an.net
>>441
なるほど……こんなん書いてみたけど、これってありですか?
それとも自前の安定なソートメソッドを書きますか?
public static void StableSort<T>( this IList<T> list )
{
var temp = list.OrderBy( t => t ).ToList(); // 既定の比較でソート
for( int i = 0; i < list.Count; i++ )
{
list[i] = temp[i];
}
}
その前はこんなん書いてみたてたけどw
public static void StableSort<T>( this IList<T> list )
{
var wrapper = list.Select( ( t, i ) => new KeyValuePair<int, T>( i, t ) ).ToList();
wrapper.Sort( ( p1, p2 ) =>
{
var result = Comparer<T>.Default.Compare( p1.Value, p2.Value );
if( result == 0 )
{
result = p1.Key.CompareTo( p2.Key );
}
return result;
} );
for( int i = 0; i < list.Count; i++ )
{
list[i] = wrapper[i].Value;
}
}
449:デフォルトの名無しさん
15/08/14 01:10:47.58 u9bN4Lw8.net
>>442
ToListせずにforeachしたほうがいい
450:デフォルトの名無しさん
15/08/14 15:19:13.92 Iycxx57M.net
>>442
馬鹿な俺には何がしたいんかわからん
list.OrderBy( t => t ).ToList();
だけでええやん
451:デフォルトの名無しさん
15/08/14 15:21:03.68 PBffULch.net
破壊的ソートだろ
452:デフォルトの名無しさん
15/08/14 22:12:21.62 2p3m0KlY.net
>>444
ソートされた新しいインスタンスがほしい場合もあれば
元のインスタンスをソートしてほしいときもあるやん?
453:デフォルトの名無しさん
15/08/15 01:24:13.06 xV4UISpz.net
>>442
これってプリミティブ以外の型でちゃんとソートされるの?
454:デフォルトの名無しさん
15/08/15 02:26:49.44 j4iBQT2t.net
>ソートされた新しいインスタンスがほしい場合もあれば
>元のインスタンスをソートしてほしいときもあるやん?
list = temp;
455:デフォルトの名無しさん
15/08/15 03:53:43.45 QiO6I5ga.net
>>446
var listOrg = new List<int>(new int[] { 10, 23, 13, 4 });
var listTmp = listOrg.OrderBy((t) => t).ToArray();
listOrg.Clear();
listOrg.AddRange(listTmp);
遅いけど少し短いかも
456:デフォルトの名無しさん
15/08/15 07:25:58.35 /RqnGk0/.net
>>447
TがIComparableを実装してないとソートできないけど、それは普通のSort()メソッドも同じじゃね?
>>448
インスタンスを置き換えて返すつもり?
元のリストの参照もってたらソートされないままだろが……
457:デフォルトの名無しさん
15/08/15 13:11:59.71 z64TKpL6.net
初心者です。インターフェースの実装として抽象クラスを定義するコードを見かけたのですが、あえてそうするメリットって何かありますか?自分としとはインターフェース不要じゃないかと思ったのですが。
458:デフォルトの名無しさん
15/08/15 13:19:08.64 dPBreRmq.net
Effective Java 18章 抽象クラスよりインタフェースを選ぶ
を読んで、骨格実装について学んでください
この項目はC#でも同じです
459:デフォルトの名無しさん
15/08/15 13:54:48.31 gGc5tBdo.net
出来る限り疎結合にするというのが大切だから外部との窓口をインターフェースにする。
それより内側の具体的な実装は、内部実装としての作りやすさからたまたま抽象クラスで行っているだけかと。
460:デフォルトの名無しさん
15/08/15 14:38:20.40 OY/B/Wmp.net
抽象クラスって使った事ないわ
使い道あるのかこれ
461:デフォルトの名無しさん
15/08/15 15:08:58.69 2z51GaS1.net
初心者なのでインターフェイスがあれば抽象クラスは別段いらないじゃないか
って正直いつも思ってます・・・
抽象クラスの使い方が分かってないからでしょうけど
462:デフォルトの名無しさん
15/08/15 15:14:23.51 3TmrRaVz.net
vsの簡単フォームツール?のコンボボックスでSelectedIndexが見つかりません。
どこにありますか?
463:デフォルトの名無しさん
15/08/15 15:47:22.93 HxCw3c0C.net
>>455
インターフェースに雛形となる実装がついてるだけだよ。
インターフェースにテンプレートの実装持たせておければいいのに。
464:デフォルトの名無しさん
15/08/15 15:50:11.19 2z51GaS1.net
>>457
よく分からないのですが、そもそも仕様と実装を分離して疎結合するためのもの
だという認識なんですが、それに実装を持たせると分離の意味がなくなるんじゃないのかな
と不思議に思ってます
465:デフォルトの名無しさん
15/08/15 15:58:03.56 XFeAKEd8.net
仕様と実装を分離して疎結合するためのもの=インターフェイス
仕様の中で規定の実装が部分的に定まっているもの=抽象
466:デフォルトの名無しさん
15/08/15 15:
467:59:17.62 ID:HxCw3c0C.net
468:デフォルトの名無しさん
15/08/15 16:04:26.73 HxCw3c0C.net
abstractにインターフェースつけると、インターフェースのデフォルト実装が適用されるとかよさそう
469:456
15/08/15 16:11:48.76 3TmrRaVz.net
編集不可コンボボックスだと初期値でTextプロパティが使えないのでindexで指定するように書いてあったのですができません・・・
470:デフォルトの名無しさん
15/08/15 16:50:16.42 hcwFHcJB.net
基底クラスが1つしか選べないのが抽象クラスと相性悪いと思う
インターフェースに基底の実装を用意してもインターフェースを2つ実装しようとしただけでダメになる
471:デフォルトの名無しさん
15/08/15 17:19:23.51 2z51GaS1.net
>>459-460
あーなるほど、なんとなく分かりました
共通した仕様だけでなく実装の一部までもが共通して決まっているなら
そこまで定義しても問題ないし保証できるというわけですね
ありがとうございました
472:451
15/08/15 17:57:59.98 9FDdWcaw.net
>>452
ありがとうございます。読んでみます。
個人的には、少し冗長で読みにくい印象があったのでした。勉強してみます。