ふらっと C#,C♯,C#(初心者用) Part130at TECH
ふらっと C#,C♯,C#(初心者用) Part130 - 暇つぶし2ch100:デフォルトの名無しさん (ワッチョイ da91-V1Wy)
17/07/27 13:33:43.77 NOEMiJHP0.net
C#(VB.NET)の継承は、なんちゃってだからなぁ

101:デフォルトの名無しさん (ワッチョイ ca19-ZO1u)
17/07/27 14:15:37.95 CNHQ1SOW0.net
ぶっちゃけ
継承とかして実装するから
可読性が悪くなって保守コストがかかる事分からんのかねぇ

102:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/27 14:19:50.11 XtIOKCvm0.net
リアルタイムゲームはすべてのパラメータをリアルタイムでエクセルで閲覧できるような構造で作らないとデバッグ間に合わない
縦軸インスタンス、横軸パラメータで
バグったら前後のデータを自動出力
オブジェクト指向(ツリー構造的な意味で)は合わないと思う

103:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/27 16:38:48.16 A+CF0/O/a.net
>>96
オブジェクトとは何か、みたいな哲学的疑問(笑)が気になるのは
よく分かるけど、そういうのは後回しで十分だし後回しにした方がいいと思うよw
たぶん、不毛なだけw
初心者は具体的なコード例を見て、どういうコードがどう機能するか、
何が実現できるのか、そういうところに集中した方がいいと思う

104:デフォルトの名無しさん (ワッチョイ a311-eyki)
17/07/27 17:13:14.27 Rm6foVYz0.net
>>98
いやこういう例え方って初心者にとっては一番ふわふわしてて分からないと思うんだけど

105:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/27 17:30:52.71 eK9+M30XM.net
>>104
ごめんね

106:デフォルトの名無しさん (ドコグロ MM8a-gqKx)
17/07/27 19:00:29.42 P1js1uXhM.net
>>104
そう?
たいていの人は設計図とか家自体はイメージできるしそのイメージとそんなに解離してないと思うけどな

107:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/27 19:25:46.31 okcLdcsWa.net
オブジェクトはともかく、インスタンスなんて変な例えや哲学的な話じゃなくて、
もっと現実のコード寄りに「newすると作られて使えるようになる何か」
ぐらいにに理解した方がいいよw
しつこいけど、初心者にとって重要なのは「インスタンスって何?」みたいな意味論じゃなくて
インスタンスを作るコードをどう書くか、どう記述したらインスタンスのメンバーにアクセスできるか、
っていう機能主義的な具体論

108:デフォルトの名無しさん (ワントンキン MMda-VkdC)
17/07/27 19:54:58.52 +34FnjidM.net
new = メモリ確保して初期化する
でいいんだよ
くだらねえ例え話はいらん

109:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/27 20:46:55.30 eK9+M30XM.net
>>107
それは強く同意だな
俺としてはオブジェクトとかインスタンスとかの言葉すら知らなくていいとも思ってる
newしたらなんか動いた!すげー!
くらいの軽い感覚が理想

110:デフォルトの名無しさん (ワッチョイ a311-RAOX)
17/07/27 22:08:18.79 I7X5vmO00.net
みなさんありがとうございます。>>96です。
皆さんがおっしゃるように、とにかくオブジェクトが云々と考えるより構文をたくさん打って感覚で覚えていくのが一番の近道なのかもしれません。
でも皆さんの話を聞いて少し頭の中が晴れてきました。
ありがとうございました。

111:デフォルトの名無しさん (ブーイモ MM17-goPp)
17/07/27 22:12:49.28 h5VgGO8jM.net
オブジェクト指向って本来はモジュール設計のベストプラクティスに現実世界のアナロジーをこじつけたものだから、
高尚な理論なんか無視して単なるモジュール化の一手法として導入すべきなんだよな
C言語を使っていれば自然とlist_add(&list, item)のようなパターンに行き着いて、
そこからのオブジェクト指向への発展はきわめて自然なもの

112:デフォルトの名無しさん (ワッチョイ 0fe4-Tef8)
17/07/27 22:30:42.28 aAe8+IMH0.net
>>95
とりあえずその本のタイトルと筆者をさらせ
オブジェクト指向ってのもいくつかの流派があるから、一概には言えないが
C#ベースで説明してるならその本は焼き捨てた方が良い

113:デフォルトの名無しさん (ワッチョイ 0fe4-Tef8)
17/07/27 22:36:39.83 aAe8+IMH0.net
>>83,98
その例えならクラスは何よ?
その答え見ないとまともかどうかは何とも言えん
それがC#での一般的な用法になじむかどうかは別だがな

114:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/27 22:45:52.46 zjuaYXLUa.net
>>112
誰に向かって何を威張ってるのか知らんけど、>>95にあるような記述は
初心者向けのざっくりとした説明としてはまあ妥当なもの。
最初から重箱の隅つつく勢いで厳密に矛盾がないように書いたら初心者は理解できないよ。
ばっかじゃないの

115:デフォルトの名無しさん (ワッチョイ aac4-58MB)
17/07/27 23:04:02.99 MLlkqyWN0.net
ここまで液晶に価値なし

116:デフォルトの名無しさん (ワッチョイ a311-RAOX)
17/07/27 23:16:14.24 I7X5vmO00.net
私が参考にしたのは「c#の絵本」という本です。
立ち読みした本の中で一番わかりやすく感じたので買いました。
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)

117:デフォルトの名無しさん (ワッチョイ bedb-iPV5)
17/07/27 23:20:12.49 OcfywRta0.net
classって、共通の性質や特徴を有するものの分類とかいう意味みたい。
オブジェクト指向の言語は、大体がobjectを基本として、そこから色んな性質に分けていったものをクラスにして「名前をつけて」あげる。
オブジェクト指向でいうクラスは「分類整理のやり方、結果」と言えるんじゃないかな。
動物とか車とかに例えたりする説明の仕方もありだと思う。けど、分類整理のやり方という文脈がないと、継承とか派生、つまり上下・並列の概念が分かりにくくなったりしないかな。
いま目の前にライオンが2匹いたとして、同じライオンとして分類していいのか、タテガミの長さが分類のポイントなのかとか、片方は外敵から身を守るために火を噴くとか。ペンギンと比べてどの程度同じ分類が出来て、どの程度違いがあるのかとか。
まとめると、モノでも生き物でも何かしらの特徴とか性質を持っていて、特徴で分けたのがクラス。
オブジェクト指向とは指向、言い換えると、方向性としてはモノを「最小の単位」として扱うことを表している。元素や光といった、もっと根本的な最小になる要素もあるけど、そのレベルで扱おうとすると色々細かすぎたり、人が理解しにくいから。
かな?俺もよく分からなくなってきた。
個人的には日本に来るとき訳する際に、継承とかいう普段使い慣れない概念語じゃなく、「環境適応」とか「マイナーチェンジ」とかがよかったのかなと勝手に思ってる。

118:デフォルトの名無しさん (ワッチョイ a311-5K3Y)
17/07/27 23:32:44.71 dUeJpjKg0.net
>>117 後半に行くに連れて、段々変になっていってるぞ 最も重要な点は、 「データ(プロパティ)」と「振る舞い(メソッド)」を1つにパッケージする事だろう 一々現実世界の物体に例えて説明する必要は無い



120:デフォルトの名無しさん (ワッチョイ db6f-V1Wy)
17/07/27 23:45:51.22 2ra8985e0.net
stackoverflowでも回答者によってマチマチだし
考えたら負けな気がしてきた

121:デフォルトの名無しさん (ワッチョイ bedb-iPV5)
17/07/27 23:52:55.67 OcfywRta0.net
>>118
データと振る舞い、そこが理解できたらパッと先が開ける感あるんだけど、灯台元暗し的に回り道しちゃうよね。
質問者の人には、その疑問は忘れず、さりとて目の前の事をこなしてみて、たまーにまた疑問に立ち返って欲しいなあ。試行錯誤してるある瞬間に、パッと思い出してすんなり受け入れられる時が来ると思う。
オブジェクト指向だとかなんだとか、結局はどっかのオッチャンインスタンスが考えたものだろうし、完全な答えはないんだろうなぁ。

122:デフォルトの名無しさん (アウアウウー Sa9f-HJpE)
17/07/27 23:54:43.51 iQBWuJsZa.net
厳密な定義も元からないし実装によって変わるし
そもそもクラスベースじゃないものまである
設計段階と実装段階でも別のことがある
ひとくくりに語るのは難しい
でも意思の疎通はかなりできてしまうという曲者

123:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/28 00:24:58.46 EhJxrJBra.net
哲学的な話は初心者には意味ないって自分で書いておいてあれだけど、
あえてそういう話をすれば、オブジェクトっていうのは「~であるかのように振舞う仮想機械」
だと考えるのが一番いいと思うよ。
従来の構造体+関数より分かりやすく仮想機械を記述するための仕組みがクラス。
仮想機械の組み合わせでプログラムを作りましょう、っていうのが(もっとも素朴な)オブジェクト指向

124:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/28 00:42:55.93 y+yGDebS0.net
っていうかオブジェクト指向自体いらねぇ

125:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/28 06:24:23.12 Jgtd2W1RM.net
>>113
あれは「オブジェクトとインスタンスの関係性」をハイパーざっくり示すだけでほかに流用できるほど高尚な例えじゃないよ
ごめんね

126:デフォルトの名無しさん (ドコグロ MM22-gqKx)
17/07/28 07:18:09.76 jwLN5n78M.net
>>117
> classって、共通の性質や特徴を有するものの分類とかいう意味みたい。
IT系(に限らんのかも知らんが)の用語は結構元の意味と違う使い方されてるから気を付けた方がいいよ
例えばネットワークカードでパケットキャプチャするためにPromiscuousモードって言うのがあるんだがあるときふとどういう意味だろう?って辞書引いて笑たし
URLリンク(dictionary.goo.ne.jp)

127:遊園地 ◆OM5/jtEIXw (ワッチョイ be96-ywSo)
17/07/28 10:18:52.22 asrj9iFF0.net
引っ越して来ました。
いろいろ、よろしくお願いします。 ┌(_Д_┌ )┐

128:デフォルトの名無しさん (アークセー Sxb3-RAOX)
17/07/28 10:27:48.91 dynW8EUsx.net
皆さん、float、double、intの使い分けはどうされてますか?例えばドラクエのようなRPGでせいぜい4桁程度の整数しか使わない場合でしたら、intを使っておけば間違いはありませんか?

129:遊園地 (ワッチョイ be96-ywSo)
17/07/28 10:42:44.33 asrj9iFF0.net
初心者として記載
基本的にintでも良いと思う。けど、 true(1) false(0)で詳細分けする時に便利
URLリンク(ideone.com)

130:遊園地 (ワッチョイ be96-ywSo)
17/07/28 10:59:03.19 asrj9iFF0.net
bool a = true;
bool b = false;
bool c = null; // error CS0037: Null 非許容の値型であるため、Null を 'bool' に変換できません
bool d = 0; // error CS0029: 型 'int' を 'bool' に暗黙的に変換できません

131:デフォルトの名無しさん (ブーイモ MM17-goPp)
17/07/28 11:22:46.32 epWJgUcsM.net
>>127
普通に整数が使いたければint
アニメーションなどで込み入った計算をするときは無理に整数でやるよりdoubleの方が職人芸がいらなくて楽floatは精度の低さが問題になりやすいから描画などの最終的な出力以外には使わない方がいい

132:qPh)
17/07/28 20:00:02.99 pQs+fj960.net
>>127
とりあえず、整数ならint、小数点以下が必要ならdoubleを使っておけば良い。
floatを使うメリットはあまり無い。

133:デフォルトの名無しさん (アウアウカー Safb-APpe)
17/07/28 20:04:18.47 7FfAB0Haa.net
decimalじゃだめなのん?

134:デフォルトの名無しさん (アウーイモ MM9f-MVxL)
17/07/28 20:15:41.50 wfFGjuoDM.net
decimalは必要ない時は極力使わない。

135:デフォルトの名無しさん (ブーイモ MM8a-FCNm)
17/07/28 20:40:55.30 id99yFTOM.net
こんなときこそvarだろwww

136:デフォルトの名無しさん (スププ Sd8a-OE5G)
17/07/28 20:44:23.47 X/Koq0Svd.net
varはアタイのカレシだから
ホットイテネ

137:デフォルトの名無しさん (アウアウカー Safb-yXEd)
17/07/29 00:13:16.03 2gt99MhJa.net
doubleの演算って結構誤差でない?

138:デフォルトの名無しさん (ワッチョイ 7b6e-goPp)
17/07/29 00:29:15.87 1IyGodP30.net
情報落ちを起こしてるんじゃないか?
浮動小数点数は大量の値を前から順に加算したりしたらダメだよ

139:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/29 02:59:59.30 7hJeLMqCa.net
>>136
誤差を累積させるような演算をしてるからだろうねえ。
誤差の性質を理解して累積しないようなコードを書かなきゃだめでしょう

140:デフォルトの名無しさん (ワッチョイ 7b79-igvW)
17/07/29 06:35:15.67 2ltffe2l0.net
要求される精度にもよる
double /frortは2進数表現だから表現できない小数がある
dicimal は10進数表現

141:デフォルトの名無しさん (ワッチョイ 7b79-igvW)
17/07/29 06:36:38.66 2ltffe2l0.net
×dicimal
○decimal

142:デフォルトの名無しさん (ドコグロ MM22-gqKx)
17/07/29 06:38:47.23 u24XiLoFM.net
>>140
その前に直すところあるだろ...

143:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/29 11:14:24.90 HVIziSO2a.net
>>139
デジャビューだけど、こういう寝言を書く人は誤差の問題の初歩の初歩も理解してない

144:デフォルトの名無しさん (ワッチョイ 738e-OE5G)
17/07/29 11:19:08.43 Qn9Ku8Gw0.net
>>142
おまえもだよ

145:デフォルトの名無しさん (ブーイモ MM17-goPp)
17/07/29 12:26:02.64 VZ2r/0rxM.net
double/frort(笑)の表現が2進数だからdicimal(笑)と違って誤差が…みたいな話をする奴は本質を理解してないよな
実数型は常に連続な近似値として扱うべきで、最終的には要求される精度に応じて必ず丸めて使うんだよ
decimalとは扱う問題の性質が違う

146:デフォルトの名無しさん (ワッチョイ 7e4b-l5iw)
17/07/29 14:51:29.49 BX2/zm3r0.net
任意の範囲(C#に組み込まれてないようなのも含めて)の整数型を総称してintegerと呼ぶなら
double/frortはinteger / 2^integerでdicimalはinteger / 10^integerなのじゃ

147:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/29 17:41:23.74 VUs/Df8Wa.net
誰かに突っ込まれるまでボケ続けるつもりかなw
frortってどういう発音なんだろw

148:デフォルトの名無しさん (ワッチョイ 738e-OE5G)
17/07/29 18:33:12.08 Qn9Ku8Gw0.net
frortはfrort型だろ
読み方はfrortって読むんだ

149:デフォルトの名無しさん (ワッチョイ a311-5K3Y)
17/07/29 18:35:29.45 H4b4Ug9O0.net
>>145は分かっててやってんだろw

150:デフォルトの名無しさん (ワッチョイ 6a11-gqKx)
17/07/29 19:48:17.74 zJVnUUbX0.net
わかってやるほどのネタとは思えないけどな

151:デフォルトの名無しさん (ワッチョイ 0f4b-Liv4)
17/07/29 21:29:22.88 KUGfTbWw0.net
decimal の、なかみは、いんと

152:デフォルトの名無しさん (ワッチョイ 7be6-FCNm)
17/07/29 21:54:03.03 AM/Q5FkU0.net
だからよ、var使えば済むっしょ!

153:デフォルトの名無しさん (ワッチョイ 3732-gqPh)
17/07/29 22:02:40.05 WMSNsXaM0.net
しつこい

154:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/29 22:23:19.76 K+Yuy2zX0.net
varint作るわwww

155:デフォルトの名無しさん (スップ Sd8a-Yg5s)
17/07/30 01:11:39.61 D1mwD1EJd.net
>>116みたいな人もおるんやし
ちょまどさんもそろそろ本書いてみたらどないやろ?
真奈たその後釜じゅうぶん狙えるんちゃう?

156:デフォルトの名無しさん (スップ Sd8a-Yg5s)
17/07/30 01:15:46.07 D1mwD1EJd.net
>>134
そういのがいるからC♯たんが馬鹿言語扱いされちゃう

157:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/30 08:26:12.42 J6wXHp7uM.net
>>151
ちゃんと設計したら?

158:デフォルトの名無しさん (ドコグロ MMc3-gqKx)
17/07/30 10:02:02.22 LoeDXXSlM.net
>>153
なにその便利そうな型は w

159:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 14:48:33.51 /FPaeL7f0.net
>>157
intっぽい型を自動判別
string,double,date,boolの値が入ってきたらアウト
decimal,char,int,byteはセーフ

160:デフォルトの名無しさん (ワッチョイ 7b7f-V1Wy)
17/07/30 15:04:18.95 IhAKIxVt0.net
variant型かと思ってた。

161:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 15:06:27.30 /FPaeL7f0.net
>>159
そんなvb坊みたいな期待してたら減点

162:デフォルトの名無しさん (アウーイモ MM9f-MVxL)
17/07/30 15:06:34.85 bPp21s/fM.net
でもさ、ソモソモなんで型分けてるかと言うと
消費する容量が違うからじゃないの?
バリアント型って結構デカイとかないの?
例えばbyteで済むならbyteの方がよくね?

163:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 15:11:52.74 /FPaeL7f0.net
>>161
違うよ
型ってのはあくまで気分なんだよ
厳密に定義したらわかりやすいし
でも厳密にし過ぎると使いにくい
マシンみたいなPGにはこんなもん必要ない
メモリ上にはアドレスと実際の値
それしかない
そこになんのデータを入れてるかなんて知ったこっちゃない

164:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/30 15:15:39.29 r8KQ5Iv4a.net
何言ってるのか意味不明だね

165:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 15:18:29.06 /FPaeL7f0.net
>>163
まあ、c言語とかアセンブラやんないとわかんないと思う

166:あ (スププ Sd8a-BRPM)
17/07/30 15:42:06.12 P5Qwr2jWd.net
気分だな。unionとか使い出すともう本当どう扱いたいかの気分でしかない。
浮動小数点と巨大整数と、それらのテンソルの型作ったことあるけど、SIMD的な命令として流し込むためにバラバラにしたりしやすいように都合よく書いてた覚えがある。

167:デフォルトの名無しさん (ワッチョイ a311-5K3Y)
17/07/30 16:04:34.61 ZiKC4drW0.net
>>161
C#に限った話なら
byteはSystem.Byte構造体のエイリアスだし、
intはSystem.Int構造体のエイリアスだから
当然、消費するメモリ容量に差は出るが
大昔ならいざ知らず、現代のマシン環境において
そこまでメモリ容量を切り詰めて考えなきゃならん場面なんざ、そうそうねえよ
メモリを節約したきゃ、変数のスコープや生存期間を見直した方がいい

168:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 16:15:05.92 /FPaeL7f0.net
型を厳密にしたいかどうかだな
仕事で設計書書いて実装してるときは
varとか邪魔だし

169:デフォルトの名無しさん (ブーイモ MMd6-goPp)
17/07/30 16:39:12.40 9HwmeiiRM.net
CLRの型はVMレベルで実装されていて、気分で扱えるのはbittableな値型だけだよ
それ以外はメタデータを含んでてアホなことするとAccessViolationException

170:デフォルトの名無しさん (ワッチョイ 6a91-V1Wy)
17/07/30 17:56:10.49 QVOgnQhb0.net
C#はどこもかしこもvar推奨だぞ
数値計算以外はvarでええやろ

171:デフォルトの名無しさん (ワッチョイ a311-srAL)
17/07/30 18:15:04.88 reLfmDHf0.net
今まで型厳密に書いてたけど、var推奨だったのか・・・

172:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 18:19:11.77 /FPaeL7f0.net
>>169
さすがにvar推奨は見たことないな
禁止は結構見る

173:デフォルトの名無しさん (ワントンキン MMda-F/7S)
17/07/30 18:19:12.89 0Cb6dJF4M.net
推奨してるかしらんけど
varの方が見やすい

174:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/30 18:20:22.83 J6wXHp7uM.net
右辺を見て明確な場合はな
全体を見渡す力のない俺は使うとしてもローカル変数までにしとかなきゃ死ぬ

175:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 18:20:43.69 /FPaeL7f0.net
>>172
var unk = GetUnko();
の型を追跡するの面倒じゃね?

176:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 18:22:58.28 /FPaeL7f0.net
印刷はあんまりしないけどブロックで取り出したときにIDEが無いと読めないんだよね

177:デフォルトの名無しさん (ワッチョイ a311-5K3Y)
17/07/30 18:24:40.67 ZiKC4drW0.net
パッと見で型が明確な場合は、varで問題無いと思ってる
varで訳が分からなくなるなら、メソッドを肥大化させ過ぎという意見も理解は出来る
しかし、それはそれとして
型名をきちんと書くのが手癖として身に付いてしまってるのだ

178:デフォルトの名無しさん (ワッチョイ 5f4b-V1Wy)
17/07/30 18:26:42.51 DlHK/Glf0.net
>>174
GetUnko()がUnko型を返さないのならそれは命名がおかしくね?

179:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 18:29:34.45 /FPaeL7f0.net
>>177
インターフェースってそういうもんだってさ

180:デフォルトの名無しさん (ワントンキン MMda-F/7S)
17/07/30 18:50:20.73 0Cb6dJF4M.net
型が目に見えたら何かメリットあるの?
全ての型のAPIと振る舞いを覚えてるならともかく普通覚えてないよね
public UnkoNagashi() {
Unko unko = unkodb.GetUnko();
unko.Nagasu();
unkodb.SaveUnko(unko);
}
というコードをみてなるほどunkoはUnko型なのかとわかる
でもUnko型がNagasu()以外に何をできるかは僕は知らない
そしてこの文脈ではNagasu()以外の振る舞いを知る必要もない
だったらそれって型名を書く意味あるの?
unkoがNagasu()できる事だけ知ってればいいよね
それはコードがコンパイルできる事から自明でしょ

181:デフォルトの名無しさん (ワッチョイ be61-ZO1u)
17/07/30 18:58:07.04 xsWXBNij0.net
ここ初心者の質問スレなんだよ
質問でなく議論したいなら
ふらっと C#,C♯,C#(議論用)
スレリンク(tech板)
でやれよ

182:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 18:58:57.54 /FPaeL7f0.net
unk.FermentationShit();

183:デフォルトの名無しさん (アウアウカー Safb-yXEd)
17/07/30 19:06:43.78 /Qu7y73ua.net
>>174
デジャブかな?
もう何回みたことか。。つーか毎回言われてると思うけどカーソルあてるのそんな面倒か?

184:デフォルトの名無しさん (ワッチョイ 6a91-V1Wy)
17/07/30 20:39:56.83 QVOgnQhb0.net
>>171
MSのオープンソースプロジェクトは殆どvar推奨だぞ
どんなときも使える限りvar使えって言ってる
URLリンク(github.com)

185:デフォルトの名無しさん (スッップ Sd8a-Lvg/)
17/07/30 20:46:54.11 dej2VYm/d.net
>>171
いつの時代の話だよwww

186:デフォルトの名無しさん (ワッチョイ 6a11-gqKx)
17/07/30 21:37:31.57 ynobldaf0.net
var に拒否反応示してるのは老害だけだろ
自動的に型名に置き換えてくれるだけなのにな

187:デフォルトの名無しさん (アウアウウー Sa9f-HJpE)
17/07/30 22:03:52.72 YWZp07X/a.net
>>171
var禁止なんて見たことがないから参考までに教えてほしい

188:デフォルトの名無しさん (ワッチョイ a311-Lvg/)
17/07/30 22:07:36.28 hMQywZRx0.net
>>186
わざとvarってクラスを作って型推論を阻止するやつらがいるとかなんとか

189:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/30 22:16:53.75 J6wXHp7uM.net
>>185
ホントに害なの?

190:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 22:22:32.05 /FPaeL7f0.net
>>182
1000行あるうち300行そんなのがあったら300回当て無いといけないんだぜ

191:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/30 22:35:12.83 J6wXHp7uM.net
>>189
1000行ものメソッドを作る時点で設計を見直そう

192:デフォルトの名無しさん (ワッチョイ eae7-DHU9)
17/07/30 22:40:01.38 Pvq5DEUn0.net
>>189
1/3が変数宣言って前提に無理があるのでは?

193:デフォルトの名無しさん (ワッチョイ a311-Lvg/)
17/07/30 22:42:42.77 hMQywZRx0.net
>>189
当てなきゃわかんないようなやつがそんなにある時点でクソ

194:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 22:43:59.63 /FPaeL7f0.net
>>190
トータルとはいってない

195:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 22:47:13.08 /FPaeL7f0.net
>>191
結構あるぜ
でもここで考えて欲しいのは
そもそもvarなんて使わなければ当てる必要などないということ
当てなければ読めないソースと
当てなくても読めるソースのちがいしかない

196:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/30 22:47:50.56 J6wXHp7uM.net
>>193
や、だからメソッド単体で1000行だったら何かしら設計あぶないっての

197:デフォルトの名無しさん (ワッチョイ eae7-DHU9)
17/07/30 22:53:22.17 Pvq5DEUn0.net
自分はなんでもvarは使わない派
右辺見ればわかるときだけ使うからマウスカーソル当てる必要もない
var list = new List<int>();
こういうのも気に入らないの?

198:デフォルトの名無しさん (ワントンキン MMda-F/7S)
17/07/30 22:56:46.57 RXgrd63BM.net
>>194
その前に考えるべきことは
型を読めないと全体が読めないメソッドなど書くべきではないということ
そもそも型を読まなくてもいいならvarを使わない理由を考える必要などない

199:デフォルトの名無しさん (ワッチョイ db6f-V1Wy)
17/07/30 22:57:08.87 uiXc0u2O0.net
プリミティブ型以外は全部varだわ

200:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 22:57:14.29 /FPaeL7f0.net
>>195
メソッド1個しか読まねーわけじゃねーじゃん
じゃあ30万行のコードのプロジェクトがあって1万行もvarがあったら
1万回もマウスの素振りすんだぞオメー
単純に害にしかならないと思う
varを本来の型に1発変換できるリファクタリングができればえーけどね

201:デフォルトの名無しさん (ワッチョイ a311-Lvg/)
17/07/30 23:01:58.42 hMQywZRx0.net
>>199
しねーよアホ
当てなきゃわかんない書き方がクソなんだよ

202:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 23:04:19.66 /FPaeL7f0.net
>>200
それをアホにわかるように説明するのが難しい
なので一律でvar禁止が楽
これを禁止で困る奴がこの世にいない

203:デフォルトの名無しさん (ワントンキン MMda-F/7S)
17/07/30 23:11:55.64 RXgrd63BM.net
var禁止はめちゃ困るわ
いちいち書かなくてもいい型を書いてたら手が疲れるじゃん
単純に文字数が多いだけでも読みにくくなるし最悪

204:デフォルトの名無しさん (ワッチョイ 6a91-V1Wy)
17/07/30 23:16:40.71 QVOgnQhb0.net
C#2.0で止まってる老害結構いるやろ
LINQ禁止すらあるんやろ

205:デフォルトの名無しさん (ワッチョイ a311-Lvg/)
17/07/30 23:18:15.40 hMQywZRx0.net
>>201
Microsoftのコーディング規則に違反するってツッコミには何も反応せずにオレオレ理論かよ

206:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/30 23:18:42.38 X0A6ZRSXM.net
>>201
俺は型を明示するタイプだがvarを否定はしない
限られた区域内で扱われる分にはとても効果的だと思ってる

207:デフォルトの名無しさん (ワッチョイ a311-5K3Y)
17/07/30 23:19:44.46 ZiKC4drW0.net
>>205
大体の人はそんなもんだよね

208:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/30 23:22:03.74 FlO7tdYLa.net
またアルルハイマーどものが繰り言言い合ってるのか。
繰り言を楽しく感じる奴は比喩じゃなく本当に病気だからマジでまずは精神科で
診てもらった方がいいよ。これ本当にそう思う。
重症化してからではもう遅い。

209:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/30 23:22:49.91 /FPaeL7f0.net
>>204
誰が言ったかを強調するやつとまともに話をする気はない
それにMSなんて後5年持たない
どうでもいい

210:デフォルトの名無しさん (スップ Sd2a-Lvg/)
17/07/30 23:24:28.64 5An4udmXd.net
>>208
5年もたないワロタwwwお前なんでこんなところいるんだよwww

211:デフォルトの名無しさん (ブーイモ MM17-goPp)
17/07/30 23:25:50.29 brVl3K5IM.net
>>208
MSが死んだらC#も確実に消滅するんだからその仮定は意味を持たない

212:デフォルトの名無しさん (ワッチョイ a311-Lvg/)
17/07/30 23:26:14.44 hMQywZRx0.net
>>208
C#はMSの技術だろカス(標準化されてるけど)
お前がMSのことをどう思っていようがC#を使う以上無視はできねーよ

213:デフォルトの名無しさん (ワッチョイ 5f4b-V1Wy)
17/07/30 23:27:37.46 DlHK/Glf0.net
荒らしは無視しとけ

214:デフォルトの名無しさん (ワッチョイ 6a91-V1Wy)
17/07/30 23:29:59.21 QVOgnQhb0.net
MSがオワコン=C#オワコンなんだよなぁ

215:デフォルトの名無しさん (ワッチョイ aac4-58MB)
17/07/30 23:32:35.03 6NpzZP8L0.net
なんか発狂してるな
逆鱗に触ったの誰だよ
爆弾抱えて心中しろ

216:デフォルトの名無しさん (アウアウウー Sa9f-HJpE)
17/07/30 23:34:22.18 YWZp07X/a.net
varが問題になる局面ってなかなか出てこない

217:デフォルトの名無しさん (ワントンキン MMda-F/7S)
17/07/30 23:35:35.52 RXgrd63BM.net
このスレ時々タイムスリップしたのかと思う時があるな
オープン化してるし万に一つマイクロソフトが死んでもC#は残るよ
マイクロソフトが死んでもメンテナは死なん

218:デフォルトの名無しさん (ワッチョイ a311-5K3Y)
17/07/30 23:37:42.31 ZiKC4drW0.net
C#という言語仕様は残るかも知れんけど
VisualStudioが死んだら、C#も実質的に心中する様なもんだと思う

219:デフォルトの名無しさん (ワッチョイ 6a91-V1Wy)
17/07/30 23:37:58.76 QVOgnQhb0.net
開発止まったら言語としては遅れって死ぬだろ
マニア向け言語でいいなら構わんが

220:デフォルトの名無しさん (ワッチョイ aa32-7rb8)
17/07/30 23:42:49.87 mbPMaYUG0.net
言語の細かい仕様なんてこだわらないのが吉

221:デフォルトの名無しさん (ワントンキン MMda-F/7S)
17/07/30 23:44:33.48 RXgrd63BM.net
>>217
VSCodeもオープンだしジェットブレインもある
C#専門の奴ってWin & VS以外の環境知らなすぎだろ

222:デフォルトの名無しさん (ブーイモ MM17-goPp)
17/07/30 23:45:42.69 brVl3K5IM.net
言語なんて結局は大企業のちょっとした判断であっという間に消えるよ
最近だとGoogleがKotlinをAndroidで公式にサポートすると言っただけでScalaコミュニティが一瞬で消滅したな

223:デフォルトの名無しさん (ワッチョイ a311-Lvg/)
17/07/30 23:47:17.22 hMQywZRx0.net
>>220
まー仮にVisualStudioとC#が死ぬようなことがあれば、代替となるものが既に広まってるだろうからね

224:デフォルトの名無しさん (スプッッ Sd2a-Lvg/)
17/07/30 23:49:24.59 C1KCpBV+d.net
>>221
既存の膨大な資産を活かしたままC#から移行できるものってあるかい?

225:デフォルトの名無しさん (ワッチョイ caac-6Zqp)
17/07/30 23:49:32.61 bK1p862G0.net
>>199
リファクタリングのAnalyzer作ればいいじゃん
今はRoslyn使えるんだから簡単に作れるでしょ

226:デフォルトの名無しさん (ワキゲー MMa2-lmxC)
17/07/30 23:56:59.50 5BNl8sGvM.net
>>199
スコープって知ってる??

227:デフォルトの名無しさん (ワッチョイ 6a91-V1Wy)
17/07/30 23:57:41.82 QVOgnQhb0.net
VSとVSCodeはぜんぜん違うだろ
C#なんてVSのために言語仕様変えるレベルだから

228:デフォルトの名無しさん (ワッチョイ 6a91-V1Wy)
17/07/31 00:00:04.10 h2jxQj0O0.net
C#とVSは表裏一体
C#の開発が止まればVSの開発も止まる逆も然り

229:デフォルトの名無しさん (ワッチョイ f3c0-ZO1u)
17/07/31 00:01:10.38 XvxSzU+d0.net
>>203
LINQはDB接続時に使うもの、varはvariant型だから禁止な我社環の悪口はやめてもらおうか
コードレビューの相手がそれだからどうにもならんわ

230:デフォルトの名無しさん (ワッチョイ 7b6e-goPp)
17/07/31 00:02:59.49 VY/jm5nF0.net
>>228
そんなところでしか仕事できないなら君もその程度だよ

231:デフォルトの名無しさん (ワッチョイ bea2-ZO1u)
17/07/31 00:11:11.92 wJdn/lI60.net
2.0のコードレビューはさすがに草
技術者殺し過ぎ

232:デフォルトの名無しさん (ワッチョイ 4a5f-OE5G)
17/07/31 00:18:37.03 DV1tFwon0.net
>>208
5年もったら裸で土下座な。

233:デフォルトの名無しさん (ワッチョイ 0fcf-7WXr)
17/07/31 00:41:53.98 1WKiBOmM0.net
Youtuberヒカルが月収を明らかに!!おはよう朝日です出演
URLリンク(www.youtube.com)
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
URLリンク(www.youtube.com)
ユーチューバーの儲けのカラクリを徹底検証!
URLリンク(www.youtube.com)
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
URLリンク(www.youtube.com)
誰も言わないなら俺がYouTuberのギャラ相場を教えます
URLリンク(www.youtube.com)
YouTuberになりたいのは馬鹿じゃない!YouTuberになる方法
URLリンク(www.youtube.com)
最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいい
顔出したくないならラファエルみたいに仮面かぶればいい
手っ取り早く視聴数稼ぐにはシバターみたいな有名ユーチューバーへの物申す系動画がオススメ

234:デフォルトの名無しさん (アウアウイー Saf3-qgku)
17/07/31 02:08:13.61 zMEC1oHaa.net
アルツハイマーの次はコピペマンか

235:デフォルトの名無しさん (ワッチョイ aac4-58MB)
17/07/31 03:35:45.71 R/uMHXjN0.net
次は電波だ

236:デフォルトの名無しさん (ワッチョイ eaea-iltr)
17/07/31 10:40:39.13 YA8bpliG0.net
varでいいなら全部varにする派なのでこういう議論は少し新鮮に感じる

237:デフォルトの名無しさん (スッップ Sd8a-Lvg/)
17/07/31 11:14:16.15 WEBeqjzhd.net
>>235
Microsoft自身がそうしてるもんな

238:デフォルトの名無しさん (ワキゲー MMa2-1i8l)
17/07/31 11:56:10.60 86vv5j6EM.net
すでに3回目ぐらいの話題で毎回全く内容が変わらんので新鮮もクソもない

239:デフォルトの名無しさん (スプッッ Sdc3-3hTc)
17/07/31 12:34:38.89 l4LMfIaPd.net
MSもプロジェクトによっては
newみたいな明示的なとき以外var使うなって言ってる
まぁこの辺は好みもあれば運用するプログラマのレベルによるね
底へばかりならルールは厳しくせざるを得ない

240:デフォルトの名無しさん (スップ Sd8a-Lvg/)
17/07/31 14:34:54.95 Ml/7cMLZd.net
>>238
あいにくvarを使えないほどの底辺と一緒に仕事をする機会がないのでね

241:デフォルトの名無しさん (ブーイモ MMd6-48WN)
17/07/31 15:10:32.64 tEgR4ggYM.net
あいにくvarを乱用するほどの底辺と一緒に仕事をする機会がないのでね

242:デフォルトの名無しさん (バットンキン MMda-igvW)
17/07/31 15:14:52.06 kd2vQWK4M.net
バカって整数の符号とかオーバーフローとかを意識しないバカのこと?

243:デフォルトの名無しさん (スップ Sd8a-Lvg/)
17/07/31 15:17:52.03 Ml/7cMLZd.net
>>240
>>183

244:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/31 15:38:05.10 Em37aLWP0.net
varで書けば書くほどクラスの使用箇所がわけわからなくなりそう
IDEのクラスの参照でvarを見つけてくれるんだろか?
やっみりゃいいんだけど

245:デフォルトの名無しさん (ワッチョイ da91-V1Wy)
17/07/31 15:45:45.43 pHkT1Msv0.net
>>243
var を使ったことないのが分かっちゃうよ

246:デフォルトの名無しさん (ワッチョイ af69-t8sh)
17/07/31 16:15:44.58 Em37aLWP0.net
>>244
で、どうなん?
今、IDE起動するの超面倒臭い

247:あ (スププ Sd8a-BRPM)
17/07/31 18:21:27.34 /DHTAviId.net
>>243
codelens無いの?

248:デフォルトの名無しさん (スップ Sd8a-Lvg/)
17/07/31 19:14:39.65 Ml/7cMLZd.net
>>243
またお前か
VisualStudioすら触ったことなかったのかよ

249:デフォルトの名無しさん
17/07/31 20:01:09.57 pHkT1Msv0.net
たぶんVBの人で、var = Variant 型と思い込んじゃってるんだろうな

250:デフォルトの名無しさん
17/07/31 20:06:51.60 W4UbSJlHM.net
>>248
コード書かないタイプのSE多い
varはVBのVariantと同じで型情報が消えるので禁止
スクリプト言語と同じになってしまいます
真顔で言われた時はいったいどうしようかと思ったよ

251:デフォルトの名無しさん
17/07/31 20:15:21.98 oDbItPw6M.net
>>238
> MSもプロジェクトによっては
> newみたいな明示的なとき以外var使うなって言ってる
どこで言ってるんだ?
脳内じゃないならソースよろ

252:デフォルトの名無しさん
17/07/31 20:17:08.93 amyeNTRe0.net
>varを使うか使わないか
初心者用スレで宗教戦争すんなよお前ら

253:デフォルトの名無しさん
17/07/31 20:49:24.98 zJD0yoJE0.net
荒らしに触るお前らも同罪

254:デフォルトの名無しさん
17/07/31 21:30:48.83 Ml/7cMLZd.net
>>250
スレ読み返せアホ

255:デフォルトの名無しさん
17/07/31 21:31:39.38 Ml/7cMLZd.net
>>253
安価ミスったwww俺まで頭おかしくなったわ

256:デフォルトの名無しさん
17/07/31 22:07:59.92 1Jpq7793a.net
初心者のみなさんは積極的にvarを使いましょう
MSも使えるときは使えって言ってるしヘルプでもvar使ってる

257:デフォルトの名無しさん
17/07/31 22:46:30.23 Em37aLWP0.net
>>255
文字列検索で引っかからんのは頂けんな

258:デフォルトの名無しさん
17/07/31 23:35:56.79 3zcgc/j+0.net
頂かなくて良いから死ね

259:デフォルトの名無しさん
17/07/31 23:47:05.77 tHHdzIHP0.net
文字列検索よりCodeLensの方が便利。

260:デフォルトの名無しさん
17/07/31 23:55:32.54 JdXkXzvI0.net
var[] array = {};
こーゆうのできゆる?

261:デフォルトの名無しさん
17/08/01 00:04:40.32 e+FvcYbC0.net
初心者の質問で申し訳ないんですが、c#のスクリプトって必ず最初にクラスを作成(または継承)しないといけないんでしょうか?

262:デフォルトの名無しさん
17/08/01 00:11:35.45 5fOoTB1q0.net
>>259
その書き方では駄目。
var array = new int[ 0 ];
var array = new int[ 3 ] { 0, 1, 2 };
var array = new [] { 0, 1, 2, 3 };

263:デフォルトの名無しさん
17/08/01 01:31:15.62 edKic7OG0.net
>>250
MS のC# のコーディング規則には、
When the type of a variable is not clear from the context, use an explicit type.
コンテキストから明らかでないときには、型を書け
とある。

264:デフォルトの名無しさん
17/08/01 01:59:26.32 5fOoTB1q0.net
一部だけ抜き出すとニュアンスが変わるから、まずは全部読もう。
C# のコーディング規則 (C#


265:プログラミング ガイド) https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/inside-a-program/coding-conventions



266:デフォルトの名無しさん
17/08/01 02:08:50.05 yW2ASqGfa.net
まだやってんのか
>>262
>>250に反論してるだけなのは分かるが、そういう「訓詁学」に意味はない。
だいたいその文章はちょっとおかしい。
コンパイラに型が分かるなら"clear"じゃないかって言われたら反論できないでしょ。

267:デフォルトの名無しさん
17/08/01 02:29:23.89 yW2ASqGfa.net
っていうか、いい加減論点整理して終わりにした方がいいよ。
(1) varが使える場面では全部varを使え。あるいは使って問題ない
(2) var容認だが明示的に型を書いた方が分かりやすい場万もあるので、
情況によって柔軟に使い分けるべき
(3) varを使うと可読性が落ちるので一律禁止

なんか誤解してるのがいるとしか思えないが、var使え論者(というかC#プログラマの大半)の立場は、
一部のバカを除けば恐らく(2)だと思われる。
varによってむしろ可読性が落ちるケースなんか存在しないと思っている人間は、おそらくむしろ少数派。
その多数派の見解が正しいとすれば、var禁止プロジェクトは一定の合理性があることになる。
メンバーのvarを使うべき場面かどうか判断する能力が疑わしければ、
var禁止の方が多少コスト増であったとしても少なくとも安全だからだ

268:デフォルトの名無しさん
17/08/01 02:33:19.96 5fOoTB1q0.net
>>264
さすがにそれは言いがかりだろw
例も挙げられてるし、人間が見てってことだろう。

269:デフォルトの名無しさん
17/08/01 05:05:12.09 nCDZZVYR0.net
>>262
> コンテキストから明らかでないときには、型を書け

> newみたいな明示的なとき以外var使うなって言ってる
では相当違うと思うぞ w
>>238は脳内確定?

270:遊園地
17/08/01 08:50:27.72 CTbyL2210.net
C# 難しい

271:デフォルトの名無しさん
17/08/01 09:24:34.03 cWGHzdKF0.net
>>260
名前空間にフィールドやメソッドは直接書けないからね。
ただ、メインはProgramクラスじゃなくてもビルドできる。

272:デフォルトの名無しさん
17/08/02 14:06:29.12 /Yd2n8P20.net
初心者すぎて恥ずかしいんですがVisualstudioのC#でLINQをつかいAccessのDBにアクセスしようと考えています。
そこでLINQという項目をVisualstudioで探しているんですが見つけることができません。
どこを探せばよいでしょうか?

273:デフォルトの名無しさん
17/08/02 14:08:35.92 597Omi5cd.net
>>270
LINQ to SQLのことを言ってるんなら、もう非推奨だからやめときな

274:デフォルトの名無しさん
17/08/02 14:12:17.44 /Yd2n8P20.net
>>271
まじですか!!知らなかったです。
別の方法考えます助かりました。ありがとうございます。

275:デフォルトの名無しさん
17/08/02 14:45:10.89 x+1N4OhAM.net
entityframeworkの事じゃないの?

276:デフォルトの名無しさん
17/08/02 17:11:04.60 EHe3ZB7L0.net
EntityFrameworkてAccessに使えるん?

277:デフォルトの名無しさん
17/08/02 17:36:18.47 DSdx5nEBM.net
JetEntityFrameworkってライブラリがあるにはある

278:デフォルトの名無しさん
17/08/02 17:37:18.47 vt8a1S/T0.net
>>274
使えるらしい
URLリンク(qiita.com)

279:デフォルトの名無しさん
17/08/02 17:38:15.34 upkfkfqNa.net
スタンダードな方法はなんなん?

280:デフォルトの名無しさん
17/08/02 17:41:52.53 upkfkfqNa.net
access c# 接続でググると
System.Data.OleDb
とか出てくるけどこれでいいんちゃうの?

281:デフォルトの名無しさん
17/08/02 19:07:55.68 +4F2ZrBo0.net
まずAccessなんて使ってるシステムを捨てろ

282:デフォルトの名無しさん
17/08/02 21:36:57.94 L+93Eq5i0.net
用途によっては MDB 使うよ
(複数端末からアクセスしない、データサイズが知れてる等)
dbOpenTable で開いてインデックスにジャストミートした使い方だと
とにかく速い。べらぼうに速い
Access で簡単に読み書きできるのも素晴らしい

283:デフォルトの名無しさん
17/08/02 21:37:56.32 L+93Eq5i0.net
あ OpenRecordset(テーブル名, dbTable) だったっけ?
SQL文じゃない、それ以前の Btrieve みたいなアクセスの仕方するやつね

284:デフォルトの名無しさん
17/08/02 21:43:07.03 xKynJRToa.net
ダウここに来て7連騰すんのかキチガイやな

285:デフォルトの名無しさん
17/08/02 22:51:04.44 rvyn4SJsa.net
22k$とか半端ないな。完全にバブル
まあスレと関係ないけどねw

286:デフォルトの名無しさん
17/08/03 02:37:18.01 yqoCedJN0.net
株のプログラム作ってる人いるの?

287:デフォルトの名無しさん
17/08/03 07:07:21.62 y/LGBxl4M.net
普通にいるよ

288:デフォルトの名無しさん
17/08/03 08:23:24.22 wSZ2pXrJ0.net
>>280
それももうSQLiteだろ

289:デフォルトの名無しさん
17/08/03 09:23:46.03 G7zaqCUm0.net
ポストSQLiteと言われるRealmってどうなんだろうな?
元はiOSらしいが、最近UWPに対応したそうな

290:デフォルトの名無しさん
17/08/03 14:18:47.80 zSQ4gTJt0.net
URLリンク(ideone.com)
上記のコードなのですが宣言と同時に初期化しようとしているんですが、ビルドが通りません
どう書けば通るのでしょうか?

291:デフォルトの名無しさん
17/08/03 14:29:27.06 XOuExNezd.net
>>288
エラーメッセージ読めよ

292:デフォルトの名無しさん
17/08/03 14:41:53.48 gag1Q2E/d.net
staticとかクラスで配列呼びとかこれ直すとどうなるか気になるけど、目的の物への直し方が分からない初心者

293:デフォルトの名無しさん
17/08/03 16:17:17.57 W8S0u/iSa.net
>>288
逆にどうしてそれで初期化できると思ったのか聞きたいな

294:デフォルトの名無しさん
17/08/03 18:20:40.50 y6PJbWOJ0.net
>>288
まずstaticの意味を調べような

295:デフォルトの名無しさん
17/08/03 19:58:25.54 AAnCTaTb0.net
>>288
思い込みの書式が通ると思うのならプログラムなんかできないから基本から見なおせ
URLリンク(docs.microsoft.com)

296:デフォルトの名無しさん
17/08/03 21:01:13.46 eLAt0wVza.net
また始まったよ
質問者叩いてる奴こそ>>1のテンプレを「基本から見直せ」バカが。
俺はもともと「ふらっと」スレの存在意義なんか認めないけど、
こうやって質問者叩いてるバカに限ってスレ統一しろっていうと反対するのな

297:デフォルトの名無しさん
17/08/03 21:04:28.86 9rdLVHxUa.net
俺は板自体が過疎ってるからどうでもいいぜ

298:デフォルトの名無しさん
17/08/03 21:06:21.11 y6PJbWOJ0.net
>>294
じゃあお前が率先して回答しなよ
口だけじゃないって証明してくれ

299:デフォルトの名無しさん
17/08/03 21:06:50.15 Wy5AX0em0.net
それは君がこのスレを便所だと思っているから言える発言であって
便所に住んでる人からしたらここが自分の部屋なんですよ
スレ民は自分が便所に住んでることを思い出してください

300:デフォルトの名無しさん
17/08/03 21:09:58.25 Wy5AX0em0.net
>>296
それはおかしい
彼はここが便所であると思っていて
ヤジは飛ばせど、関わりあいたくないと考えているのだから
質問には答えないし、そのつもりも無いハズだよ
答えるのはあくまでスレ民の仕事だと

301:デフォルトの名無しさん
17/08/03 21:20:27.19 1DsfYpVq0.net
質問です
最近チンコが痒いんですが
どうすればよいか教えて臭い
(´・ω・`)

302:デフォルトの名無しさん
17/08/03 21:25:09.64 aUvJQCED0.net
hospital.Ablation( Chinko );

303:デフォルトの名無しさん
17/08/03 21:29:08.33 AAnCTaTb0.net
>>294
存在意義認めないのに自治するやつなんか初めて見た
288に対しては無意味な回答しているのは>>290だけだ
お前は2度と来るな

304:デフォルトの名無しさん
17/08/03 21:29:39.92 A2tW+WgX0.net
>>288
・staticなクラスはnew出来ない。
・初期化の仕方が間違ってる。
URLリンク(ideone.com)

305:デフォルトの名無しさん
17/08/03 21:31:46.35 MwbRiP+T0.net
>>302が一番有能

306:デフォルトの名無しさん
17/08/03 21:38:04.30 A2tW+WgX0.net
>>302のコンストラクタ追加版
URLリンク(ideone.com)

307:デフォルトの名無しさん
17/08/03 21:40:01.22 A2tW+WgX0.net
あ、>>304のPointクラスのコンストラクタ間違えた。
ま、分かるでしょ。

308:デフォルトの名無しさん
17/08/03 22:13:07.27 KofxmfPad.net
>>301
直し方分からんから俺も気になるレベルの無意味なレスしたのはすまん
pointの呼び方の直し方がわからんかった
>>304
の書き方でpoint呼べばいいのね

309:デフォルトの名無しさん
17/08/04 21:32:08.81 eXZebYv+0.net
つい最近C#を学習し始めた者です。
null演算子について質問させてください。
null条件演算子/合体演算子を解説しているサイトや書籍に
下記のような両者の併用が紹介されていたのですが、
良く理解できませんでした。
result = a?.xxx ?? b
a.xxxのnullチェックは合体演算子がやってくれているように見えるのですが、
何故a.xxx自体にも条件演算子を設けているのでしょうか?
合体演算子だけを利用した場合とどのように違うのでしょうか?

310:デフォルトの名無しさん
17/08/04 22:01:29.79 ma8HhYcB0.net
aがnullならa.xxxやるとヌルポ例外が発生するでしょ

311:デフォルトの名無しさん
17/08/04 22:03:52.23 RvTw87/B0.net
>>307
これと同じ
if(a != null && a.xxx != null)
result = a.xxx;
else
result = b;

312:デフォルトの名無しさん
17/08/05 00:14:15.76 l55BpX17a.net
>>309
こう書いてくれたほうが分かりやすいのにな

313:デフォルトの名無しさん
17/08/05 00:23:56.45 L80K1fJH0.net
慣れじゃないかな。

314:デフォルトの名無しさん
17/08/05 00:24:38.91 1UeI4N1k0.net
ヌルポ → ガッ
この流れの起源はなんですか?

315:デフォルトの名無しさん
17/08/05 00:26:50.64 BtyjozB4a.net
>>312
スレチ
javaの人に聞きなさい

316:デフォルトの名無しさん
17/08/05 00:30:34.65 LVyF9Gx2a.net
>>310
それはないと思うよw
っていうか。等価コードこうじゃなかったっけ?
if (a == null)
  result = null;
else if (result = a.xxx == null)
  result = b;

317:デフォルトの名無しさん
17/08/05 00:30:46.86 l55BpX17a.net
>>311
こういう初見で見てわからん気持ち悪いコード書く奴早く死ねって思う
一生一人だけでプログラム組んでろよって感じ

318:デフォルトの名無しさん
17/08/05 00:32:53.10 LVyF9Gx2a.net
>>315
いやいや、さすがに>>307の例は読めない自分を恥じなきゃダメ。

319:デフォルトの名無しさん
17/08/05 00:40:32.35 l55BpX17a.net
>>316
でも言語仕様を確認しなきゃ何やってるかわからないぜ
わざわざなんでこんな書き方するの?
気持ち悪い

320:デフォルトの名無しさん
17/08/05 00:49:24.41 7yvfOtT+0.net
>>317
同じものをを複数回かくことに疑問を持たないのは、センスがない

321:デフォルトの名無しさん
17/08/05 00:50:39.67 L80K1fJH0.net
>>314
違う。>>309で合ってる。

322:デフォルトの名無しさん
17/08/05 00:53:06.57 LVyF9Gx2a.net
>>319
ああ、そうだねw
ビール飲みながら適当にレスするとこうなる
>>316こんな偉そうなこと書いてるのに笑えるなw

323:デフォルトの名無しさん
17/08/05 01:01:23.26 jB/epMOsd.net
>>317
言語仕様を知らずにプログラミングできると思う頭をどうにかしろwww

324:デフォルトの名無しさん
17/08/05 01:07:52.25 l55BpX17a.net
>>320
だっせーな
ほら、間違えたじゃんバーカ

325:デフォルトの名無しさん
17/08/05 01:07:52.45 L80K1fJH0.net
>>317
よくある処理の割に記述が長くなるから、簡潔に記述出来るように追加された文法だし。
記述が減ればそれだけバグが入り込む余地が減るし、慣れれば等価コードより読みやすい。

326:デフォルトの名無しさん
17/08/05 01:09:00.48 l55BpX17a.net
>>323
それ、自分のことしか考えてないよね
素直にダサい

327:デフォルトの名無しさん
17/08/05 01:18:59.52 L80K1fJH0.net
>>324
ラムダ式や3項演算子も毛嫌いしてそう。

328:デフォルトの名無しさん
17/08/05 01:24:45.10 jB/epMOsd.net
>>324
お前varも認めないんだろ

329:デフォルトの名無しさん
17/08/05 01:27:34.97 vNOMYJ7x0.net
今時Accessとか使ってる奴いたんだ。
煽りじゃなくて割とまじで

330:307
17/08/05 02:25:47.56 a3wHtGnJ0.net
皆さんレスありがとうございます。
>>309
>>310
なるほど!
仮に>>307の式を合体演算子だけでやると、
a.xxxのnullはチェックできてもa自体のnullは検知できないから
aがnullだと例外になってしまうという事ですね、やっと理解できました

331:デフォルトの名無しさん
17/08/05 02:27:12.87 YGVZb4Ys0.net
C#ってわりかし言語仕様追加される方だと思うけど
C#2.0で頭止まってんの?

332:デフォルトの名無しさん
17/08/05 03:33:33.37 jB/epMOsd.net
こないだはASP.NETチームで、今度はNuGetチームがこの手の話題で炎上か
URLリンク(github.com)

333:デフォルトの名無しさん
17/08/05 08:28:33.27 d5W5Muf+M.net
自分が使う機能を他人が使えない方が悪いと考えるタイプの人間
自分が使えない機能を使う他人の方が悪いと考えるタイプの人間
どっちもどっちの気がするけど
チームや会社の成長や将来性を考えると前者の方がいいよね
後者が群れると互いの足の引っ張り合いになって永遠に停滞する

334:デフォルトの名無しさん
17/08/05 08:39:35.43 F87TSa+B0.net
>>331
役職の手前、後者。
でも、内心は前者って人も少なくないだろうな。
本音と建前だと

335:デフォルトの名無しさん
17/08/05 10:32:36.69 UPRRV420a.net
正直
result = a?.xxx ?? bは気持ち悪い
どのレベルが等価なのかよくわからないから
でも代案を聞かれるとわからない
result = ?a.xxx ?? b
result = a ? a.xxx : b

336:デフォルトの名無しさん
17/08/05 11:01:55.42 P20UcjsVM.net
notnullとoptionalはよ

337:デフォルトの名無しさん
17/08/05 11:08:03.88 UeASor4i0.net
原本がVS2005だから2005で開発してねとか、開発環境縛りで使いたくても使えない言語仕様多すぎて泣きそう
今2017年なのに・・・

338:デフォルトの名無しさん
17/08/05 11:20:19.76 POjfJmBG0.net
うちの親戚の子供がそうだった。
生まれたときからウォシュレット付きの洋式便所だったからウォシュレットがないところは嫌がるし、、
和式にしゃがむこともできない。たぶんボットン便所なんて怖がって近寄らない。

339:デフォルトの名無しさん
17/08/05 11:30:21.81 P20UcjsVM.net
そういう例えだと選ぶ方がワガママで悪いみたいなイメージだけど
企業が社員の移動に馬車を使わせてるようなものだと例えるとイメージが変わるね

340:デフォルトの名無しさん
17/08/05 11:40:50.92 QQbgaNKK0.net
>>327
普通にいるだろ
データベース自体の機能は無償のSQL-Server Expressとかでもいいけどレポート機能とかが便利らしい

341:デフォルトの名無しさん
17/08/05 11:43:09.69 YGVZb4Ys0.net
言語仕様は知らねー方がバカなんだよ
例えばExcelに入った商品リストの合計額調べるとき
・SUM関数使う
・セル1個ずつ選択して足す
・電卓で1個ずつ計算して記入する
どのレベルに合わせるべきかってことよ
SUM関数なんてExcel関数知らんとわからんやんセル一個ずつ足せって言うバカいるかって話
データがそもそもExcelじゃなくて紙ベースデータみたいなときはしゃーない電卓で計算するがの

342:デフォルトの名無しさん
17/08/05 12:12:37.78 FiPcVS8O0.net
>>307,309
より厳密には
result = ((a != null) ? a.xxx : null) ?? b;
と等価。三項演算子使わないとこうかな?(よく確かめてない)
if(a != null)
{
var temp = a.Value;
if( temp == null)
{
result = b;
}else{
result = temp;
}
}else{
result = b;
}
xxxがプロパティやメソッド呼び出しなら、複数回呼ぶと遅くなったり副作用があったりする可能性がある。
あと、スレッドセーフにも関わってくる
URLリンク(docs.microsoft.com)
MSDNにも書いてある
A?.B?.C?[0] ?? E
とかをパフォーマンスやスレッドセーフを考慮して妥当に展開すると十行では収まらないコードになる。
構造からの取り出しの場合同様の処理が連続する可能性も結構あってnullチェックで埋め尽くされるのでNull条件演算子は使えるなら使うべき

343:デフォルトの名無しさん
17/08/05 12:21:22.29 POjfJmBG0.net
>>337
理由があってそうしてるならしょうがないんじゃない?
坂道が多い長崎の住宅地は荷物を馬で運ぶことも多いとか。

344:デフォルトの名無しさん
17/08/05 13:33:46.87 QMwZUMGFa.net
使うには使うけどA?.Bという書式が不気味
先行した多言語があるからそれに合わせたんだから仕方ないが
c#が先にnullチェック演算子をきれいな形で実装できていれば…

345:デフォルトの名無しさん
17/08/05 13:49:49.32 yyPrM6Kja.net
そういうの、大昔の{}が見づらいみたいな思い込みに基づいた言い掛かりと同じだと思うよ
不気味てw

346:デフォルトの名無しさん
17/08/05 14:09:36.65 QMwZUMGFa.net
?演算子の後にドット演算子が来ているようだし
単体で?だと三項演算子とかぶるからMSは ?. と ?[ (?[ ] ではない)の二つを
null条件演算子と呼んでいる
充分気持ち悪い

347:デフォルトの名無しさん
17/08/05 14:11:58.38 QMwZUMGFa.net
?[ が演算子だとして残りの ] は何なのか?

348:デフォルトの名無しさん
17/08/05 17:33:38.81 irr7ncKbd.net
>>335
2005とかもうサポート切れてね?

349:デフォルトの名無しさん
17/08/05 18:41:13.40 JI4Kw2jEa.net
UI部をバージョン依存にして
中の処理をバージョン非依存とかに
する造りじゃないと駄目だな
同じc#で作ったものすら移行できないのは俺らのせいじゃなくて言語作ってる奴が馬鹿なんだから

350:デフォルトの名無しさん
17/08/05 20:00:04.83 pxuR0+Dw0.net
何言ってるのかさっぱり分からんが
多分俺らじゃなくて言語作ってる奴でもなくて347が馬鹿なんだと思う

351:デフォルトの名無しさん
17/08/05 20:02:18.61 JI4Kw2jEa.net
>>348
ああ、うん、早く死ねよ

352:デフォルトの名無しさん
17/08/05 20:04:55.97 jKU+//lw0.net
C#2.0で作ったプロジェクトとソースなら現行のものでビルドしたら問題なく動くんだが
初心者スレで間違った情報広められても困るし業界談義は他でやってもらえないかな

353:デフォルトの名無しさん
17/08/05 20:35:00.59 P20UcjsVM.net
2.0はラムダがないのが致命的だな
LINQライクなライブラリ書いたけどエレガントに記述できない

354:デフォルトの名無しさん
17/08/05 20:40:50.48 9lI3pOf8a.net
>>350
細かいこというと、VS2005の時代のプロジェクトはUAC対応のマニフェストが
自動生成されないので、たぶん単純に変換しただけではGUIアプリの場合は問題が出ると思う

355:デフォルトの名無しさん
17/08/05 20:45:43.72 JI4Kw2jEa.net
>>350
お前嘘つきじゃん

356:デフォルトの名無しさん
17/08/05 20:55:15.95 irr7ncKbd.net
>>350
問題ないかどうかは場合による

357:デフォルトの名無しさん
17/08/05 21:02:43.39 jKU+//lw0.net
>>352
ここを見て
URLリンク(dobon.net)
「管理者として自分自身を起動する」参考にして組んだことはあるけど
マニフェスト自動生成するのは知らなかったというか見てなかったw

358:デフォルトの名無しさん
17/08/06 13:00:00.86 BrCgX9l20.net
元MSだった奴がいってたけど
VS2010当初でも開発に2,000人関わってたらしいよ。

旧バージョンを使って次のバージョンを作っていたとか
VS2010でVS2015といった具合

359:デフォルトの名無しさん
17/08/06 22:21:19.12 KuiVNrm90.net
SharpDevelopを使ってとあるソースを開いて、ビルドしたらNewtonsoft.Jsonが無いよ、と。

SharpDevelopに組み込まれてるNuGetでNewtonsoft.JsonをインストールしようとしたらNuGetが古過ぎてインストールできません、と。

NuGetコマンド単体の最新版を落としてNewtonsoft.Jsonパッケージを導入した。
でもビルドするとNewtonsoftっていうNamespase知りません、みたいなエラー(CS0246)に。

パッケージがGACに入ってる必要があるの?と思ってGacutil.exeを使おうとするも、Visual Studioにしか入ってないっぽい。
でも諸事情でVisual Studioはいま使えない。
何とかSharpDevelopでビルドを通したいんです。何が足らない || 間違ってるのでしょうか?

360:デフォルトの名無しさん
17/08/06 23:00:35.42 wBidTTBD0.net
単純にdllが参照されていないだけでは?

361:デフォルトの名無しさん
17/08/06 23:02:52.27 gMkMFbW8M.net
アセンブリロードのアルゴリズムってどっかに文書化されてたと思う
それ探して読んで一個一個ステップを確認すればいいんじゃないか

362:デフォルトの名無しさん
17/08/07 00:52:46.16 76ycnzjh0.net
ビルドオプションで、エラーメッセージを詳細に表示できないの?
そして、そのエラーメッセージで検索すれば?

363:デフォルトの名無しさん
17/08/07 11:23:39.74 JkTML+vTM.net
358の繰り返しになるけど
NuGet単体版ならプロジェクトがパッケージを自動的に参照とかしないだろうから
明示的に参照させる必要があると思うけど大丈夫?

364:デフォルトの名無しさん
17/08/08 19:51:55.76 sqi2YB040.net
Publicクラスの中にPublicクラスを定義しているソース見かけたんだけど、これって何の意味があるの?

365:デフォルトの名無しさん
17/08/08 20:37:03.55 huw00Yx4a.net
>>362
書いた人に聞かないと分からないでしょ
まあ、推測だけど、たぶんクラスAと一緒にしか使われない、
従属的なクラスBがあったとして、BをAの内部クラスにしたら
そういう従属的な関係が分かりやすくしたいという意図なんじゃないか。
たぶん今時の流儀じゃないと思うけど、.NET 1.0の時代からあるWindows Formなんか
そういうのいくつかあった気がする

366:デフォルトの名無しさん
17/08/09 11:25:35.60 eM0BjlR2M.net
Formクラス1つに対応するビジネスロジッククラス1つを作ること
0個でもだめだし2以上でもだめ
っていう頭のおかしいコーディング規約を押し付けてきたバカSEがいて
そのアホくさい制約を回避するために内部クラスを多用したことがある

367:デフォルトの名無しさん
17/08/09 12:15:14.19 RfXzvPKwM.net
>>364
formと紐付かないクラスを作ればよかったんじゃないの?

368:デフォルトの名無しさん
17/08/09 12:35:36.16 nKeLDL7B0.net
>>363
読み返してみたら確かに内部クラスは従属的な位置付けだわ、サンクス

369:デフォルトの名無しさん
17/08/09 12:47:34.22 eM0BjlR2M.net
>>365
だから作っちゃいけない規約なんだって
FormA LogicA
FormB LogicB
FormC LogicC
って風に最初からクラス構成が固定
なので内部クラスを使うしかなかった

370:デフォルトの名無しさん
17/08/09 13:00:01.19 MPlilw1qd.net
頭おかしいやつの下で働かなくちゃいけないなんて哀れだな

371:デフォルトの名無しさん
17/08/09 13:03:58.48 aEwDYdDeM.net
それを疑問に思わないレベルのバカPGばかり相手にしてるんだろうから仕方ない
PGの能力に全く期待しない前提なら悪くないルールだと思う
参考にさせてもらうわ

372:デフォルトの名無しさん
17/08/09 13:21:54.76 25dY/z/Na.net
>>366
あと、内部クラスって外側の非publicのメンバにもアクセスできるので
(当然インスタンスメンバの場合は参照握ってる必要があるけど)
publicにはしたくないけどある特定のクラスにだけアクセスを許したい、
っていう事情もあった可能性もあるね。

373:デフォルトの名無しさん
17/08/09 20:17:29.94 gdB1BRW90.net
>>367
Formの数しかクラスが存在し得ないとしたらたしかに頭おかしい規則だが、Applicationはどうしたの?

374:デフォルトの名無しさん
17/08/09 20:45:34.77 CWuob4yka.net
wpfのmodelファイルみたいに作って欲しいんちゃう?

375:デフォルトの名無しさん
17/08/09 21:35:29.81 AMRrv1DKM


376:.net



377:デフォルトの名無しさん
17/08/10 03:50:16.42 p+YoIwRr0.net
あるブランチの、あるブランチ(例えばmaster)との差分が
わかる方法ってないですかね?
今は別ディレクトリにクローンしてディレクトリの差分を見ています

378:デフォルトの名無しさん
17/08/10 03:51:33.59 p+YoIwRr0.net
>>374
誤爆しました。すみません

379:デフォルトの名無しさん
17/08/11 13:17:03.53 6/W84wqN0.net
あるファイルと削除しようとすると
「別のプロセスで使用されているため、プロセスはファイル XXXX' にアクセスできません。」と出ます。
vshost32.exe がファイルを掴んでいるので削除できないようです。
なのでVSを終了すれば削除はできます。
自分自身が掴んでいるファイルを削除するのはどうすればいいですか?
別にexeを作成して終了後に起動して削除するくらいしか思いつかないのですが・・・

380:デフォルトの名無しさん
17/08/11 14:04:52.87 es+zQmez0.net
>>376
「あるファイル」も状況もよくわからないが
プロパティからデバッグの項目開いて「Visual Studio ホスティング プロセスを有効にする」のチェックを外す
コード上で掴んだファイルがそのままとか言う話ならそのコード示して

381:デフォルトの名無しさん
17/08/11 17:15:57.26 Aa/k6vVq0.net
>>376
もし画像表示中に削除できない問題なら、ググれば色々やり方が見つかると思うよ

382:デフォルトの名無しさん
17/08/11 17:43:30.26 ppZy/8OZa.net
xmlとかxlsをusingで読み込んでdisposeだかreleaseだかしてない系?

383:デフォルトの名無しさん
17/08/11 18:38:14.54 es+zQmez0.net
>>378
それはこれだな
URLリンク(dobon.net)
ファイルパスを直接渡さなければいいのでストリームでなくてもバイト配列にしてもいい
わかりにくくなるが一行で済ませるには
(Image)new System.Drawing.ImageConverter().ConvertFrom(System.IO.File.ReadAllBytes(filename))とか
>>379
usingから外れると自動でDispose()されるから、それはC#と違う話じゃないかな

384:デフォルトの名無しさん
17/08/11 18:45:46.80 ppZy/8OZa.net
>>380
旧コードはされないらしい
また、クラスを作った奴がやる気なくてもusingで解放されないらしい
usingの自動解放は言語機能ではなく努力目標

385:デフォルトの名無しさん
17/08/11 19:52:36.07 XseWY9lE0.net
関係ないが、HttpClientも一時期話題になったよな

386:デフォルトの名無しさん
17/08/11 20:17:13.35 OJhNtZ6yM.net
クライアント側アプリでは一通りやりたいことできるようになったので、webアプリというか、サーバーサイド系に進みたいのですが、ASP.Netでお勧め書籍ありますか?

387:デフォルトの名無しさん
17/08/11 21:28:23.22 6EMGAntMa.net
なぜここで聞いた?

388:デフォルトの名無しさん
17/08/11 21:34:01.45 IamXCzdT0.net
>>381
usingが努力目標ってなんだそりゃ。usingはスコープを抜ける時に必ずDisposeを呼ぶだけ。
そのクラスのDisposeの実装に問題があるだけだろ。

389:デフォルトの名無しさん
17/08/11 21:37:53.60 wSoZciMN0.net
>>384
え?C#の話だとおもったんだけど違う?

390:デフォルトの名無しさん
17/08/11 21:50:24.05 6EMGAntMa.net
>>385
まあ、そういうことですよ

391:デフォルトの名無しさん
17/08/11 22:13:33.39 IamXCzdT0.net
>>383
ASP.NETとASP.NET MVCは別物なので注意。
今から勉強するなら、ASP.NET MVCの方。

392:デフォルトの名無しさん
17/08/11 22:22:31.29 nYdKnbI0M.net
今は非常に時期が悪いのでMVCすらお勧めできないよ

393:デフォルトの名無しさん
17/08/11 22:26:56.25 IamXCzdT0.net
>>387
usingさん濡れ衣。

394:デフォルトの名無しさん
17/08/11 22:30:44.53 6EMGAntMa.net
>>390
idisposeさんと共犯なので合わせ技で死刑

395:デフォルトの名無しさん
17/08/11 22:49:39.74 XseWY9lE0.net
>>388
ASP.NETとASP.NET Web Formsとを同一視してないかい?

396:デフォルトの名無しさん
17/08/11 22:53:50.57 nYt6U0do0.net
>>392
同じようなもんだろ

397:デフォルトの名無しさん
17/08/11 23:05:25.17 XseWY9lE0.net
>>393
いや全然ちげーよw
ASP.NETの中にMVCとWeb Forms(とその他諸々)が含まれるんだから

398:デフォルトの名無しさん
17/08/11 23:09:41.68 IamXCzdT0.net
>>392
ASP.NETだけだと、WebFormsを指す場合が多いからね。特に書籍。
補足として書いとくべきだったな。

399:デフォルトの名無しさん
17/08/11 23:14:24.88 XseWY9lE0.net
>>395
ASP.NET Core MVCの方にしか力入れてないけどね
あ、最近だと特にSignalRもか

400:デフォルトの名無しさん
17/08/11 23:14:52.52 QPma/SU3d.net
>>395
いつの時代の話だよ

401:デフォルトの名無しさん
17/08/12 04:55:15.59 mqOU9Lu00.net
>>388
ちょww 古い本買ってしまいましたぁー
情報ありがとう(>_<)

402:デフォルトの名無しさん
17/08/12 04:56:24.27 mqOU9Lu00.net
>>389
どのように時期がわるいのですか?
宜しければ業界背景とか教えてください

403:デフォルトの名無しさん
17/08/12 05:03:39.72 mqOU9Lu00.net
あ、ちなみに私は別業界の週末趣味プログラマで、あまりトレンドとかわからんのです

404:デフォルトの名無しさん
17/08/12 06:18:07.36 cSGImtaOa.net
ASPの話題なんでちょっと聞きたいんだけど、linuxサーバー用のwebアプリ作ろうと思ったら.net coreでやるのとjavaでやるのとどっちが敷居低いかな?昔javaでちょっとやってたらマッピングやらがえらい面倒だった記憶あるんだけど

405:デフォルトの名無しさん
17/08/12 06:23:29.36 lZqlh0rmM.net
JavaならSpring Boot使えば楽
.NET Coreは敷居とか気にするレベルの人が手を出しちゃダメ

406:デフォルトの名無しさん
17/08/12 10:17:36.21 tF3yiAv3M.net
>>399
今新しいのに移り変わったんだけど全然普及してない
OSSにいるライバル達が強すぎてびくともしてない
従来使ってた人が離れつつある
目新しさがないのが非常にまずい
今後新しいなにかを提案できなければ
早い時期に丸々消える可能性がある

407:デフォルトの名無しさん
17/08/12 10:35:14.70 L/rIKl2kM.net
>>403
なるほどですね。
しかし、本も買ってしまったし、一通りは知識として吸収しておこう。

408:デフォルトの名無しさん
17/08/12 11:44:11.27 QUYKn6+oM.net
結局、今Webアプリを構築するなら、何がベストなんでしょうか?
クライアント側はjavascript一択ですよね。
サーバ側が、自分はweb formで止まっています。
.net coreなるものを調べてみればいいんでしょうか?

409:デフォルトの名無しさん
17/08/12 11:46:52.46 GgO+n98Ld.net
>>403
.NET Standard2.0あたりを理由として持ち出すならまだしも、そんな理由かよwww

410:デフォルトの名無しさん
17/08/12 11:47:53.88 GgO+n98Ld.net
>>405
Webアプリで何をしたいの?言語はc#縛りなの?

411:デフォルトの名無しさん
17/08/12 11:49:32.71 P/Mf2N0c0.net
pythonだと思う

412:デフォルトの名無しさん
17/08/12 12:03:21.67 QUYKn6+oM.net
>>407
イントラ環境で、DBを絡めた様々な情報を提供したいです。
目的によってGridViewで表示したり、グラフで表示したり。
C#縛りではないですが、VS2008時代にゴリゴリ作った経験があるので一番馴染みがあります。

413:デフォルトの名無しさん
17/08/12 12:23:38.79 lZqlh0rmM.net
Node.jsとかでいいんじゃね
Coreも含めた今時のWebはWinFormsや昔のASP.NETとは全く思想が違って�


414:ト、コンポーネントというものが存在しない MVC系なら何選ぼうが似たようなもんだから環境の整えやすさとかで選べばいいと思うよ



415:デフォルトの名無しさん
17/08/12 12:50:34.80 kxAFQxd/0.net
この前、Rubyとやったわ

416:デフォルトの名無しさん
17/08/12 13:09:44.12 GgO+n98Ld.net
>>410
vs2008使ってた人なら、相当な理由がない限りNode.jsを選択する理由はないな

417:デフォルトの名無しさん
17/08/12 13:11:36.67 zLZ79VVHM.net
>>412
本人にJavaScriptを書く気があるということは十分な理由になりうる

418:デフォルトの名無しさん
17/08/12 13:20:40.09 GgO+n98Ld.net
>>413
DB連携が主だろうからASP.NETでいいだろ
フロントエンドはもちろんjavaScript使うだろうが

419:デフォルトの名無しさん
17/08/12 13:22:56.93 rhDkRh0mM.net
Web初心者ならWebAPl + html + js + cssが簡単でオススメ
難解で無駄の多いサーバーサイドレンダリングは初心者には厳しい
厄介なWebフレームワークも最初は避けたほうがいい

420:デフォルトの名無しさん
17/08/12 13:26:16.90 rTAthi/9d.net
>>415
初心者でWebAPIいきなり立ち上げさせるのか?認証はIdentityServer?
初心者だからこそフレームワークの流儀に従えば簡単にできるものを選択した方がいい
どうせイントラなんだし

421:デフォルトの名無しさん
17/08/12 13:27:25.22 zLZ79VVHM.net
>>414
いやLinuxって言ってるでしょ

422:デフォルトの名無しさん
17/08/12 13:29:09.64 rTAthi/9d.net
>>417
うんそうだね、だから?

423:デフォルトの名無しさん
17/08/12 13:33:29.30 rhDkRh0mM.net
>>416
難しい事は考えなくていい
初心者の作るイントラサービスならCookie認証で十分
モデルバインディングとかテンプレートエンジンとかのあれこれ考えるより
素のhtmlとapiの方が素朴でずっとわかりやすいよ

424:デフォルトの名無しさん
17/08/12 13:34:37.36 zLZ79VVHM.net
>>418
MVCなら言語だけの違いになっちゃうから、もちろんWebFormsを意図してるんだろ?
LinuxでWebFormsが問題なく動作する構成を教えてくれないか
まさかMonoとか言わないよね

425:デフォルトの名無しさん
17/08/12 13:35:49.26 rTAthi/9d.net
>>419
APIの実装は?

426:デフォルトの名無しさん
17/08/12 13:37:33.14 rTAthi/9d.net
>>420
トンデモ理論ワロタwww
LinuxだからASP.NET Coreに決まってるだろカス

427:デフォルトの名無しさん
17/08/12 13:39:12.66 MSpmsm7OM.net
XAMPPでいーよもう

428:デフォルトの名無しさん
17/08/12 13:43:15.73 Y4jkwM06d.net
>>410
ViewComponent

429:デフォルトの名無しさん
17/08/12 13:43:45.21 3DdLvbHE0.net
>>415
SPAやjQueryなんかの動的DOM操作をサーバーサイドレンダリングに移行するとかの話じゃなければ
サーバーサイドの方が分かりやすいと思うがな。動的なページがほとんど無いってんなら話は別だけど。

430:デフォルトの名無しさん
17/08/12 13:46:46.21 zLZ79VVHM.net
>>422
結局MVCやれってこと?
なら 知っている言語 + 新しいアーキテクチャの習得 でNode.jsと対等じゃん
必死に噛み付く意味がわからないな

431:デフォルトの名無しさん
17/08/12 13:49:49.36 Y4jkwM06d.net
>>425
もともとVisualStudioでc#書いてたっぽいしね
サーバーサイドコンプレックスにまみれたフロントエンドエンジニアが、必死にHTML&javaScriptをアピールしているようにしか思えない

432:デフォルトの名無しさん
17/08/12 13:49:59.47 jJHyapDK0.net
>>417
Linuxとは一言も言ってないじゃん
お前の目は腐ってるの?

433:デフォルトの名無しさん
17/08/12 13:50:40.56 Y4jkwM06d.net
>>426
対等だと本気で思ってるのかこのアスペは

434:デフォルトの名無しさん
17/08/12 13:51:48.52 ahseiZ+6d.net
>>426
c#知らない人がなぜ偉そうにしてんのかwww

435:デフォルトの名無しさん
17/08/12 13:52:03.67 zLZ79VVHM.net
>>429
まさかと思うけど、Nodeにサーバーサイドレンダリングのフレームワークが無いとでも思ってるのかな?

436:デフォルトの名無しさん
17/08/12 13:53:01.42 ahseiZ+6d.net
>>431
またアスペのトンデモ理論がでたわー <


437:デフォルトの名無しさん
17/08/12 14:00:25.32 zLZ79VVHM.net
>>432
何がそんなに気に障るのが知らないけど、Web MVCへの移行を前提とした場合において、
入りやすいWeb開発プラットフォームの例としてNodeを挙げただけだよ
サーバーサイドレンダリングだけでいいなら情報の豊富なRailsやPHPの方がもっと入りやすいだろうね
君がその選択肢としてASP.NET Coreを推すなら否定するつもりはないし、俺を攻撃するよりお勧めの本やサイトでも教えてあげたら?

438:デフォルトの名無しさん
17/08/12 14:01:39.24 ahseiZ+6d.net
>>433
お前がなぜここにいるのかわからんわ
別のスレに誘導してさしあげろ

439:デフォルトの名無しさん
17/08/12 14:48:14.56 rhDkRh0mM.net
フロントエンドとバックエンドを疎結合に保つほうが実装も保守も簡単だよ
サーバーサイドレンダリングはその点で劣る
ユーザーインターフェースはフロントエンドに責務を割り振る
サービスはrest apiでバックエンドに責務を割り振る
やることが明確で実装もシンプル、保守も楽チン
おまけに動作も軽快になってユーザーもにっこり

440:デフォルトの名無しさん
17/08/12 14:51:23.91 tF3yiAv3M.net
次のASP.NET core 2.0で.net frameworkが捨てられるって
明言されてるから他に移るにはいい時期だと思うよ
海外の人達はどんどんASP.NETを捨てて新しい言語と別のフレームワークに移ってる最中
2.0が安定するのはリリースされてから1年後あたりだから本当に時期が悪い

441:デフォルトの名無しさん
17/08/12 14:55:12.15 ahseiZ+6d.net
>>436
デマおつ

442:デフォルトの名無しさん
17/08/12 14:55:56.25 tF3yiAv3M.net
ググればわかるよ
ググれば

443:デフォルトの名無しさん
17/08/12 14:57:12.35 ahseiZ+6d.net
>>438
その言葉そっくり返すわwww

444:デフォルトの名無しさん
17/08/12 15:00:38.23 ahseiZ+6d.net
>>438
これのこと言ってんの?
URLリンク(github.com)
違うならソース

445:デフォルトの名無しさん
17/08/12 15:42:51.22 C9lCwxEn0.net
どの人がキチガイじゃないんですか?
ほぼ全てキチガイだと思うので、キチガイじゃない人を挙げてもらった方が早いかなと思いました

446:デフォルトの名無しさん
17/08/12 15:50:11.79 1uDJW21dM.net
>>441
道にキチガイとそうでない人が多数混雑していたという
どんな質問をすればキチガイとそうでない人がわかるでしょうか?
c#で答えなさい(5点)

447:デフォルトの名無しさん
17/08/12 21:37:49.83 49AswPagd.net
>>441
>>436みたいなデマ流すやつもいるから気をつけな

448:444
17/08/12 21:57:25.09 k2L+IUHd0.net
444げっち(´・ω・`)b

449:デフォルトの名無しさん
17/08/12 22:24:47.52 xJjCO2rbM.net
>>443
ググって答え探して見つからなかったんだな
かっこ悪い

450:デフォルトの名無しさん
17/08/12 22:28:17.27 xJjCO2rbM.net
ASP.NET Coreが.NET Frameworkサポートを終了 - InfoQ
URLリンク(www.infoq.com)

451:デフォルトの名無しさん
17/08/12 23:29:34.80 aQBsN87od.net
>>446
>>440に答え書いてあんのに、infoQの集会置くのデマに引っかかったんだな

452:デフォルトの名無しさん
17/08/12 23:29:51.13 aQBsN87od.net
>>447
周回遅れwww

453:デフォルトの名無しさん
17/08/12 23:32:32.20 EdsW5Ca+0.net
>>445
そうだね、まだソース示せてないもんね

454:デフォルトの名無しさん
17/08/14 18:15:11.19 L2nzIYhid.net
>>446
いまだに訂正記事出さないってどういう神経してるんだろうか

455:デフォルトの名無しさん
17/08/14 19:11:43.71 Em96n+jc0.net
クライアント10台分のサーバ間送受信処理100回を並列で処理しようと考えているんだが、
Enumerable.Range(1, 10).AsParallel().ForAll(t =>
{ 
  Enumerable.Range(1, 100).ToList().ForEach(c =>
  {
    クライアントの送受信処理
  }
}

var taskArray = Enumerable.Range(1, 10).Select(t=>
 {
  return Task.Run(() => {  
    Enumerable.Range(1, 100).ToList().ForEach(c =>
    {
     クライアントの送受信処理
    }
}).ToArray();
Task.WaitAll(taskArray );
でそれぞれ実行すると実行順が明らかに違う理由を教えてください。
どちらも10台が順不同で各100回実行すると思いきや、なぜか前者は任意の1,2台だけ100回実行した後に残りを順不同で各100回実行して、後者は狙い通り10台順不同で各100回実行する・・・

456:デフォルトの名無しさん
17/08/14 22:59:55.53 W9S89Wta0.net
ラムダ使うの止めたらええんちゃう?

457:デフォルトの名無しさん
17/08/15 07:23:29.80 +u37r3ou0.net
.ForAllのせいじゃないかな…
Enumerable.Range(1,10)の出力だけが並列で実行されて、
.ForAllの中味は現スレッド1本で順次行われてない?

458:デフォルトの名無しさん
17/08/15 09:17:22.57 OGbi9cLy0.net
>>451
CPUがデュアルコアだからじゃね?

Enumerable.Range(1, 10000).AsParallel().ForAll(i =>
{
Console.WriteLine("{0} 処理開始", i);
Thread.Sleep(1000);
Console.WriteLine("{0} 処理終了", i);
});

459:デフォルトの名無しさん
17/08/15 11:46:48.87 ReZpKiqA0.net
昔XPのころVS2010ExpressでC#で遊んでました
7年ぶりにまたいじってみようかと思い立ったのですが
最新版の無償版ってVS2017Comunityとかいうやつになるんですか?
これで2010時代のソリューション読み込めますか?
当時はC♯としかいってなかったはずだけど今はC#7というみたいですがずいぶん内容は変わったのでしょうか?
浦島状態ですみません。乙ちゃ~ん!

460:デフォルトの名無しさん
17/08/15 11:53:00.99 9bM/QnfQa.net
>>455
(*゚∀゚)b

461:デフォルトの名無しさん
17/08/15 12:43:34.23 20T/HkCgd.net
>>455
vs2010はC#4.0やで

462:デフォルトの名無しさん
17/08/15 13:42:35.85 OC/mFne80.net
>>455
開く時にコンバートする必要あるけど問題なく開けるよ
仕事だと未だにVS2010現役だわ

463:デフォルトの名無しさん
17/08/15 14:20:35.06 ReZpKiqA0.net
>>456-458
どうもありがとう!
なんとかインストールできました
とりあえずフォームアプリのビルドはできました
昔のソリューション読み込みまだ試してません
使い方思い出しながら頑張ります!

464:デフォルトの名無しさん
17/08/15 14:38:44.06 uu1RAYqy0.net
expressと違ってフル版だからそこは新規に覚えるとこかな

465:デフォルトの名無しさん
17/08/15 22:19:09.81 4mEDxDEa0.net
スレ違いかもしれませんが
基本認証のID/PASSでしっかり認識される最大文字数はどうなっていますか?

桁数を増やせば安全かと思い 30桁オーバーで設定していますが
そもそも基本認証では、前方8文字までしか認識されない、といったブログがありました。

466:デフォルトの名無しさん
17/08/15 22:41:40.92 o38j9B5b0.net
webbrowser1のボタンを押す処理でhtmlにnameが無くても
foreach (省略)
{
      if(省略)
 {
// 要素をクリック
he.InvokeMember("click");
}
}
で今まで全て問題なく押せましたが、今日、この書き方で押せないボタンがありました。
he.InvokeMember("click");を実行しても何も反応しないということです。。
ここに居る人でこのような問題を解決した人は解決方法か解決のヒントを教えてください。

467:デフォルトの名無しさん
17/08/15 23:25:24.31 LXsTJVda0.net
>>461
仕様上の制限は特にない
サーバの実装上の制限は知らん

468:デフォルトの名無しさん
17/08/15 23:27:56.73 oy/WgDX5a.net
>>463
1GB超える文字列アタックで死にそうだな

469:デフォルトの名無しさん
17/08/15 23:37:08.46 4mEDxDEa0.net
>>463
知らんかった!ありがとう!

470:デフォルトの名無しさん
17/08/16 00:11:54.50 NyarCuNKM.net
インターネット上のbasic認証っていざとなったら破られても
実害のないものぐらいにしか使わないほうがいいよ
とにかく破られる前提で

471:デフォルトの名無しさん
17/08/16 11:06:00.81 bxXjJfOJa.net
>>465
ハッシュ化にcrypt使ってたらそうなる

472:デフォルトの名無しさん
17/08/16 11:10:45.85 bxXjJfOJa.net
htpasswdのusageに書いてあるな

473:デフォルトの名無しさん
17/08/16 11:16:53.17 IhBdVBZAr.net
みんな、どういう現場でC#使ってるの?
ゲーム開発?

474:デフォルトの名無しさん
17/08/16 12:20:59.08 PSdbs+NyM.net
C#はエンタープライズ系がほとんどでしょ

475:デフォルトの名無しさん
17/08/16 12:41:41.63 G1nlxVN/a.net
トンガリ耳の宇宙人が乗ってるあれかワクテカだな

476:デフォルトの名無しさん
17/08/16 12:46:29.97 qOG9houbd.net
業務アプリで使ってる

477:デフォルトの名無しさん
17/08/16 13:11:32.49 8/sKEHVn0.net
>>471
スポック「んなわけねーだろ、ばーか」

478:デフォルトの名無しさん
17/08/16 13:51:25.49 dFRX8QvB0.net
>>471
マッコイ「精神的に疲れているようだな、メディカルステーションに行こう」

479:デフォルトの名無しさん
17/08/16 14:39:51.83 WlWiRltK0.net
C#(windows)しか知らん奴ばかりかと思ったけど
意外とlinux周りの知識ある奴もいるんだね。
雑魚ばかり、という訳ではなさそうだ

480:デフォルトの名無しさん
17/08/16 15:00:59.30 IhBdVBZAr.net
>>475
linux周りの知識がないと雑魚なの?

481:デフォルトの名無しさん
17/08/16 15:02:12.23 IhBdVBZAr.net
>>470
基幹システムってこと?

482:デフォルトの名無しさん
17/08/16 15:03:51.18 dFRX8QvB0.net
>>476
> C#(windows)
の時点で雑魚以下の奴に構うなよ

483:デフォルトの名無しさん
17/08/16 15:06:37.38 6u80Tv+y0.net
VB++みたいなもんだもんな、C#

484:デフォルトの名無しさん
17/08/16 15:08:45.04 IhBdVBZAr.net
>>478
目糞が鼻糞笑ってたってこと?

485:デフォルトの名無しさん
17/08/16 15:10:04.02 IhBdVBZAr.net
>>479
どの辺がVB++?

486:デフォルトの名無しさん
17/08/16 15:14:27.54 6u80Tv+y0.net
VBと比べて方言レベルの違いしかない

487:デフォルトの名無しさん
17/08/16 15:17:20.37 IhBdVBZAr.net
>>482
ああ、そういえば、C#でできることはVBでもできるって言ってた人がいたけど、そういうこと?

488:デフォルトの名無しさん
17/08/16 15:28:42.63 dFRX8QvB0.net
>>480
耳糞レベルの煽り? w

489:デフォルトの名無しさん
17/08/16 15:31:48.23 IhBdVBZAr.net
>>484
というか、linux周りの知識があれば雑魚ではなくなるのかなって…
目糞が鼻糞笑っててそれを耳糞が煽ってるだけならそれはそれでいいんだけど…

490:デフォルトの名無しさん
17/08/16 15:52:23.27 oFHraf+3a.net
鍛え抜かれた筋肉がないと真のプログラマとは呼べんな

491:デフォルトの名無しさん
17/08/16 15:59:28.74 G1nlxVN/a.net
しょうもないことで荒れてまんなw
山形治生だと思ったけど、UNIX系の人が威張って他を見下してる
(今はそんなことないと思うけど)のは、昔メインフレーマーに同じことをされたからだって書いてたな

492:デフォルトの名無しさん
17/08/16 16:00:28.19 IhBdVBZAr.net
>>486
なるほどー。なんか名言のような気がする。

493:デフォルトの名無しさん
17/08/16 16:09:00.21 IhBdVBZAr.net
>>487
たとえばさ、何万個ものジャガイモの皮を剥いてきた料理人と料理好きの芸能人(グッチ裕三とか)とはやっぱ違うんだよね。
グッチを料理人と思う人はいないもんね。

494:デフォルトの名無しさん
17/08/16 20:58:12.89 2E64Am1a0.net
そしたら君の言う真の料理人達は
グッチ祐三をバカにしてると思うか?

495:デフォルトの名無しさん
17/08/16 21:10:36.48 i+NmnZ+e0.net
>>486
体力マジ大事

496:デフォルトの名無しさん
17/08/16 23:41:57.26 IhBdVBZAr.net
>>490
たしかに!
真の料理人は他の料理人をバカにはしない。
でも弟子には厳しいよ。

497:デフォルトの名無しさん
17/08/17 00:11:24.02 iTFxBfxz0.net
linuxの知識ねーやつは雑魚グラマ

498:デフォルトの名無しさん
17/08/17 00:25:27.24 DvHgRVVt0.net
ム板でやれ

499:デフォルトの名無しさん
17/08/17 00:25:52.50 DvHgRVVt0.net
違った、マ板でやれ

500:デフォルトの名無しさん
17/08/17 01:03:52.74 ugZ0fkzt0.net
>>494
ハイ!

501:デフォルトの名無しさん
17/08/17 16:54:44.90 fSYjKEAR0.net
プログラミング自体初めてで(3日目)、MSのチュートリアルをやってる最中です
URLリンク(msdn.microsoft.com)
このページの内容で質問があります
Listで並べたアイコン(text)をテープルレイアウト上に並べたラベルにランダムで次々に流し込むという内容ですが
次々に流し込むというのはテーブルレイアウトの次のマスへ順番に勝手に流れ込んでいくのですが
どこのマスへ…という指定がなくても、作動しています
で、そのテーブルレイアウトのマスを次々変えているのは簡単に言うと
foreach (Control control in tableLayoutPanel1.Controls)
でループしている間、その都度tableLayoutPanel1.Controlsを変更(適用?)して次のマスへ行く様に作動している
という認識で良いのでしょうか?

502:デフォルトの名無しさん
17/08/17 17:10:40.76 ur5EMh3c0.net
>>497
foreachは含まれる要素全てに実行される
tableLayoutPanel1.Controlsを変更じゃなくtableLayoutPanel1.Controlsに含まれる要素(inの前のControl control )にたいして実行される
デバッガでforeachの中にブレークポイント置いてcontrolの値がどう変わるか確認したほうが分かりやすい

503:デフォルトの名無しさん
17/08/17 17:23:35.76 fSYjKEAR0.net
>>498
ありがとうございます
超初心者の自分にも凄く分かりやすい説明で助かりました
デバッガの使い方調べてみます

504:デフォルトの名無しさん
17/08/17 17:49:30.79 sB3nMuGZr.net
初めてとか超初心者を強調しすぎ。
ここは初心者用スレなのにしつこく強調する意図を勘ぐったり勘ぐらなかったり…

505:デフォルトの名無しさん
17/08/17 18:38:27.43 iTFxBfxz0.net
質問です。

506:デフォルトの名無しさん
17/08/17 18:46:51.87 I0R9izuAa.net
>>500
小姑かよww
くっだらねえ

507:デフォルトの名無しさん
17/08/17 18:47:00.19 4gMV5zAaM.net
for文でデータスキャンしながら、不正データを除外するPGを
C#で書いて、SharpDevelopでVB化したら正常に動作しません。
同じ事が出来るっていう人は嘘つきだと思います。

508:デフォルトの名無しさん
17/08/17 19:03:38.85 sB3nMuGZr.net
>>502
申し訳ない。
必要の無いことをしつこくやってる人がいるとどうも気になってしまう体質でして…

509:デフォルトの名無しさん
17/08/17 19:51:20.19 r/967Sma0.net
外部のアプリ(EXEファイル)を別プレセスで複数実行させるのどうやんの

510:デフォルトの名無しさん
17/08/17 19:56:19.12 ur5EMh3c0.net
>>505
URLリンク(dobon.net)
このあたり

511:デフォルトの名無しさん
17/08/17 20:07:52.35 r/967Sma0.net
>>506
天才
インスタンス化したかったんだありがとう

512:デフォルトの名無しさん
17/08/19 05:38:22.41 pqlrWbIe0.net
タプルでコレクションの中身を書けばノイズが少なくていいかと思って配列に変換するコードを書いてみたら
なんか毒々しいものが出来たんだけどどうすれば改善できる?
URLリンク(ideone.com)

513:デフォルトの名無しさん
17/08/19 09:03:58.70 GJ9v1oeu0.net
>>508
タプルはコレクションではないのでそんな間違った発送は捨てる

514:デフォルトの名無しさん
17/08/19 09:46:57.21 L0VsKhKh0.net
>>508
自前のメソッドなんて使わなくてもSelect使えばIEnumerableなTaple


515:作れると思うが



516:デフォルトの名無しさん
17/08/19 10:19:25.53 pqlrWbIe0.net
new[]{ hoge, hoge } だと冗長やん?
(hoge, hoge) ならスクリプト言語並みにスッキリするから
科学技術計算かなにか向けに数値のリストを渡そうなんて時にはいいよね
一次元ならint[] Nums(params int[] nums) => nums; みたいなのを書けば
Nums(3,4,5)といった感じで可読性もバッチリだけど
問題は二次元になった時
new int[][]{
 Nums(1,2),
 Nums(3,4,5)
}
毎行Numsが出てきたら冗長すぎて耐えられない
どうしてもこうしたい
var hoge = NumArray2(
 (2, 3),
 (4, 5, 6)
);
int[][] NumArray2(params IStructuralComparable[] tuples) => tuples.Select(tuple => tuple.TupleToArray<int>()).ToArray();

517:デフォルトの名無しさん
17/08/19 11:04:54.36 Qv1Dw1g0F.net
Dictionary

518:デフォルトの名無しさん
17/08/19 13:25:33.54 cYLfyEivM.net
でもそれメタプロで遅いし型チェック効かなくなるじゃん
だったらスクリプト言語を使いなよ

519:デフォルトの名無しさん
17/08/19 13:49:29.79 pqlrWbIe0.net
URLリンク(ideone.com) 速度はこれでだいぶまともになると思う

520:デフォルトの名無しさん
17/08/19 13:54:04.95 y3ZCFtJSM.net
>>511
そんなもん一次元で渡してから二次元に変換すりゃいいだろ
括弧すら必要ない

521:デフォルトの名無しさん
17/08/19 14:32:05.62 pqlrWbIe0.net
>>515
1, 2, Delim,
3,4, 5, Delim
みたいに区切りを書くの?
それだとNum(1,2)みたいにするのと冗長さは変わらんでしょ

522:デフォルトの名無しさん
17/08/19 14:39:34.62 GJ9v1oeu0.net
>>516
科学技術計算なら矩形しか使わないからデリミタなんか要らん
numpyなんかだとreshapeで行列の型を読み替えたりするのは普通に行われている

523:デフォルトの名無しさん
17/08/19 15:01:44.09 cYLfyEivM.net
遅すぎわろた
public struct TupleWrapper<T> {
public TupleWrapper(object tuple) { tupleOrValue = tuple; }
public T Value => (T) tupleOrValue;
public int Length => CountItemField() < 8 ? CountItemField() : 7 + GetRest().Length;
public TupleWrapper<T> this[int index] => GetItem(index + 1);
private TupleWrapper<T> GetItem(int i) => i < 8 ? new TupleWrapper<T>(GetItemField(i).GetValue(Tuple)) : GetRest().GetItem(i - 7);
private FieldInfo GetItemField(int i) => Tuple.GetType().GetField($"Item{i}");
private TupleWrapper<T> GetRest() => new TupleWrapper<T>(GetRestField().GetValue(Tuple));
private FieldInfo GetRestField() => Tuple.GetType().GetField("Rest");
private int CountItemField() => Tuple.GetType().GetGenericArguments().Length;
private object Tuple => tupleOrValue;
private readonly object tupleOrValue;
}
var t = (
(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20),
(11, 22, 33, 44)
);
var w = new TupleWrapper<int>(t);
for (int i = 0; i < w.Length; ++i) {
for (int j = 0; j < w[i].Length; ++j) {
Console.Write($"{ w[i][j].Value } ");
}
Console.WriteLine();
}


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch