◎正当な理由による書き込みの削除について:      生島英之とみられる方へ:

ふらっと C#,C♯,C#(初心者用) Part130 [無断転載禁止]©2ch.net YouTube動画>7本 ->画像>11枚


動画、画像抽出 || この掲示板へ 類似スレ 掲示板一覧 人気スレ 動画人気順

このスレへの固定リンク: http://5chb.net/r/tech/1500327645/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

1ななしぃ♯ 転載ダメ©2ch.net (ワッチョイ 93aa-SrFS)2017/07/18(火) 06:40:45.47ID:mH9qbH+m0
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。

他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。

内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。

なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part129
http://mevius.2ch.net/test/read.cgi/tech/1497000961/

■関連スレ
C#, C♯, C#相談室 Part94 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1492843013/

■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/

■情報源
https://msdn.microsoft.com/en-us/library/gg145045.aspx
http://referencesource.microsoft.com/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured

2デフォルトの名無しさん (ワッチョイ d9aa-SrFS)2017/07/18(火) 06:41:42.74ID:mH9qbH+m0
前スレがいつの間にか1000行ってたので取り急ぎ

3デフォルトの名無しさん (ワッチョイ c469-zKZC)2017/07/18(火) 07:54:13.58ID:y43ZtB+J0
並列にしてるのが思い込みらしいから放置でいいよ
やってみねぇでやろうとしちゃうんだな

4デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 11:05:24.85ID:QAHpb4DY0
情報サイト教えて下さい

例えば、
int型の連番配列全てを(for文,等を使わずに)文字列にしたり
一発で配列内の位置を特定して抜き出してから削除する(通常のコードとは違う方法)

便利な命令文とか教えて欲しいです。

5デフォルトの名無しさん (ワッチョイ e6ea-Icm7)2017/07/18(火) 11:13:27.28ID:PJqj9Jnt0
>>4
LINQで調べてみるといいと思う

6デフォルトの名無しさん (ドコグロ MM36-zKZC)2017/07/18(火) 11:37:44.23ID:26IZaJtJM
>>4
何がしたいの?
10年以上やってる俺が必要だと思えない機能なので多分やりたいことが間違ってると思う

7デフォルトの名無しさん (ワキゲー MM6e-FZLt)2017/07/18(火) 12:05:13.73ID:mSXXv0D2M
宿題じゃないの?

8デフォルトの名無しさん (ブーイモ MMfb-gxcq)2017/07/18(火) 12:43:59.95ID:hljMzGriM
とぅーすとりんぐ

9デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 12:48:38.87ID:QAHpb4DY0
ビジアルC#(フォームアプリケーション)でトランプゲーム作ってます。
その為に、配列操作を簡潔にしたいと考えてます。

ボタン入力→コンソールで操作→コンソールから値を受けとる→画像出力
間違ってますか?

10デフォルトの名無しさん (ワッチョイ c469-zKZC)2017/07/18(火) 13:43:03.26ID:y43ZtB+J0
ポインヨ使いの俺にはお前が何を言ってるのかさっぱりわからないぜ

11デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 14:00:23.98ID:QAHpb4DY0
なるほど。

つまり、FlowSimulator見たいなソフトが作りたい!
って事です。

12デフォルトの名無しさん (ワッチョイ c469-zKZC)2017/07/18(火) 14:30:52.59ID:y43ZtB+J0
>>11
よくわかんねーからポーカーやろうぜ
プレーヤー2人ね
ジョーカー入れて53枚から5枚選べる?
もちろんダブっちゃ駄目よ
んでもう一人の分の5枚選べる?
一人目のカードを引いちゃ駄目よ
お互いにいらないカードを捨てて捨てた枚数補充して
お互いに捨てたカードとか相手が持ってるカード補充しちゃ駄目よ

(*゚∀゚)コール!花京院の魂をかけろ!

ここまでで何か行ったか?
なければ完璧だ!健闘を祈る!

13デフォルトの名無しさん (ワッチョイ d896-wbEN)2017/07/18(火) 18:07:34.46ID:QAHpb4DY0
>>12
自分で作れば?

14デフォルトの名無しさん (ワッチョイ c469-zKZC)2017/07/18(火) 18:26:15.96ID:y43ZtB+J0
>>13
自分で作りやすいように書いたのでもちろん作れる!
でも今時トランプゲームなんていらないや(・∀・)
んで必要な配列の処理は洗い出せたのかい?
思ってたんと違う感じになったんじゃないかな?

15デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 18:52:54.47ID:QAHpb4DY0
それは、個人で調べてる。

別の問題で、コードの暗号化(exeファイル)が逆アセンブルで閲覧されてしまうんだが、
何か良い方法無いですか?

16デフォルトの名無しさん (ワッチョイ c469-zKZC)2017/07/18(火) 18:57:11.13ID:y43ZtB+J0
>>15
難読化ツール
Visual Studioに付いてくる

17デフォルトの名無しさん (ブーイモ MM5e-5eCk)2017/07/18(火) 19:02:38.94ID:Y+c+0z9EM
>>15
むしろGithubで公開したら?
自分の価値を高めることを目的とするなら隠すことには全くメリットはないよ

18デフォルトの名無しさん (ワッチョイ c469-zKZC)2017/07/18(火) 19:04:51.06ID:y43ZtB+J0
よし、難読化してgithubで公開だ!

19デフォルトの名無しさん (ワッチョイ ce19-MRQN)2017/07/18(火) 19:08:58.61ID:SlyZJJmU0
宇宙仮面さん生きてる?

20デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 19:23:40.54ID:QAHpb4DY0
Dotfuscatorを検索したけど見つからない。
Visual Studio C# 2008でも付いてる?

21デフォルトの名無しさん (ワッチョイ ce19-MRQN)2017/07/18(火) 19:25:04.23ID:SlyZJJmU0
ぐぐったのか?↑

ぐぐてから質問しろ

22デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 20:00:39.41ID:QAHpb4DY0
何処にあるか分から無い。

23デフォルトの名無しさん (ワッチョイ ceac-hsux)2017/07/18(火) 20:06:29.49ID:FK0nGZqt0
商用で売るんでなければ難読かなんてする理由はまずない

24デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 20:13:24.32ID:QAHpb4DY0
>>23
フリーソフト公開したら、
わざわざ逆アセンブルして、もっとコウしろコードはこう書けとか沢山飛んで来る。
下手クソ、俺ならこう書くぞ! とか、キツイんだよ!

25デフォルトの名無しさん (スフッ Sd94-Icm7)2017/07/18(火) 20:16:55.46ID:z0RvcFUud
>>24
いっそソース公開した上で基本無視して有用そうな情報だけ生かしとけ、それかGithubに上げてプルリクしろIssue立てろと書いとけ

26デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 20:27:30.63ID:QAHpb4DY0
少し、混乱してるから、
一旦、落ち着く。

どうも、ありがとう。

27デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 21:05:16.22ID:QAHpb4DY0
参考にしたのですが、厳しいです。
Azure in microsoft Visual Studio 2017 || Anthony Cangialosi



設定の方法を紹介しているサイトは豊富ですが、
使い方を詳細まで乗せているサイトが見つかりません。

やりたい事
Visual Studio C#2017(フォームアプリケーション)で入力したデータとモデルを指定して、
Azureへデータを渡してから、結果を受け取り。
C#内の表に格納してから、グラフを自動で作成する事はできますか?

できれば、詳しく説明しているサイトを教えて下さい。
それと、個人利用での値段も教えて下さい。

28デフォルトの名無しさん (ワッチョイ ceac-hsux)2017/07/18(火) 21:25:55.45ID:FK0nGZqt0
普通はソースごと上げても無反応なのに、たくさん指摘が飛んでくるなんてありがたい環境じゃん
無価値な指摘は無視すればいいし、有意義な指摘は参考にすればいいだけ

>>27
どこまでまわかってるのか、何がわからないのか具体的に
Azureのサービスは立てられてるの?表からグラフは作れてるのか、そこもわからないのか?

29デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 21:31:45.07ID:QAHpb4DY0
>>28
冗談抜きで、何も分かって無いから顔面蒼白してる。
C#も初心者です。

30デフォルトの名無しさん (ワッチョイ 1e6e-5eCk)2017/07/18(火) 21:45:50.66ID:tovqy0R70
まずその設計が不自然すぎる
Azure使うならASP.NETでWebサービスとして作りなよ
ASP.NETなら書籍買って読めば簡単に使えるようになる

31デフォルトの名無しさん (ワッチョイ d896-1jjp)2017/07/18(火) 21:58:53.20ID:QAHpb4DY0
資料分析任されてけど、一切、来なくなった。
あなたのポジションがなくなりました。とツイッターのメールで飛んで来た。

32デフォルトの名無しさん (ワッチョイ a76f-xIn+)2017/07/19(水) 00:50:57.31ID:42DPUduf0
>>30
お薦め書籍は?

33デフォルトの名無しさん (ワッチョイ df80-l+nO)2017/07/20(木) 10:18:37.61ID:JuWBPChC0
ねーねー
Windows10でアクションセンター出すコマンドラインとかあるの?

探しきれなくて、もし出来ることがわかればC#の処理で開くことができると思うんだけど…


やっぱWinAPIなんかなぁ

34デフォルトの名無しさん (ワッチョイ df19-QK4i)2017/07/20(木) 10:57:07.79ID:vXnrP/ay0
自分でC#で組めよ

35デフォルトの名無しさん (アウアウイー Sa1b-kFCW)2017/07/20(木) 11:33:09.40ID:PstMpBlza
>>33
これで出来たよ
Process.Start(@"ms-actioncenter:");

元ネタはここ
http://winsupersite.com/windows-10/how-open-windows-10-apps-using-shell-commands

36デフォルトの名無しさん (ワッチョイ df80-l+nO)2017/07/20(木) 14:32:49.49ID:JuWBPChC0
>>35
ありがとうございます。
やっぱあるんですね!

37デフォルトの名無しさん (ワッチョイ df19-QK4i)2017/07/21(金) 15:26:36.42ID:h1B8jSWE0
質問です。

C#でIEは操作できますが、

C#でMicrosoft Edgeを操作する事は出来ますか?

38デフォルトの名無しさん (ワッチョイ a779-ijYd)2017/07/21(金) 18:30:07.33ID:ZXE38ZHX0
ググれカスタム

39デフォルトの名無しさん (ワッチョイ df19-QK4i)2017/07/21(金) 18:56:20.59ID:h1B8jSWE0
>>37
だが

誰か教えてくれ

40デフォルトの名無しさん (ワッチョイ c74b-E/h9)2017/07/21(金) 18:56:59.85ID:xK84hYK/0
ググれ

41デフォルトの名無しさん (ワキゲー MM9f-rceg)2017/07/21(金) 19:06:22.38ID:iXuWi2WiM

42デフォルトの名無しさん (ワッチョイ e71c-QxXf)2017/07/22(土) 01:49:06.33ID:SkksAqux0
c#からはやったことないけどできるよ。
ie,chrome,edgeの自動テストを作ってる。

43デフォルトの名無しさん (ワッチョイ df19-QK4i)2017/07/22(土) 03:39:06.11ID:DPcBWKY50
C#でやりたいんだよね >>42

API使ってやってるの?

44デフォルトの名無しさん (ワッチョイ 8732-UCFQ)2017/07/22(土) 04:08:21.08ID:RdoTnEnw0
多分WebDriver使ってるんだろう

45デフォルトの名無しさん (ワッチョイ a70d-/jiT)2017/07/24(月) 16:06:09.79ID:/7atmMFa0
WinForm使って3D表示するとしたら、何が一番手軽なんでしょう?
1枚絵を3D表示して色んな角度から見る程度なら、OpenTKでいいのかな?
ガッツリやるならWPFやUnityに移行した方が良いのかもしれないけども。

46デフォルトの名無しさん (ワッチョイ df19-QK4i)2017/07/24(月) 16:18:13.05ID:kPRQFbx80
なんでc#で3D表示する必要があるんだよ

47デフォルトの名無しさん (ワッチョイ a70d-/jiT)2017/07/24(月) 16:34:47.01ID:/7atmMFa0
最初はBitmap画像を表示するだけだったんで、WinFormで作ったんです。
そしたら後で「これもうちょっと見易くする為に3Dで表示して」って言われたので・・・。

48デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/24(月) 17:00:41.63ID:oo6suuL/0
この場合OpenGLかなぁ?

49デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/24(月) 17:01:32.85ID:oo6suuL/0
OpenTKって俺何か知らん

50デフォルトの名無しさん (ワッチョイ a70d-/jiT)2017/07/24(月) 17:14:44.48ID:/7atmMFa0
「OpenGL C#」でググったところ、
http://qiita.com/okajima/items/8082c0d2473949ec51e8
>OpenTKは、C#からOpenGLをいじるためのほぼ唯一の選択肢となるツールです

ってあったので、OpenGLを使うのならOpenTKを使うしか無いのかなと。
他のラッパーも動かしてみたけども、上手く動かなかったりなので。

51デフォルトの名無しさん (ブーイモ MMff-Czvo)2017/07/24(月) 17:25:57.56ID:vlNeOTKMM
WinFormsにこだわるならElementHostでそこだけWPF使うのが簡単じゃないかな
DirectXを意識するような方法だとゲーム的な作法になるので経験ないならかなりハードルが高いよ

52デフォルトの名無しさん (ワッチョイ a70d-/jiT)2017/07/24(月) 17:32:00.52ID:/7atmMFa0
https://dobon.net/vb/dotnet/control/elementhost.html
WPFコントロールを使用することが出来るのですね。
OpenTKを調べてみたらNuGetから消えてたみたいなので、検討してみます。
ありがとうございます。

53デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/24(月) 17:41:13.07ID:oo6suuL/0
3D回り酷すぎだな
音も相変わらず雑なんかな?

54デフォルトの名無しさん (ワッチョイ df19-QK4i)2017/07/24(月) 18:11:14.11ID:kPRQFbx80
テトリス作ったり3D言い出す奴とか
アホしかいないですね。このスレッドは。

55デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/24(月) 18:21:57.94ID:oo6suuL/0
c#って何にも作れないんですね

56デフォルトの名無しさん (スッップ Sdff-RYCd)2017/07/24(月) 18:33:39.39ID:x3MpulcWd
>>55
お前はな

57デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/24(月) 18:46:20.02ID:oo6suuL/0
>>56
まるで自分なら作れるかのような物言いですね
でも現実をご覧なさい

58デフォルトの名無しさん (ワッチョイ c74b-E/h9)2017/07/24(月) 19:33:29.80ID:lcNIkUFm0
NGスッキリ

59デフォルトの名無しさん (ワッチョイ 476c-HkTs)2017/07/24(月) 21:51:36.91ID:CnUnUECm0

60デフォルトの名無しさん (ワッチョイ e71c-QxXf)2017/07/25(火) 00:07:11.33ID:SY0Mxk4f0
>>43
webdriverをつかってる
c#用のライブラリもあるよ。

61デフォルトの名無しさん (ワッチョイ 8732-UCFQ)2017/07/25(火) 02:24:44.23ID:Qr8ugTQa0
>>52
NuGetにOpenTK v2.0.0あったぞ。

62デフォルトの名無しさん (ワッチョイ df80-l+nO)2017/07/25(火) 13:59:34.79ID:5w9W9evL0
Open Tetsuya Komuro

63デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/25(火) 15:58:59.38ID:IqsCpgPN0
TextFieldParserってバグってんね
連続改行あると処理できねーし
これ地味に困るな

64デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/25(火) 16:04:35.84ID:IqsCpgPN0
外人の作ったもんっていつもこんな感じだな
テストやってんのかよてめー

65デフォルトの名無しさん (ワッチョイ df19-QK4i)2017/07/25(火) 17:07:02.02ID:HJ9x/owo0
>>60
サンキュー

知らなかった

66デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/25(火) 18:46:59.69ID:IqsCpgPN0
CsvHelperでReadメソッド読んだら元の処理に差し替え出来た

ぐぐるとマッピング方式ばっかりなんだけどマッピングなんてしねーよボケがって状況なので
マッピング無し方式を見っけるのに時間かかった

67デフォルトの名無しさん (ワッチョイ 7fa2-QK4i)2017/07/25(火) 19:07:52.65ID:YE6zWRAr0
>>59
これなに?
OpenGLで高度なグラフィックコントロールができるってこと?
ってかLinux向けかな

68デフォルトの名無しさん (ワッチョイ c74b-E/h9)2017/07/25(火) 19:15:57.14ID:Oz2LyY6P0
>>67
無能

69デフォルトの名無しさん (ブーイモ MM8b-pqVL)2017/07/25(火) 21:15:14.41ID:7wirVU/NM
OpenGLはどちらかというと低レベル層のコントロール

70デフォルトの名無しさん (ワッチョイ 8732-UCFQ)2017/07/25(火) 22:02:34.46ID:Qr8ugTQa0
OpenGLをまともにサポートしていないIntelの古いオンボードビデオのPCがまだまだ生き残ってるから、
なるべく多くのPCで動かしたいアプリでOpenGLの採用は厳しいな。

71デフォルトの名無しさん (ワッチョイ bf2a-ltyJ)2017/07/25(火) 23:05:49.65ID:Voswq3dD0
いままでずっとVB.netでwinformアプリ作ってて
いい加減C#の勉強しようと思ったらnamespaceのせいでインデントが余分にいっこ右に行くんだけど
もちろんVBでも一見して見えないだけでNamespaceが宣言されてるのはわかってるんだが、インデント減らす方法ないかな

72デフォルトの名無しさん (ワンミングク MMbf-7cx0)2017/07/25(火) 23:17:42.58ID:tOIsnXkLM
namespace Unko {

class Unker {

}

}

package文が欲しい

73デフォルトの名無しさん (ワッチョイ a76e-wcPB)2017/07/25(火) 23:29:59.95ID:+Z9uPEav0
初心者スレで標準スタイルを破ることを推奨するわけにはいかないだろ
郷に入れば郷に従えとしか

74デフォルトの名無しさん (アウアウイー Sa1b-kFCW)2017/07/26(水) 00:05:38.86ID:u+EoOV6Sa
>>71
VGAやプリントアウトして机上デバッグする時代じゃないんだから意味ないよw

違和感を感じているのならそんなのすぐ慣れる。
恐らく1週間かからない

75デフォルトの名無しさん (ワッチョイ 4769-I4wg)2017/07/26(水) 10:02:54.88ID:0pf2o/yC0
TextFieldParserで思うんだけど
俺が不満なのは連続改行が処理されないことだけだったのに
このクラスは使えない認定せざるを得なかった
クラスの汎用性なんて幻想だよな
じゃ、仮にTextFieldParserの動作を今から変更ってきっとできないんだよな
少なくともそれを待っているよりはCsvHelperを使ったコードに変更したほうが話が早い
クラスなんて所詮こんなもんだよな

76デフォルトの名無しさん (ワッチョイ a311-RAOX)2017/07/27(木) 07:28:39.66ID:I7X5vmO00
ゲーム制作するためにc#を勉強しています。
確かな力が身につく「超」入門 シリーズのc#版が発売されたのですが、読まれた方はいませんか?
または他にプログラム初心者にオススメのc#の本などがあれば教えていただけますか?

77デフォルトの名無しさん (ワントンキン MMda-VkdC)2017/07/27(木) 07:34:29.37ID:SfFXzpg9M
少し古いがCLR via C#ってのがいいよ
細かいところまで嘘や誤魔化しをしないでしっかり書いてくれてる
いい入門書は初心者を煙に巻くような誤魔化しが少ない
俺はこれで入門した

78デフォルトの名無しさん (ササクッテロロ Spb3-RAOX)2017/07/27(木) 10:15:42.11ID:IIZaHOT6p
>>77
ありがとうございます!
色々と調べているんですが、評価もまちまちなので迷っていました。探してみます。

79デフォルトの名無しさん (ササクッテロロ Spb3-RAOX)2017/07/27(木) 11:30:34.93ID:IIZaHOT6p
クラスとオブジェクトについてですが、クラス(雛形)に対して実体化されたものがオブジェクト(実態)と考えていいんですよね?

例えばRPGなんかでいうと

敵クラス
HP(変数)
攻撃力(変数)
HPがある数値を下回ると逃げる(関数)

スライム(敵オブジェクト)
HP 5 (メンバ変数)
攻撃力 3(メンバ変数)
HPが2以下になると逃げる(メンバ関数)

といった感じの理解で良いのでしょうか?また本によってはオブジェクトとインスタンスの説明が似ているので、違いがよくわかっていません。

80デフォルトの名無しさん (ワッチョイ 7e4b-l5iw)2017/07/27(木) 11:47:24.54ID:/bT0ZqW70
スライムクラスが敵クラスを継承していて
個々のスライムがスライムクラスのインスタンスという認識

81デフォルトの名無しさん (ワッチョイ db6f-V1Wy)2017/07/27(木) 11:50:59.30ID:2ra8985e0
オブジェクトはオブジェクト指向にかぎらず広い定義での「物 (変数に入れたり、引数で渡したりできる)」
でオブジェクト指向が出てきて、クラスを実体化したものがインスタンス

言い換えると、クラス(設計書)をインスタンス化(オブジェクトとして実体化)したものがインスタンスって感じでいいんじゃないかな

82デフォルトの名無しさん (アウアウウー Sa9f-HJpE)2017/07/27(木) 11:57:32.87ID:IjeTglv/a
クラスもオブジェクトのひとつ

83デフォルトの名無しさん (ワキゲー MMa2-lmxC)2017/07/27(木) 12:01:13.40ID:eK9+M30XM
ざっくりとした俺のイメージ

家の設計図がオブジェクト
家そのものがインスタンス

84デフォルトの名無しさん (ワッチョイ a311-5K3Y)2017/07/27(木) 12:05:17.06ID:dUeJpjKg0
クラスと構造体をひっくるめた総称がオブジェクト
オブジェクトを実体化した物がインスタンス

85デフォルトの名無しさん (ササクッテロロ Spb3-RAOX)2017/07/27(木) 12:10:08.71ID:IIZaHOT6p
凄い!短時間でこれだけ回答をいただきありがとうございます。
オブジェクトは設計図とか概念って考えた方がいいんでしょうか?
となるとさっきの敵クラスを継承したスライムクラスはオブジェクトというよりインスタンス?

86デフォルトの名無しさん (アウアウウー Sa9f-HJpE)2017/07/27(木) 12:10:51.23ID:IjeTglv/a
C#では単体で概念的なオブジェクトの話はほとんど出てこない

大体object型というすべてのクラスの元になる型の話

87デフォルトの名無しさん (ワッチョイ f3c0-ZO1u)2017/07/27(木) 12:15:51.83ID:hUN6vPrn0
オブジェクトって単語は使わないほうがC#を理解し易いと思う

88デフォルトの名無しさん (ワッチョイ a311-5K3Y)2017/07/27(木) 12:17:23.86ID:dUeJpjKg0
>敵クラスを継承したスライムクラスはオブジェクトというよりインスタンス?

class 派生クラス : 基底クラス{} // これはオブジェクト(クラス)

派生クラス 変数名 = new 派生クラス // これがインスタンス

89デフォルトの名無しさん (アウアウウー Sa9f-HJpE)2017/07/27(木) 12:20:24.13ID:IjeTglv/a
敵 (クラス)

↓継承

スライム (クラス)

↓インスタンス化

スライムA,スライムB,スライムC (インスタンス)

90デフォルトの名無しさん (アウアウウー Sa9f-HJpE)2017/07/27(木) 12:24:19.57ID:IjeTglv/a
今は気にしなくてもいいけど
C#での話と一般的なオブジェクト指向とでは話がまた違う

C#のクラスも構造体も一般的なオブジェクト指向じゃクラスでひとくくり

91デフォルトの名無しさん (ササクッテロロ Spb3-RAOX)2017/07/27(木) 12:25:13.94ID:IIZaHOT6p
敵クラスもスライムも攻撃パターンもオブジェクトとして考えるみたいな感じがオブジェクト指向ですよね?(ざっくり)

c#はオブジェクト指向に基づいて作られているけど、オブジェクトという概念自体はあまり考えずともプログラムは組める、という考えでいいのでしょうか?

92デフォルトの名無しさん (ワッチョイ a311-5K3Y)2017/07/27(木) 12:27:22.18ID:dUeJpjKg0
>攻撃パターン
そこはメンバ関数じゃないかな

>オブジェクトという概念自体はあまり考えずともプログラムは組める、という考えでいいのでしょうか?
それでいいよ
正しいオブジェクト指向とは~とか覚えなくていい 学者や思想家になるんでもなければ
覚えるべきなのは、C#での適切なコーディング

93デフォルトの名無しさん (ワッチョイ a311-5K3Y)2017/07/27(木) 12:28:34.69ID:dUeJpjKg0
つか、C#ってマルチパラダイム言語なので
純粋で完全なオブジェクト指向を適用しようとすると、かえって面倒な事になりかねないしな

94デフォルトの名無しさん (アウアウウー Sa9f-HJpE)2017/07/27(木) 12:30:35.13ID:IjeTglv/a
>>92
攻撃パターンもオブジェクトでいいよ

95デフォルトの名無しさん (ササクッテロロ Spb3-RAOX)2017/07/27(木) 12:37:22.98ID:IIZaHOT6p
ある本によると、
クラスを実体化したものをオブジェクトといい、実体化することをインスタンス化する、またはオブジェクトを生成する、などといいます。クラスはオブジェクトになってから初めて利用できるのです。

と書かれているのですが、実際にはクラスもオブジェクト指向で考えるとオブジェクトの一つだけれど、そこまで考えるとややこしいから無視してていいよ、って感じですかね?

96デフォルトの名無しさん (ササクッテロロ Spb3-RAOX)2017/07/27(木) 12:47:23.41ID:IIZaHOT6p
つまり

敵クラス(雛形クラス)
HP(変数)
攻撃力(変数)
HPがある数値を下回ると逃げる(関数)

スライムクラス(継承クラス)
HP 5 (メンバ変数)
攻撃力 3(メンバ変数)
HPが2以下になると逃げる(メンバ関数)

インスタンス化

スライムA、スライムB、スライムC・・・


でも言ってしまえば、これら全てオブジェクト。

という理解でよろしいでしょうか?

97デフォルトの名無しさん (ワッチョイ ca80-OE5G)2017/07/27(木) 12:50:15.14ID:h/+lquUO0
>>96
インスタンス化したもの(メモリに割り当てられた)がそう。
君がいうようにスライムA,スライムB…がオブジェクトでおk

98デフォルトの名無しさん (ドコグロ MM8a-gqKx)2017/07/27(木) 12:52:42.14ID:P1js1uXhM
またオレオレ定義でグダグダになっとる w
イメージなら>>83がまあまともだと思うわ

99デフォルトの名無しさん (ワキゲー MMa2-1i8l)2017/07/27(木) 13:12:19.93ID:xd52THukM
オブジェクトって言葉はふわふわしがちな印象だから
実際のプログラム言語ベースで考える場合とかは使わないほうが安全
C#ならクラス(構造体含む)とインスタンスで事足りる

100デフォルトの名無しさん (ワッチョイ da91-V1Wy)2017/07/27(木) 13:33:43.77ID:NOEMiJHP0
C#(VB.NET)の継承は、なんちゃってだからなぁ

101デフォルトの名無しさん (ワッチョイ ca19-ZO1u)2017/07/27(木) 14:15:37.95ID:CNHQ1SOW0
ぶっちゃけ

継承とかして実装するから
可読性が悪くなって保守コストがかかる事分からんのかねぇ

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

オブジェクト指向(ツリー構造的な意味で)は合わないと思う

103デフォルトの名無しさん (アウアウイー Saf3-qgku)2017/07/27(木) 16:38:48.16ID:A+CF0/O/a
>>96
オブジェクトとは何か、みたいな哲学的疑問(笑)が気になるのは
よく分かるけど、そういうのは後回しで十分だし後回しにした方がいいと思うよw
たぶん、不毛なだけw

初心者は具体的なコード例を見て、どういうコードがどう機能するか、
何が実現できるのか、そういうところに集中した方がいいと思う

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

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

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

107デフォルトの名無しさん (アウアウイー Saf3-qgku)2017/07/27(木) 19:25:46.31ID:okcLdcsWa
オブジェクトはともかく、インスタンスなんて変な例えや哲学的な話じゃなくて、
もっと現実のコード寄りに「newすると作られて使えるようになる何か」
ぐらいにに理解した方がいいよw

しつこいけど、初心者にとって重要なのは「インスタンスって何?」みたいな意味論じゃなくて
インスタンスを作るコードをどう書くか、どう記述したらインスタンスのメンバーにアクセスできるか、
っていう機能主義的な具体論

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

109デフォルトの名無しさん (ワキゲー MMa2-lmxC)2017/07/27(木) 20:46:55.30ID:eK9+M30XM
>>107
それは強く同意だな
俺としてはオブジェクトとかインスタンスとかの言葉すら知らなくていいとも思ってる

newしたらなんか動いた!すげー!
くらいの軽い感覚が理想

110デフォルトの名無しさん (ワッチョイ a311-RAOX)2017/07/27(木) 22:08:18.79ID:I7X5vmO00
みなさんありがとうございます。>>96です。

皆さんがおっしゃるように、とにかくオブジェクトが云々と考えるより構文をたくさん打って感覚で覚えていくのが一番の近道なのかもしれません。

でも皆さんの話を聞いて少し頭の中が晴れてきました。
ありがとうございました。

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

112デフォルトの名無しさん (ワッチョイ 0fe4-Tef8)2017/07/27(木) 22:30:42.28ID:aAe8+IMH0
>>95
とりあえずその本のタイトルと筆者をさらせ

オブジェクト指向ってのもいくつかの流派があるから、一概には言えないが
C#ベースで説明してるならその本は焼き捨てた方が良い

113デフォルトの名無しさん (ワッチョイ 0fe4-Tef8)2017/07/27(木) 22:36:39.83ID:aAe8+IMH0
>>83,98
その例えならクラスは何よ?
その答え見ないとまともかどうかは何とも言えん

それがC#での一般的な用法になじむかどうかは別だがな

114デフォルトの名無しさん (アウアウイー Saf3-qgku)2017/07/27(木) 22:45:52.46ID:zjuaYXLUa
>>112
誰に向かって何を威張ってるのか知らんけど、>>95にあるような記述は
初心者向けのざっくりとした説明としてはまあ妥当なもの。

最初から重箱の隅つつく勢いで厳密に矛盾がないように書いたら初心者は理解できないよ。
ばっかじゃないの

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

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

ふらっと C#,C♯,C#(初心者用) Part130 [無断転載禁止]©2ch.net	YouTube動画>7本 ->画像>11枚
ふらっと C#,C♯,C#(初心者用) Part130 [無断転載禁止]©2ch.net	YouTube動画>7本 ->画像>11枚

117デフォルトの名無しさん (ワッチョイ bedb-iPV5)2017/07/27(木) 23:20:12.49ID:OcfywRta0
classって、共通の性質や特徴を有するものの分類とかいう意味みたい。
オブジェクト指向の言語は、大体がobjectを基本として、そこから色んな性質に分けていったものをクラスにして「名前をつけて」あげる。
オブジェクト指向でいうクラスは「分類整理のやり方、結果」と言えるんじゃないかな。

動物とか車とかに例えたりする説明の仕方もありだと思う。けど、分類整理のやり方という文脈がないと、継承とか派生、つまり上下・並列の概念が分かりにくくなったりしないかな。
いま目の前にライオンが2匹いたとして、同じライオンとして分類していいのか、タテガミの長さが分類のポイントなのかとか、片方は外敵から身を守るために火を噴くとか。ペンギンと比べてどの程度同じ分類が出来て、どの程度違いがあるのかとか。

まとめると、モノでも生き物でも何かしらの特徴とか性質を持っていて、特徴で分けたのがクラス。
オブジェクト指向とは指向、言い換えると、方向性としてはモノを「最小の単位」として扱うことを表している。元素や光といった、もっと根本的な最小になる要素もあるけど、そのレベルで扱おうとすると色々細かすぎたり、人が理解しにくいから。

かな?俺もよく分からなくなってきた。
個人的には日本に来るとき訳する際に、継承とかいう普段使い慣れない概念語じゃなく、「環境適応」とか「マイナーチェンジ」とかがよかったのかなと勝手に思ってる。

118デフォルトの名無しさん (ワッチョイ a311-5K3Y)2017/07/27(木) 23:32:44.71ID:dUeJpjKg0
>>117
後半に行くに連れて、段々変になっていってるぞ

最も重要な点は、
「データ(プロパティ)」と「振る舞い(メソッド)」を1つにパッケージする事だろう
一々現実世界の物体に例えて説明する必要は無い

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

120デフォルトの名無しさん (ワッチョイ bedb-iPV5)2017/07/27(木) 23:52:55.67ID:OcfywRta0
>>118
データと振る舞い、そこが理解できたらパッと先が開ける感あるんだけど、灯台元暗し的に回り道しちゃうよね。

質問者の人には、その疑問は忘れず、さりとて目の前の事をこなしてみて、たまーにまた疑問に立ち返って欲しいなあ。試行錯誤してるある瞬間に、パッと思い出してすんなり受け入れられる時が来ると思う。

オブジェクト指向だとかなんだとか、結局はどっかのオッチャンインスタンスが考えたものだろうし、完全な答えはないんだろうなぁ。

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

でも意思の疎通はかなりできてしまうという曲者

122デフォルトの名無しさん (アウアウイー Saf3-qgku)2017/07/28(金) 00:24:58.46ID:EhJxrJBra
哲学的な話は初心者には意味ないって自分で書いておいてあれだけど、
あえてそういう話をすれば、オブジェクトっていうのは「~であるかのように振舞う仮想機械」
だと考えるのが一番いいと思うよ。

従来の構造体+関数より分かりやすく仮想機械を記述するための仕組みがクラス。
仮想機械の組み合わせでプログラムを作りましょう、っていうのが(もっとも素朴な)オブジェクト指向

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

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

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

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

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

128遊園地 (ワッチョイ be96-ywSo)2017/07/28(金) 10:42:44.33ID:asrj9iFF0
初心者として記載

基本的にintでも良いと思う。けど、 true(1) false(0)で詳細分けする時に便利
http://ideone.com/7joXzQ

129遊園地 (ワッチョイ be96-ywSo)2017/07/28(金) 10:59:03.19ID:asrj9iFF0
bool a = true;
bool b = false;

bool c = null; // error CS0037: Null 非許容の値型であるため、Null を 'bool' に変換できません
bool d = 0; // error CS0029: 型 'int' を 'bool' に暗黙的に変換できません

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

131デフォルトの名無しさん (ワッチョイ 3732-gqPh)2017/07/28(金) 20:00:02.99ID:pQs+fj960
>>127
とりあえず、整数ならint、小数点以下が必要ならdoubleを使っておけば良い。
floatを使うメリットはあまり無い。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

147デフォルトの名無しさん (ワッチョイ 738e-OE5G)2017/07/29(土) 18:33:12.08ID:Qn9Ku8Gw0
frortはfrort型だろ

読み方はfrortって読むんだ

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

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

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

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

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

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

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

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

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

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

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

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

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

161デフォルトの名無しさん (アウーイモ MM9f-MVxL)2017/07/30(日) 15:06:34.85ID:bPp21s/fM
でもさ、ソモソモなんで型分けてるかと言うと
消費する容量が違うからじゃないの?

バリアント型って結構デカイとかないの?
例えばbyteで済むならbyteの方がよくね?

162デフォルトの名無しさん (ワッチョイ af69-t8sh)2017/07/30(日) 15:11:52.74ID:/FPaeL7f0
>>161
違うよ
型ってのはあくまで気分なんだよ
厳密に定義したらわかりやすいし
でも厳密にし過ぎると使いにくい

マシンみたいなPGにはこんなもん必要ない
メモリ上にはアドレスと実際の値
それしかない
そこになんのデータを入れてるかなんて知ったこっちゃない

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

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

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

166デフォルトの名無しさん (ワッチョイ a311-5K3Y)2017/07/30(日) 16:04:34.61ID:ZiKC4drW0
>>161
C#に限った話なら
byteはSystem.Byte構造体のエイリアスだし、
intはSystem.Int構造体のエイリアスだから
当然、消費するメモリ容量に差は出るが

大昔ならいざ知らず、現代のマシン環境において
そこまでメモリ容量を切り詰めて考えなきゃならん場面なんざ、そうそうねえよ
メモリを節約したきゃ、変数のスコープや生存期間を見直した方がいい

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

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

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

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

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

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

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

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

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

176デフォルトの名無しさん (ワッチョイ a311-5K3Y)2017/07/30(日) 18:24:40.67ID:ZiKC4drW0
パッと見で型が明確な場合は、varで問題無いと思ってる
varで訳が分からなくなるなら、メソッドを肥大化させ過ぎという意見も理解は出来る

しかし、それはそれとして
型名をきちんと書くのが手癖として身に付いてしまってるのだ

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

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

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

180デフォルトの名無しさん (ワッチョイ be61-ZO1u)2017/07/30(日) 18:58:07.04ID:xsWXBNij0
ここ初心者の質問スレなんだよ
質問でなく議論したいなら
ふらっと C#,C♯,C#(議論用)
http://mevius.2ch.net/test/read.cgi/tech/1469538912/
でやれよ

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

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

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

https://github.com/dotnet/roslyn/blob/master/.editorconfig

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

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

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

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

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

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

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

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

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

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

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

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

196デフォルトの名無しさん (ワッチョイ eae7-DHU9)2017/07/30(日) 22:53:22.17ID:Pvq5DEUn0
自分はなんでもvarは使わない派
右辺見ればわかるときだけ使うからマウスカーソル当てる必要もない

var list = new List<int>();
こういうのも気に入らないの?

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

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

199デフォルトの名無しさん (ワッチョイ af69-t8sh)2017/07/30(日) 22:57:14.29ID:/FPaeL7f0
>>195
メソッド1個しか読まねーわけじゃねーじゃん
じゃあ30万行のコードのプロジェクトがあって1万行もvarがあったら
1万回もマウスの素振りすんだぞオメー

単純に害にしかならないと思う
varを本来の型に1発変換できるリファクタリングができればえーけどね

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

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

これを禁止で困る奴がこの世にいない

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

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

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

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

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

207デフォルトの名無しさん (アウアウイー Saf3-qgku)2017/07/30(日) 23:22:03.74ID:FlO7tdYLa
またアルルハイマーどものが繰り言言い合ってるのか。

繰り言を楽しく感じる奴は比喩じゃなく本当に病気だからマジでまずは精神科で
診てもらった方がいいよ。これ本当にそう思う。
重症化してからではもう遅い。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

232デフォルトの名無しさん (ワッチョイ 0fcf-7WXr)2017/07/31(月) 00:41:53.98ID:1WKiBOmM0
Youtuberヒカルが月収を明らかに!!おはよう朝日です出演


第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!

&t=61s
ユーチューバーの儲けのカラクリを徹底検証!

&t=504s
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!

&t=326s
誰も言わないなら俺がYouTuberのギャラ相場を教えます

&t=118s
YouTuberになりたいのは馬鹿じゃない!YouTuberになる方法



最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいい
顔出したくないならラファエルみたいに仮面かぶればいい
手っ取り早く視聴数稼ぐにはシバターみたいな有名ユーチューバーへの物申す系動画がオススメ

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

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

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

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

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

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

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

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

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

242デフォルトの名無しさん (スップ Sd8a-Lvg/)2017/07/31(月) 15:17:52.03ID:Ml/7cMLZd

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

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

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

246(スププ Sd8a-BRPM)2017/07/31(月) 18:21:27.34ID:/DHTAviId
>>243
codelens無いの?

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

248デフォルトの名無しさん (ワッチョイ da91-V1Wy)2017/07/31(月) 20:01:09.57ID:pHkT1Msv0
たぶんVBの人で、var = Variant 型と思い込んじゃってるんだろうな

249デフォルトの名無しさん (ワンミングク MMda-F/7S)2017/07/31(月) 20:06:51.60ID:W4UbSJlHM
>>248
コード書かないタイプのSE多い
varはVBのVariantと同じで型情報が消えるので禁止
スクリプト言語と同じになってしまいます
真顔で言われた時はいったいどうしようかと思ったよ

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

251デフォルトの名無しさん (ワッチョイ a311-5K3Y)2017/07/31(月) 20:17:08.93ID:amyeNTRe0
>varを使うか使わないか
初心者用スレで宗教戦争すんなよお前ら

252デフォルトの名無しさん (ワッチョイ 5f4b-V1Wy)2017/07/31(月) 20:49:24.98ID:zJD0yoJE0
荒らしに触るお前らも同罪

253デフォルトの名無しさん (スップ Sd8a-Lvg/)2017/07/31(月) 21:30:48.83ID:Ml/7cMLZd
>>250
スレ読み返せアホ

254デフォルトの名無しさん (スップ Sd8a-Lvg/)2017/07/31(月) 21:31:39.38ID:Ml/7cMLZd
>>253
安価ミスったwww俺まで頭おかしくなったわ

255デフォルトの名無しさん (アウアウウー Sa9f-HJpE)2017/07/31(月) 22:07:59.92ID:1Jpq7793a
初心者のみなさんは積極的にvarを使いましょう

MSも使えるときは使えって言ってるしヘルプでもvar使ってる

256デフォルトの名無しさん (ワッチョイ af69-t8sh)2017/07/31(月) 22:46:30.23ID:Em37aLWP0
>>255
文字列検索で引っかからんのは頂けんな

257デフォルトの名無しさん (ワッチョイ 8b3a-58MB)2017/07/31(月) 23:35:56.79ID:3zcgc/j+0
頂かなくて良いから死ね

258デフォルトの名無しさん (ワッチョイ 3732-gqPh)2017/07/31(月) 23:47:05.77ID:tHHdzIHP0
文字列検索よりCodeLensの方が便利。

259デフォルトの名無しさん (ワッチョイ 7be6-FCNm)2017/07/31(月) 23:55:32.54ID:JdXkXzvI0
var[] array = {};
こーゆうのできゆる?

260デフォルトの名無しさん (ワッチョイ a311-RAOX)2017/08/01(火) 00:04:40.32ID:e+FvcYbC0
初心者の質問で申し訳ないんですが、c#のスクリプトって必ず最初にクラスを作成(または継承)しないといけないんでしょうか?

261デフォルトの名無しさん (ワッチョイ 3732-gqPh)2017/08/01(火) 00:11:35.45ID:5fOoTB1q0
>>259
その書き方では駄目。
var array = new int[ 0 ];
var array = new int[ 3 ] { 0, 1, 2 };
var array = new [] { 0, 1, 2, 3 };

262デフォルトの名無しさん (ワッチョイ 0f4b-Liv4)2017/08/01(火) 01:31:15.62ID:edKic7OG0
>>250
MS のC# のコーディング規則には、
When the type of a variable is not clear from the context, use an explicit type.
コンテキストから明らかでないときには、型を書け
とある。

263デフォルトの名無しさん (ワッチョイ 3732-gqPh)2017/08/01(火) 01:59:26.32ID:5fOoTB1q0
一部だけ抜き出すとニュアンスが変わるから、まずは全部読もう。

C# のコーディング規則 (C# プログラミング ガイド)
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/inside-a-program/coding-conventions

264デフォルトの名無しさん (アウアウイー Saf3-qgku)2017/08/01(火) 02:08:50.05ID:yW2ASqGfa
まだやってんのか

>>262
>>250に反論してるだけなのは分かるが、そういう「訓詁学」に意味はない。
だいたいその文章はちょっとおかしい。
コンパイラに型が分かるなら"clear"じゃないかって言われたら反論できないでしょ。

265デフォルトの名無しさん (アウアウイー Saf3-qgku)2017/08/01(火) 02:29:23.89ID:yW2ASqGfa
っていうか、いい加減論点整理して終わりにした方がいいよ。

(1) varが使える場面では全部varを使え。あるいは使って問題ない

(2) var容認だが明示的に型を書いた方が分かりやすい場万もあるので、
情況によって柔軟に使い分けるべき

(3) varを使うと可読性が落ちるので一律禁止


なんか誤解してるのがいるとしか思えないが、var使え論者(というかC#プログラマの大半)の立場は、
一部のバカを除けば恐らく(2)だと思われる。

varによってむしろ可読性が落ちるケースなんか存在しないと思っている人間は、おそらくむしろ少数派。

その多数派の見解が正しいとすれば、var禁止プロジェクトは一定の合理性があることになる。
メンバーのvarを使うべき場面かどうか判断する能力が疑わしければ、
var禁止の方が多少コスト増であったとしても少なくとも安全だからだ

266デフォルトの名無しさん (ワッチョイ 3732-gqPh)2017/08/01(火) 02:33:19.96ID:5fOoTB1q0
>>264
さすがにそれは言いがかりだろw
例も挙げられてるし、人間が見てってことだろう。

267デフォルトの名無しさん (ワッチョイ 6a11-gqKx)2017/08/01(火) 05:05:12.09ID:nCDZZVYR0
>>262
> コンテキストから明らかでないときには、型を書け

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

268遊園地 ◆OM5/jtEIXw (ワッチョイ be96-FEN5)2017/08/01(火) 08:50:27.72ID:CTbyL2210
C# 難しい

269デフォルトの名無しさん (ワッチョイ ca80-OE5G)2017/08/01(火) 09:24:34.03ID:cWGHzdKF0
>>260
名前空間にフィールドやメソッドは直接書けないからね。

ただ、メインはProgramクラスじゃなくてもビルドできる。

270デフォルトの名無しさん (ワッチョイ 4bed-V1Wy)2017/08/02(水) 14:06:29.12ID:/Yd2n8P20
初心者すぎて恥ずかしいんですがVisualstudioのC#でLINQをつかいAccessのDBにアクセスしようと考えています。
そこでLINQという項目をVisualstudioで探しているんですが見つけることができません。
どこを探せばよいでしょうか?

271デフォルトの名無しさん (スップ Sd2a-Lvg/)2017/08/02(水) 14:08:35.92ID:597Omi5cd
>>270
LINQ to SQLのことを言ってるんなら、もう非推奨だからやめときな

272デフォルトの名無しさん (ワッチョイ 4bed-V1Wy)2017/08/02(水) 14:12:17.44ID:/Yd2n8P20
>>271
まじですか!!知らなかったです。
別の方法考えます助かりました。ありがとうございます。

273デフォルトの名無しさん (ワキゲー MMa2-lmxC)2017/08/02(水) 14:45:10.89ID:x+1N4OhAM
entityframeworkの事じゃないの?

274デフォルトの名無しさん (ワッチョイ 7e4b-kx8D)2017/08/02(水) 17:11:04.60ID:EHe3ZB7L0
EntityFrameworkてAccessに使えるん?

275デフォルトの名無しさん (ドコグロ MM3b-grlv)2017/08/02(水) 17:36:18.47ID:DSdx5nEBM
JetEntityFrameworkってライブラリがあるにはある

276デフォルトの名無しさん (ワッチョイ da66-ZO1u)2017/08/02(水) 17:37:18.47ID:vt8a1S/T0

277デフォルトの名無しさん (アウアウイー Saf3-t8sh)2017/08/02(水) 17:38:15.34ID:upkfkfqNa
スタンダードな方法はなんなん?

278デフォルトの名無しさん (アウアウイー Saf3-t8sh)2017/08/02(水) 17:41:52.53ID:upkfkfqNa
access c# 接続でググると
System.Data.OleDb
とか出てくるけどこれでいいんちゃうの?

279デフォルトの名無しさん (ワッチョイ 6a91-V1Wy)2017/08/02(水) 19:07:55.68ID:+4F2ZrBo0
まずAccessなんて使ってるシステムを捨てろ

280デフォルトの名無しさん (ワッチョイ da91-V1Wy)2017/08/02(水) 21:36:57.94ID:L+93Eq5i0
用途によっては MDB 使うよ
(複数端末からアクセスしない、データサイズが知れてる等)

dbOpenTable で開いてインデックスにジャストミートした使い方だと
とにかく速い。べらぼうに速い

Access で簡単に読み書きできるのも素晴らしい

281デフォルトの名無しさん (ワッチョイ da91-V1Wy)2017/08/02(水) 21:37:56.32ID:L+93Eq5i0
あ OpenRecordset(テーブル名, dbTable) だったっけ?
SQL文じゃない、それ以前の Btrieve みたいなアクセスの仕方するやつね

282デフォルトの名無しさん (アウアウイー Saf3-V1Wy)2017/08/02(水) 21:43:07.03ID:xKynJRToa
ダウここに来て7連騰すんのかキチガイやな

283デフォルトの名無しさん (アウアウイー Saf3-qgku)2017/08/02(水) 22:51:04.44ID:rvyn4SJsa
22k$とか半端ないな。完全にバブル
まあスレと関係ないけどねw

284デフォルトの名無しさん (ワッチョイ 2b11-FvKw)2017/08/03(木) 02:37:18.01ID:yqoCedJN0
株のプログラム作ってる人いるの?

285デフォルトの名無しさん (ブーイモ MM5b-nF2T)2017/08/03(木) 07:07:21.62ID:y/LGBxl4M
普通にいるよ

286デフォルトの名無しさん (ワッチョイ 476f-X4yY)2017/08/03(木) 08:23:24.22ID:wSZ2pXrJ0
>>280
それももうSQLiteだろ

287デフォルトの名無しさん (ワッチョイ b366-/FH4)2017/08/03(木) 09:23:46.03ID:G7zaqCUm0
ポストSQLiteと言われるRealmってどうなんだろうな?
元はiOSらしいが、最近UWPに対応したそうな

288デフォルトの名無しさん (ワッチョイ 91aa-6w9M)2017/08/03(木) 14:18:47.80ID:zSQ4gTJt0
http://ideone.com/I4S7rq
上記のコードなのですが宣言と同時に初期化しようとしているんですが、ビルドが通りません
どう書けば通るのでしょうか?

289デフォルトの名無しさん (スッップ Sdaf-CJ8Y)2017/08/03(木) 14:29:27.06ID:XOuExNezd
>>288
エラーメッセージ読めよ

290デフォルトの名無しさん (スッップ Sdaf-FvKw)2017/08/03(木) 14:41:53.48ID:gag1Q2E/d
staticとかクラスで配列呼びとかこれ直すとどうなるか気になるけど、目的の物への直し方が分からない初心者

291デフォルトの名無しさん (アウアウウー Sa1f-gAma)2017/08/03(木) 16:17:17.57ID:W8S0u/iSa
>>288
逆にどうしてそれで初期化できると思ったのか聞きたいな

292デフォルトの名無しさん (ワッチョイ 994b-dE0h)2017/08/03(木) 18:20:40.50ID:y6PJbWOJ0
>>288
まずstaticの意味を調べような

293デフォルトの名無しさん (ワッチョイ 0761-/FH4)2017/08/03(木) 19:58:25.54ID:AAnCTaTb0
>>288
思い込みの書式が通ると思うのならプログラムなんかできないから基本から見なおせ
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/classes-and-structs/classes

294デフォルトの名無しさん (アウアウイー Sa29-tw3x)2017/08/03(木) 21:01:13.46ID:eLAt0wVza
また始まったよ
質問者叩いてる奴こそ>>1のテンプレを「基本から見直せ」バカが。

俺はもともと「ふらっと」スレの存在意義なんか認めないけど、
こうやって質問者叩いてるバカに限ってスレ統一しろっていうと反対するのな

295デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/03(木) 21:04:28.86ID:9rdLVHxUa
俺は板自体が過疎ってるからどうでもいいぜ

296デフォルトの名無しさん (ワッチョイ 994b-dE0h)2017/08/03(木) 21:06:21.11ID:y6PJbWOJ0
>>294
じゃあお前が率先して回答しなよ
口だけじゃないって証明してくれ

297デフォルトの名無しさん (ワッチョイ 4d9d-VahU)2017/08/03(木) 21:06:50.15ID:Wy5AX0em0
それは君がこのスレを便所だと思っているから言える発言であって
便所に住んでる人からしたらここが自分の部屋なんですよ

スレ民は自分が便所に住んでることを思い出してください

298デフォルトの名無しさん (ワッチョイ 4d9d-VahU)2017/08/03(木) 21:09:58.25ID:Wy5AX0em0
>>296
それはおかしい
彼はここが便所であると思っていて
ヤジは飛ばせど、関わりあいたくないと考えているのだから
質問には答えないし、そのつもりも無いハズだよ
答えるのはあくまでスレ民の仕事だと

299デフォルトの名無しさん (ワッチョイ 2b79-crsy)2017/08/03(木) 21:20:27.19ID:1DsfYpVq0
質問です

最近チンコが痒いんですが
どうすればよいか教えて臭い

(´・ω・`)

300デフォルトの名無しさん (ワッチョイ b111-rJfQ)2017/08/03(木) 21:25:09.64ID:aUvJQCED0
hospital.Ablation( Chinko );

301デフォルトの名無しさん (ワッチョイ 0761-/FH4)2017/08/03(木) 21:29:08.33ID:AAnCTaTb0
>>294
存在意義認めないのに自治するやつなんか初めて見た
288に対しては無意味な回答しているのは>>290だけだ
お前は2度と来るな

302デフォルトの名無しさん (ワッチョイ 3f32-MwSy)2017/08/03(木) 21:29:39.92ID:A2tW+WgX0
>>288
・staticなクラスはnew出来ない。
・初期化の仕方が間違ってる。

http://ideone.com/ur8MnV

303デフォルトの名無しさん (ワッチョイ 776f-dE0h)2017/08/03(木) 21:31:46.35ID:MwbRiP+T0
>>302が一番有能

304デフォルトの名無しさん (ワッチョイ 3f32-MwSy)2017/08/03(木) 21:38:04.30ID:A2tW+WgX0
>>302のコンストラクタ追加版
http://ideone.com/49oLlc

305デフォルトの名無しさん (ワッチョイ 3f32-MwSy)2017/08/03(木) 21:40:01.22ID:A2tW+WgX0
あ、>>304のPointクラスのコンストラクタ間違えた。
ま、分かるでしょ。

306デフォルトの名無しさん (スッップ Sdaf-FvKw)2017/08/03(木) 22:13:07.27ID:KofxmfPad
>>301
直し方分からんから俺も気になるレベルの無意味なレスしたのはすまん
pointの呼び方の直し方がわからんかった

>>304
の書き方でpoint呼べばいいのね

307デフォルトの名無しさん (ワッチョイ 5723-FJki)2017/08/04(金) 21:32:08.81ID:eXZebYv+0
つい最近C#を学習し始めた者です。
null演算子について質問させてください。

null条件演算子/合体演算子を解説しているサイトや書籍に
下記のような両者の併用が紹介されていたのですが、
良く理解できませんでした。

result = a?.xxx ?? b

a.xxxのnullチェックは合体演算子がやってくれているように見えるのですが、
何故a.xxx自体にも条件演算子を設けているのでしょうか?
合体演算子だけを利用した場合とどのように違うのでしょうか?

308デフォルトの名無しさん (ワッチョイ 776f-dE0h)2017/08/04(金) 22:01:29.79ID:ma8HhYcB0
aがnullならa.xxxやるとヌルポ例外が発生するでしょ

309デフォルトの名無しさん (ワッチョイ 994b-dE0h)2017/08/04(金) 22:03:52.23ID:RvTw87/B0
>>307
これと同じ
if(a != null && a.xxx != null)
result = a.xxx;
else
result = b;

310デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/05(土) 00:14:15.76ID:l55BpX17a
>>309
こう書いてくれたほうが分かりやすいのにな

311デフォルトの名無しさん (ワッチョイ 3f32-aBMt)2017/08/05(土) 00:23:56.45ID:L80K1fJH0
慣れじゃないかな。

312デフォルトの名無しさん (ワッチョイ 2be6-nF2T)2017/08/05(土) 00:24:38.91ID:1UeI4N1k0
ヌルポ → ガッ
この流れの起源はなんですか?

313デフォルトの名無しさん (アウアウウー Sa1f-gAma)2017/08/05(土) 00:26:50.64ID:BtyjozB4a
>>312
スレチ
javaの人に聞きなさい

314デフォルトの名無しさん (アウアウイー Sa29-tw3x)2017/08/05(土) 00:30:34.65ID:LVyF9Gx2a
>>310
それはないと思うよw

っていうか。等価コードこうじゃなかったっけ?

if (a == null)
  result = null;
else if (result = a.xxx == null)
  result = b;

315デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/05(土) 00:30:46.86ID:l55BpX17a
>>311
こういう初見で見てわからん気持ち悪いコード書く奴早く死ねって思う
一生一人だけでプログラム組んでろよって感じ

316デフォルトの名無しさん (アウアウイー Sa29-tw3x)2017/08/05(土) 00:32:53.10ID:LVyF9Gx2a
>>315
いやいや、さすがに>>307の例は読めない自分を恥じなきゃダメ。

317デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/05(土) 00:40:32.35ID:l55BpX17a
>>316
でも言語仕様を確認しなきゃ何やってるかわからないぜ
わざわざなんでこんな書き方するの?
気持ち悪い

318デフォルトの名無しさん (ワッチョイ b54b-cmh1)2017/08/05(土) 00:49:24.41ID:7yvfOtT+0
>>317
同じものをを複数回かくことに疑問を持たないのは、センスがない

319デフォルトの名無しさん (ワッチョイ 3f32-aBMt)2017/08/05(土) 00:50:39.67ID:L80K1fJH0
>>314
違う。>>309で合ってる。

320デフォルトの名無しさん (アウアウイー Sa29-tw3x)2017/08/05(土) 00:53:06.57ID:LVyF9Gx2a
>>319
ああ、そうだねw
ビール飲みながら適当にレスするとこうなる
>>316こんな偉そうなこと書いてるのに笑えるなw

321デフォルトの名無しさん (スッップ Sdaf-CJ8Y)2017/08/05(土) 01:01:23.26ID:jB/epMOsd
>>317
言語仕様を知らずにプログラミングできると思う頭をどうにかしろwww

322デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/05(土) 01:07:52.25ID:l55BpX17a
>>320
だっせーな
ほら、間違えたじゃんバーカ

323デフォルトの名無しさん (ワッチョイ 3f32-aBMt)2017/08/05(土) 01:07:52.45ID:L80K1fJH0
>>317
よくある処理の割に記述が長くなるから、簡潔に記述出来るように追加された文法だし。
記述が減ればそれだけバグが入り込む余地が減るし、慣れれば等価コードより読みやすい。

324デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/05(土) 01:09:00.48ID:l55BpX17a
>>323
それ、自分のことしか考えてないよね
素直にダサい

325デフォルトの名無しさん (ワッチョイ 3f32-aBMt)2017/08/05(土) 01:18:59.52ID:L80K1fJH0
>>324
ラムダ式や3項演算子も毛嫌いしてそう。

326デフォルトの名無しさん (スッップ Sdaf-CJ8Y)2017/08/05(土) 01:24:45.10ID:jB/epMOsd
>>324
お前varも認めないんだろ

327デフォルトの名無しさん (ワッチョイ 2b19-/FH4)2017/08/05(土) 01:27:34.97ID:vNOMYJ7x0
今時Accessとか使ってる奴いたんだ。

煽りじゃなくて割とまじで

328307 (ワッチョイ 5723-FJki)2017/08/05(土) 02:25:47.56ID:a3wHtGnJ0
皆さんレスありがとうございます。

>>309
>>310
なるほど!
仮に>>307の式を合体演算子だけでやると、
a.xxxのnullはチェックできてもa自体のnullは検知できないから
aがnullだと例外になってしまうという事ですね、やっと理解できました

329デフォルトの名無しさん (ワッチョイ 7b91-dE0h)2017/08/05(土) 02:27:12.87ID:YGVZb4Ys0
C#ってわりかし言語仕様追加される方だと思うけど
C#2.0で頭止まってんの?

330デフォルトの名無しさん (スッップ Sdaf-CJ8Y)2017/08/05(土) 03:33:33.37ID:jB/epMOsd
こないだはASP.NETチームで、今度はNuGetチームがこの手の話題で炎上か
https://github.com/NuGet/NuGetGallery/pull/4437

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

332デフォルトの名無しさん (ワッチョイ d380-cqqg)2017/08/05(土) 08:39:35.43ID:F87TSa+B0
>>331
役職の手前、後者。
でも、内心は前者って人も少なくないだろうな。

本音と建前だと

333デフォルトの名無しさん (アウアウウー Sa1f-gAma)2017/08/05(土) 10:32:36.69ID:UPRRV420a
正直
result = a?.xxx ?? bは気持ち悪い
どのレベルが等価なのかよくわからないから

でも代案を聞かれるとわからない

result = ?a.xxx ?? b
result = a ? a.xxx : b

334デフォルトの名無しさん (ワンミングク MM3b-i7eW)2017/08/05(土) 11:01:55.42ID:P20UcjsVM
notnullとoptionalはよ

335デフォルトの名無しさん (ワッチョイ 0bc0-/FH4)2017/08/05(土) 11:08:03.88ID:UeASor4i0
原本がVS2005だから2005で開発してねとか、開発環境縛りで使いたくても使えない言語仕様多すぎて泣きそう
今2017年なのに・・・

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

337デフォルトの名無しさん (ワンミングク MM3b-i7eW)2017/08/05(土) 11:30:21.81ID:P20UcjsVM
そういう例えだと選ぶ方がワガママで悪いみたいなイメージだけど
企業が社員の移動に馬車を使わせてるようなものだと例えるとイメージが変わるね

338デフォルトの名無しさん (ワッチョイ 1311-/F0N)2017/08/05(土) 11:40:50.92ID:QQbgaNKK0
>>327
普通にいるだろ
データベース自体の機能は無償のSQL-Server Expressとかでもいいけどレポート機能とかが便利らしい

339デフォルトの名無しさん (ワッチョイ 7b91-dE0h)2017/08/05(土) 11:43:09.69ID:YGVZb4Ys0
言語仕様は知らねー方がバカなんだよ
例えばExcelに入った商品リストの合計額調べるとき
・SUM関数使う
・セル1個ずつ選択して足す
・電卓で1個ずつ計算して記入する

どのレベルに合わせるべきかってことよ
SUM関数なんてExcel関数知らんとわからんやんセル一個ずつ足せって言うバカいるかって話
データがそもそもExcelじゃなくて紙ベースデータみたいなときはしゃーない電卓で計算するがの

340デフォルトの名無しさん (ワッチョイ eb9d-3aaz)2017/08/05(土) 12:12:37.78ID:FiPcVS8O0
>>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がプロパティやメソッド呼び出しなら、複数回呼ぶと遅くなったり副作用があったりする可能性がある。
あと、スレッドセーフにも関わってくる
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/operators/null-conditional-operators

MSDNにも書いてある
A?.B?.C?[0] ?? E
とかをパフォーマンスやスレッドセーフを考慮して妥当に展開すると十行では収まらないコードになる。
構造からの取り出しの場合同様の処理が連続する可能性も結構あってnullチェックで埋め尽くされるのでNull条件演算子は使えるなら使うべき

341デフォルトの名無しさん (ワッチョイ ed7f-dE0h)2017/08/05(土) 12:21:22.29ID:POjfJmBG0
>>337
理由があってそうしてるならしょうがないんじゃない?
坂道が多い長崎の住宅地は荷物を馬で運ぶことも多いとか。

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

343デフォルトの名無しさん (アウアウイー Sa29-tw3x)2017/08/05(土) 13:49:49.32ID:yyPrM6Kja
そういうの、大昔の{}が見づらいみたいな思い込みに基づいた言い掛かりと同じだと思うよ
不気味てw

344デフォルトの名無しさん (アウアウウー Sa1f-gAma)2017/08/05(土) 14:09:36.65ID:QMwZUMGFa
?演算子の後にドット演算子が来ているようだし

単体で?だと三項演算子とかぶるからMSは ?. と ?[ (?[ ] ではない)の二つを
null条件演算子と呼んでいる

充分気持ち悪い

345デフォルトの名無しさん (アウアウウー Sa1f-gAma)2017/08/05(土) 14:11:58.38ID:QMwZUMGFa
?[ が演算子だとして残りの ] は何なのか?

346デフォルトの名無しさん (スップ Sd03-CJ8Y)2017/08/05(土) 17:33:38.81ID:irr7ncKbd
>>335
2005とかもうサポート切れてね?

347デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/05(土) 18:41:13.40ID:JI4Kw2jEa
UI部をバージョン依存にして
中の処理をバージョン非依存とかに
する造りじゃないと駄目だな

同じc#で作ったものすら移行できないのは俺らのせいじゃなくて言語作ってる奴が馬鹿なんだから

348デフォルトの名無しさん (ワッチョイ 9daa-cE++)2017/08/05(土) 20:00:04.83ID:pxuR0+Dw0
何言ってるのかさっぱり分からんが
多分俺らじゃなくて言語作ってる奴でもなくて347が馬鹿なんだと思う

349デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/05(土) 20:02:18.61ID:JI4Kw2jEa
>>348
ああ、うん、早く死ねよ

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

351デフォルトの名無しさん (ワンミングク MM3b-i7eW)2017/08/05(土) 20:35:00.59ID:P20UcjsVM
2.0はラムダがないのが致命的だな
LINQライクなライブラリ書いたけどエレガントに記述できない

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

353デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/05(土) 20:45:43.72ID:JI4Kw2jEa
>>350
お前嘘つきじゃん

354デフォルトの名無しさん (スップ Sd03-CJ8Y)2017/08/05(土) 20:55:15.95ID:irr7ncKbd
>>350
問題ないかどうかは場合による

355デフォルトの名無しさん (ワッチョイ b361-/FH4)2017/08/05(土) 21:02:43.39ID:jKU+//lw0
>>352
ここを見て
http://dobon.net/vb/dotnet/system/asadmin.html
「管理者として自分自身を起動する」参考にして組んだことはあるけど
マニフェスト自動生成するのは知らなかったというか見てなかったw

356デフォルトの名無しさん (ワッチョイ 2b19-/FH4)2017/08/06(日) 13:00:00.86ID:BrCgX9l20
元MSだった奴がいってたけど

VS2010当初でも開発に2,000人関わってたらしいよ。


旧バージョンを使って次のバージョンを作っていたとか

VS2010でVS2015といった具合

357デフォルトの名無しさん (ワッチョイ f7f4-FEhw)2017/08/06(日) 22:21:19.12ID:KuiVNrm90
SharpDevelopを使ってとあるソースを開いて、ビルドしたらNewtonsoft.Jsonが無いよ、と。

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

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

パッケージがGACに入ってる必要があるの?と思ってGacutil.exeを使おうとするも、Visual Studioにしか入ってないっぽい。
でも諸事情でVisual Studioはいま使えない。

何とかSharpDevelopでビルドを通したいんです。何が足らない || 間違ってるのでしょうか?

358デフォルトの名無しさん (ワッチョイ 994b-dE0h)2017/08/06(日) 23:00:35.42ID:wBidTTBD0
単純にdllが参照されていないだけでは?

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

360デフォルトの名無しさん (ワッチョイ 53aa-BhWa)2017/08/07(月) 00:52:46.16ID:76ycnzjh0
ビルドオプションで、エラーメッセージを詳細に表示できないの?

そして、そのエラーメッセージで検索すれば?

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

362デフォルトの名無しさん (ワッチョイ 0bc0-/FH4)2017/08/08(火) 19:51:55.76ID:sqi2YB040
Publicクラスの中にPublicクラスを定義しているソース見かけたんだけど、これって何の意味があるの?

363デフォルトの名無しさん (アウアウイー Sa29-tw3x)2017/08/08(火) 20:37:03.55ID:huw00Yx4a
>>362
書いた人に聞かないと分からないでしょ

まあ、推測だけど、たぶんクラスAと一緒にしか使われない、
従属的なクラスBがあったとして、BをAの内部クラスにしたら
そういう従属的な関係が分かりやすくしたいという意図なんじゃないか。

たぶん今時の流儀じゃないと思うけど、.NET 1.0の時代からあるWindows Formなんか
そういうのいくつかあった気がする

364デフォルトの名無しさん (ワントンキン MM73-op1F)2017/08/09(水) 11:25:35.60ID:eM0BjlR2M
Formクラス1つに対応するビジネスロジッククラス1つを作ること
0個でもだめだし2以上でもだめ

っていう頭のおかしいコーディング規約を押し付けてきたバカSEがいて
そのアホくさい制約を回避するために内部クラスを多用したことがある

365デフォルトの名無しさん (ワキゲー MMfb-yIRm)2017/08/09(水) 12:15:14.19ID:RfXzvPKwM
>>364
formと紐付かないクラスを作ればよかったんじゃないの?

366デフォルトの名無しさん (ワッチョイ 0bc0-/FH4)2017/08/09(水) 12:35:36.16ID:nKeLDL7B0
>>363
読み返してみたら確かに内部クラスは従属的な位置付けだわ、サンクス

367デフォルトの名無しさん (ワントンキン MM73-3j53)2017/08/09(水) 12:47:34.22ID:eM0BjlR2M
>>365
だから作っちゃいけない規約なんだって
FormA LogicA
FormB LogicB
FormC LogicC
って風に最初からクラス構成が固定
なので内部クラスを使うしかなかった

368デフォルトの名無しさん (スプッッ Sddb-CJ8Y)2017/08/09(水) 13:00:01.19ID:MPlilw1qd
頭おかしいやつの下で働かなくちゃいけないなんて哀れだな

369デフォルトの名無しさん (ブーイモ MM5b-X+Zd)2017/08/09(水) 13:03:58.48ID:aEwDYdDeM
それを疑問に思わないレベルのバカPGばかり相手にしてるんだろうから仕方ない
PGの能力に全く期待しない前提なら悪くないルールだと思う
参考にさせてもらうわ

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

371デフォルトの名無しさん (ワッチョイ ed7f-dE0h)2017/08/09(水) 20:17:29.94ID:gdB1BRW90
>>367
Formの数しかクラスが存在し得ないとしたらたしかに頭おかしい規則だが、Applicationはどうしたの?

372デフォルトの名無しさん (アウアウイー Sa29-9Sud)2017/08/09(水) 20:45:34.77ID:CWuob4yka
wpfのmodelファイルみたいに作って欲しいんちゃう?

373デフォルトの名無しさん (アウーイモ MMb3-7CC5)2017/08/09(水) 21:35:29.81ID:AMRrv1DKM
何にせよ
「なんでそんな事するのか」をハッキリさせとかないと本末転倒になるな
ルール守るために余計に無駄なことしてたら

374デフォルトの名無しさん (ワッチョイ 9aea-J0Eq)2017/08/10(木) 03:50:16.42ID:p+YoIwRr0
あるブランチの、あるブランチ(例えばmaster)との差分が
わかる方法ってないですかね?
今は別ディレクトリにクローンしてディレクトリの差分を見ています

375デフォルトの名無しさん (ワッチョイ 9aea-J0Eq)2017/08/10(木) 03:51:33.59ID:p+YoIwRr0
>>374
誤爆しました。すみません

376デフォルトの名無しさん (ワッチョイ a332-W16a)2017/08/11(金) 13:17:03.53ID:6/W84wqN0
あるファイルと削除しようとすると
「別のプロセスで使用されているため、プロセスはファイル XXXX' にアクセスできません。」と出ます。
vshost32.exe がファイルを掴んでいるので削除できないようです。

なのでVSを終了すれば削除はできます。
自分自身が掴んでいるファイルを削除するのはどうすればいいですか?
別にexeを作成して終了後に起動して削除するくらいしか思いつかないのですが・・・

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

378デフォルトの名無しさん (ワッチョイ b666-aEKd)2017/08/11(金) 17:15:57.26ID:Aa/k6vVq0
>>376
もし画像表示中に削除できない問題なら、ググれば色々やり方が見つかると思うよ

379デフォルトの名無しさん (アウアウイー Safb-GAMD)2017/08/11(金) 17:43:30.26ID:ppZy/8OZa
xmlとかxlsをusingで読み込んでdisposeだかreleaseだかしてない系?

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

381デフォルトの名無しさん (アウアウイー Safb-GAMD)2017/08/11(金) 18:45:46.80ID:ppZy/8OZa
>>380
旧コードはされないらしい
また、クラスを作った奴がやる気なくてもusingで解放されないらしい
usingの自動解放は言語機能ではなく努力目標

382デフォルトの名無しさん (ワッチョイ 9aea-dbBP)2017/08/11(金) 19:52:36.07ID:XseWY9lE0
関係ないが、HttpClientも一時期話題になったよな

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

384デフォルトの名無しさん (アウアウイー Safb-GAMD)2017/08/11(金) 21:28:23.22ID:6EMGAntMa
なぜここで聞いた?

385デフォルトの名無しさん (ワッチョイ 7f32-Fwjk)2017/08/11(金) 21:34:01.45ID:IamXCzdT0
>>381
usingが努力目標ってなんだそりゃ。usingはスコープを抜ける時に必ずDisposeを呼ぶだけ。
そのクラスのDisposeの実装に問題があるだけだろ。

386デフォルトの名無しさん (ワッチョイ a3e6-pYbA)2017/08/11(金) 21:37:53.60ID:wSoZciMN0
>>384
え?C#の話だとおもったんだけど違う?

387デフォルトの名無しさん (アウアウイー Safb-GAMD)2017/08/11(金) 21:50:24.05ID:6EMGAntMa
>>385
まあ、そういうことですよ

388デフォルトの名無しさん (ワッチョイ 7f32-Fwjk)2017/08/11(金) 22:13:33.39ID:IamXCzdT0
>>383
ASP.NETとASP.NET MVCは別物なので注意。
今から勉強するなら、ASP.NET MVCの方。

389デフォルトの名無しさん (ブーイモ MM7f-KsLg)2017/08/11(金) 22:22:31.29ID:nYdKnbI0M
今は非常に時期が悪いのでMVCすらお勧めできないよ

390デフォルトの名無しさん (ワッチョイ 7f32-Fwjk)2017/08/11(金) 22:26:56.25ID:IamXCzdT0
>>387
usingさん濡れ衣。

391デフォルトの名無しさん (アウアウイー Safb-GAMD)2017/08/11(金) 22:30:44.53ID:6EMGAntMa
>>390
idisposeさんと共犯なので合わせ技で死刑

392デフォルトの名無しさん (ワッチョイ 9aea-dbBP)2017/08/11(金) 22:49:39.74ID:XseWY9lE0
>>388
ASP.NETとASP.NET Web Formsとを同一視してないかい?

393デフォルトの名無しさん (ワッチョイ f34b-3pNn)2017/08/11(金) 22:53:50.57ID:nYt6U0do0
>>392
同じようなもんだろ

394デフォルトの名無しさん (ワッチョイ 9aea-dbBP)2017/08/11(金) 23:05:25.17ID:XseWY9lE0
>>393
いや全然ちげーよw
ASP.NETの中にMVCとWeb Forms(とその他諸々)が含まれるんだから

395デフォルトの名無しさん (ワッチョイ 7f32-Fwjk)2017/08/11(金) 23:09:41.68ID:IamXCzdT0
>>392
ASP.NETだけだと、WebFormsを指す場合が多いからね。特に書籍。
補足として書いとくべきだったな。

396デフォルトの名無しさん (ワッチョイ 9aea-dbBP)2017/08/11(金) 23:14:24.88ID:XseWY9lE0
>>395
ASP.NET Core MVCの方にしか力入れてないけどね
あ、最近だと特にSignalRもか

397デフォルトの名無しさん (スプッッ Sd5a-dbBP)2017/08/11(金) 23:14:52.52ID:QPma/SU3d
>>395
いつの時代の話だよ

398デフォルトの名無しさん (ワッチョイ a3e6-pYbA)2017/08/12(土) 04:55:15.59ID:mqOU9Lu00
>>388
ちょww 古い本買ってしまいましたぁー

情報ありがとう(>_<)

399デフォルトの名無しさん (ワッチョイ a3e6-pYbA)2017/08/12(土) 04:56:24.27ID:mqOU9Lu00
>>389
どのように時期がわるいのですか?
宜しければ業界背景とか教えてください

400デフォルトの名無しさん (ワッチョイ a3e6-pYbA)2017/08/12(土) 05:03:39.72ID:mqOU9Lu00
あ、ちなみに私は別業界の週末趣味プログラマで、あまりトレンドとかわからんのです

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

402デフォルトの名無しさん (ブーイモ MM7f-UpZk)2017/08/12(土) 06:23:29.36ID:lZqlh0rmM
JavaならSpring Boot使えば楽
.NET Coreは敷居とか気にするレベルの人が手を出しちゃダメ

403デフォルトの名無しさん (ブーイモ MM7f-KsLg)2017/08/12(土) 10:17:36.21ID:tF3yiAv3M
>>399
今新しいのに移り変わったんだけど全然普及してない
OSSにいるライバル達が強すぎてびくともしてない
従来使ってた人が離れつつある

目新しさがないのが非常にまずい
今後新しいなにかを提案できなければ
早い時期に丸々消える可能性がある

404デフォルトの名無しさん (ブーイモ MM7f-pYbA)2017/08/12(土) 10:35:14.70ID:L/rIKl2kM
>>403
なるほどですね。

しかし、本も買ってしまったし、一通りは知識として吸収しておこう。

405デフォルトの名無しさん (ワントンキン MM8a-KsLg)2017/08/12(土) 11:44:11.27ID:QUYKn6+oM
結局、今Webアプリを構築するなら、何がベストなんでしょうか?

クライアント側はjavascript一択ですよね。
サーバ側が、自分はweb formで止まっています。
.net coreなるものを調べてみればいいんでしょうか?

406デフォルトの名無しさん (スプッッ Sd5a-dbBP)2017/08/12(土) 11:46:52.46ID:GgO+n98Ld
>>403
.NET Standard2.0あたりを理由として持ち出すならまだしも、そんな理由かよwww

407デフォルトの名無しさん (スプッッ Sd5a-dbBP)2017/08/12(土) 11:47:53.88ID:GgO+n98Ld
>>405
Webアプリで何をしたいの?言語はc#縛りなの?

408デフォルトの名無しさん (ワッチョイ da32-muZ9)2017/08/12(土) 11:49:32.71ID:P/Mf2N0c0
pythonだと思う

409デフォルトの名無しさん (ワントンキン MM8a-KsLg)2017/08/12(土) 12:03:21.67ID:QUYKn6+oM
>>407
イントラ環境で、DBを絡めた様々な情報を提供したいです。
目的によってGridViewで表示したり、グラフで表示したり。

C#縛りではないですが、VS2008時代にゴリゴリ作った経験があるので一番馴染みがあります。

410デフォルトの名無しさん (ブーイモ MM7f-UpZk)2017/08/12(土) 12:23:38.79ID:lZqlh0rmM
Node.jsとかでいいんじゃね
Coreも含めた今時のWebはWinFormsや昔のASP.NETとは全く思想が違ってて、コンポーネントというものが存在しない
MVC系なら何選ぼうが似たようなもんだから環境の整えやすさとかで選べばいいと思うよ

411デフォルトの名無しさん (ワッチョイ fa80-KUHj)2017/08/12(土) 12:50:34.80ID:kxAFQxd/0
この前、Rubyとやったわ

412デフォルトの名無しさん (スプッッ Sd5a-dbBP)2017/08/12(土) 13:09:44.12ID:GgO+n98Ld
>>410
vs2008使ってた人なら、相当な理由がない限りNode.jsを選択する理由はないな

413デフォルトの名無しさん (ブーイモ MMba-UpZk)2017/08/12(土) 13:11:36.67ID:zLZ79VVHM
>>412
本人にJavaScriptを書く気があるということは十分な理由になりうる

414デフォルトの名無しさん (スプッッ Sd5a-dbBP)2017/08/12(土) 13:20:40.09ID:GgO+n98Ld
>>413
DB連携が主だろうからASP.NETでいいだろ
フロントエンドはもちろんjavaScript使うだろうが

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

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

417デフォルトの名無しさん (ブーイモ MMba-UpZk)2017/08/12(土) 13:27:25.22ID:zLZ79VVHM
>>414
いやLinuxって言ってるでしょ

418デフォルトの名無しさん (スッップ Sdba-dbBP)2017/08/12(土) 13:29:09.64ID:rTAthi/9d
>>417
うんそうだね、だから?

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

420デフォルトの名無しさん (ブーイモ MMba-UpZk)2017/08/12(土) 13:34:37.36ID:zLZ79VVHM
>>418
MVCなら言語だけの違いになっちゃうから、もちろんWebFormsを意図してるんだろ?
LinuxでWebFormsが問題なく動作する構成を教えてくれないか
まさかMonoとか言わないよね

421デフォルトの名無しさん (スッップ Sdba-dbBP)2017/08/12(土) 13:35:49.26ID:rTAthi/9d
>>419
APIの実装は?

422デフォルトの名無しさん (スッップ Sdba-dbBP)2017/08/12(土) 13:37:33.14ID:rTAthi/9d
>>420
トンデモ理論ワロタwww
LinuxだからASP.NET Coreに決まってるだろカス

423デフォルトの名無しさん (ドコグロ MM92-GAMD)2017/08/12(土) 13:39:12.66ID:MSpmsm7OM
XAMPPでいーよもう

424デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/12(土) 13:43:15.73ID:Y4jkwM06d
>>410
ViewComponent

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

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

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

428デフォルトの名無しさん (ワッチョイ 674b-W16a)2017/08/12(土) 13:49:59.47ID:jJHyapDK0
>>417
Linuxとは一言も言ってないじゃん
お前の目は腐ってるの?

429デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/12(土) 13:50:40.56ID:Y4jkwM06d
>>426
対等だと本気で思ってるのかこのアスペは

430デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/12(土) 13:51:48.52ID:ahseiZ+6d
>>426
c#知らない人がなぜ偉そうにしてんのかwww

431デフォルトの名無しさん (ブーイモ MMba-UpZk)2017/08/12(土) 13:52:03.67ID:zLZ79VVHM
>>429
まさかと思うけど、Nodeにサーバーサイドレンダリングのフレームワークが無いとでも思ってるのかな?

432デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/12(土) 13:53:01.42ID:ahseiZ+6d
>>431
またアスペのトンデモ理論がでたわー

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

434デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/12(土) 14:01:39.24ID:ahseiZ+6d
>>433
お前がなぜここにいるのかわからんわ
別のスレに誘導してさしあげろ

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

436デフォルトの名無しさん (ブーイモ MM7f-KsLg)2017/08/12(土) 14:51:23.91ID:tF3yiAv3M
次のASP.NET core 2.0で.net frameworkが捨てられるって
明言されてるから他に移るにはいい時期だと思うよ
海外の人達はどんどんASP.NETを捨てて新しい言語と別のフレームワークに移ってる最中

2.0が安定するのはリリースされてから1年後あたりだから本当に時期が悪い

437デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/12(土) 14:55:12.15ID:ahseiZ+6d
>>436
デマおつ

438デフォルトの名無しさん (ブーイモ MM7f-KsLg)2017/08/12(土) 14:55:56.25ID:tF3yiAv3M
ググればわかるよ
ググれば

439デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/12(土) 14:57:12.35ID:ahseiZ+6d
>>438
その言葉そっくり返すわwww

440デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/12(土) 15:00:38.23ID:ahseiZ+6d
>>438
これのこと言ってんの?
https://github.com/aspnet/Home/issues/2022

違うならソース

441デフォルトの名無しさん (ワッチョイ dac4-vYVf)2017/08/12(土) 15:42:51.22ID:C9lCwxEn0
どの人がキチガイじゃないんですか?
ほぼ全てキチガイだと思うので、キチガイじゃない人を挙げてもらった方が早いかなと思いました

442デフォルトの名無しさん (ドコグロ MM92-GAMD)2017/08/12(土) 15:50:11.79ID:1uDJW21dM
>>441
道にキチガイとそうでない人が多数混雑していたという
どんな質問をすればキチガイとそうでない人がわかるでしょうか?

c#で答えなさい(5点)

443デフォルトの名無しさん (スッップ Sdba-dbBP)2017/08/12(土) 21:37:49.83ID:49AswPagd
>>441
>>436みたいなデマ流すやつもいるから気をつけな

444444 (ワッチョイ a379-AZXx)2017/08/12(土) 21:57:25.09ID:k2L+IUHd0
444げっち(´・ω・`)b

445デフォルトの名無しさん (ブーイモ MM26-KsLg)2017/08/12(土) 22:24:47.52ID:xJjCO2rbM
>>443
ググって答え探して見つからなかったんだな
かっこ悪い

446デフォルトの名無しさん (ブーイモ MM26-KsLg)2017/08/12(土) 22:28:17.27ID:xJjCO2rbM
ASP.NET Coreが.NET Frameworkサポートを終了 - InfoQ
https://www.infoq.com/jp/news/2017/06/ASPNET-Core-2

447デフォルトの名無しさん (スプッッ Sd5a-dbBP)2017/08/12(土) 23:29:34.80ID:aQBsN87od
>>446
>>440に答え書いてあんのに、infoQの集会置くのデマに引っかかったんだな

448デフォルトの名無しさん (スプッッ Sd5a-dbBP)2017/08/12(土) 23:29:51.13ID:aQBsN87od
>>447
周回遅れwww

449デフォルトの名無しさん (ワッチョイ 2723-dbBP)2017/08/12(土) 23:32:32.20ID:EdsW5Ca+0
>>445
そうだね、まだソース示せてないもんね

450デフォルトの名無しさん (スップ Sd5a-dbBP)2017/08/14(月) 18:15:11.19ID:L2nzIYhid
>>446
いまだに訂正記事出さないってどういう神経してるんだろうか

451デフォルトの名無しさん (ワッチョイ a3c0-aEKd)2017/08/14(月) 19:11:43.71ID:Em96n+jc0
クライアント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回実行する・・・

452デフォルトの名無しさん (ワッチョイ a3e6-pYbA)2017/08/14(月) 22:59:55.53ID:W9S89Wta0
ラムダ使うの止めたらええんちゃう?

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

454デフォルトの名無しさん (ワッチョイ b64b-6KBD)2017/08/15(火) 09:17:22.57ID:OGbi9cLy0
>>451
CPUがデュアルコアだからじゃね?


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

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

456デフォルトの名無しさん (アウアウイー Safb-GAMD)2017/08/15(火) 11:53:00.99ID:9bM/QnfQa
>>455
(*゚∀゚)b

457デフォルトの名無しさん (スッップ Sdba-dbBP)2017/08/15(火) 12:43:34.23ID:20T/HkCgd
>>455
vs2010はC#4.0やで

458デフォルトの名無しさん (ワッチョイ a3c0-aEKd)2017/08/15(火) 13:42:35.85ID:OC/mFne80
>>455
開く時にコンバートする必要あるけど問題なく開けるよ
仕事だと未だにVS2010現役だわ

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

460デフォルトの名無しさん (ワッチョイ 67ea-BU2+)2017/08/15(火) 14:38:44.06ID:uu1RAYqy0
expressと違ってフル版だからそこは新規に覚えるとこかな

461デフォルトの名無しさん (ワッチョイ fa19-aEKd)2017/08/15(火) 22:19:09.81ID:4mEDxDEa0
スレ違いかもしれませんが
基本認証のID/PASSでしっかり認識される最大文字数はどうなっていますか?


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

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

463デフォルトの名無しさん (ワッチョイ 5baa-Eq/9)2017/08/15(火) 23:25:24.31ID:LXsTJVda0
>>461
仕様上の制限は特にない
サーバの実装上の制限は知らん

464デフォルトの名無しさん (アウアウイー Safb-GAMD)2017/08/15(火) 23:27:56.73ID:oy/WgDX5a
>>463
1GB超える文字列アタックで死にそうだな

465デフォルトの名無しさん (ワッチョイ fa19-aEKd)2017/08/15(火) 23:37:08.46ID:4mEDxDEa0
>>463
知らんかった!ありがとう!

466デフォルトの名無しさん (ブーイモ MMba-KsLg)2017/08/16(水) 00:11:54.50ID:NyarCuNKM
インターネット上のbasic認証っていざとなったら破られても
実害のないものぐらいにしか使わないほうがいいよ

とにかく破られる前提で

467デフォルトの名無しさん (アウアウカー Sac3-BU2+)2017/08/16(水) 11:06:00.81ID:bxXjJfOJa
>>465
ハッシュ化にcrypt使ってたらそうなる

468デフォルトの名無しさん (アウアウカー Sac3-BU2+)2017/08/16(水) 11:10:45.85ID:bxXjJfOJa
htpasswdのusageに書いてあるな

469デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 11:16:53.17ID:IhBdVBZAr
みんな、どういう現場でC#使ってるの?

ゲーム開発?

470デフォルトの名無しさん (ブーイモ MM26-UpZk)2017/08/16(水) 12:20:59.08ID:PSdbs+NyM
C#はエンタープライズ系がほとんどでしょ

471デフォルトの名無しさん (アウアウイー Safb-pfjY)2017/08/16(水) 12:41:41.63ID:G1nlxVN/a
トンガリ耳の宇宙人が乗ってるあれかワクテカだな

472デフォルトの名無しさん (スッップ Sdba-ymLp)2017/08/16(水) 12:46:29.97ID:qOG9houbd
業務アプリで使ってる

473デフォルトの名無しさん (ワッチョイ db04-KUHj)2017/08/16(水) 13:11:32.49ID:8/sKEHVn0
>>471
スポック「んなわけねーだろ、ばーか」

474デフォルトの名無しさん (ワッチョイ 9a11-GpN3)2017/08/16(水) 13:51:25.49ID:dFRX8QvB0
>>471
マッコイ「精神的に疲れているようだな、メディカルステーションに行こう」

475デフォルトの名無しさん (ワッチョイ fa19-aEKd)2017/08/16(水) 14:39:51.83ID:WlWiRltK0
C#(windows)しか知らん奴ばかりかと思ったけど

意外とlinux周りの知識ある奴もいるんだね。

雑魚ばかり、という訳ではなさそうだ

476デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 15:00:59.30ID:IhBdVBZAr
>>475
linux周りの知識がないと雑魚なの?

477デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 15:02:12.23ID:IhBdVBZAr
>>470
基幹システムってこと?

478デフォルトの名無しさん (ワッチョイ 9a11-GpN3)2017/08/16(水) 15:03:51.18ID:dFRX8QvB0
>>476
> C#(windows)
の時点で雑魚以下の奴に構うなよ

479デフォルトの名無しさん (ワッチョイ 8a91-W16a)2017/08/16(水) 15:06:37.38ID:6u80Tv+y0
VB++みたいなもんだもんな、C#

480デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 15:08:45.04ID:IhBdVBZAr
>>478
目糞が鼻糞笑ってたってこと?

481デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 15:10:04.02ID:IhBdVBZAr
>>479
どの辺がVB++?

482デフォルトの名無しさん (ワッチョイ 8a91-W16a)2017/08/16(水) 15:14:27.54ID:6u80Tv+y0
VBと比べて方言レベルの違いしかない

483デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 15:17:20.37ID:IhBdVBZAr
>>482
ああ、そういえば、C#でできることはVBでもできるって言ってた人がいたけど、そういうこと?

484デフォルトの名無しさん (ワッチョイ 9a11-GpN3)2017/08/16(水) 15:28:42.63ID:dFRX8QvB0
>>480
耳糞レベルの煽り? w

485デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 15:31:48.23ID:IhBdVBZAr
>>484
というか、linux周りの知識があれば雑魚ではなくなるのかなって…

目糞が鼻糞笑っててそれを耳糞が煽ってるだけならそれはそれでいいんだけど…

486デフォルトの名無しさん (アウアウイー Safb-GAMD)2017/08/16(水) 15:52:23.27ID:oFHraf+3a
鍛え抜かれた筋肉がないと真のプログラマとは呼べんな

487デフォルトの名無しさん (アウアウイー Safb-pfjY)2017/08/16(水) 15:59:28.74ID:G1nlxVN/a
しょうもないことで荒れてまんなw

山形治生だと思ったけど、UNIX系の人が威張って他を見下してる
(今はそんなことないと思うけど)のは、昔メインフレーマーに同じことをされたからだって書いてたな

488デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 16:00:28.19ID:IhBdVBZAr
>>486
なるほどー。なんか名言のような気がする。

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

グッチを料理人と思う人はいないもんね。

490デフォルトの名無しさん (ワッチョイ 939d-aKZ1)2017/08/16(水) 20:58:12.89ID:2E64Am1a0
そしたら君の言う真の料理人達は
グッチ祐三をバカにしてると思うか?

491デフォルトの名無しさん (ワッチョイ 8b11-tHOy)2017/08/16(水) 21:10:36.48ID:i+NmnZ+e0
>>486
体力マジ大事

492デフォルトの名無しさん (オッペケ Srbb-CFLX)2017/08/16(水) 23:41:57.26ID:IhBdVBZAr
>>490
たしかに!
真の料理人は他の料理人をバカにはしない。

でも弟子には厳しいよ。

493デフォルトの名無しさん (ワッチョイ d319-oL0b)2017/08/17(木) 00:11:24.02ID:iTFxBfxz0
linuxの知識ねーやつは雑魚グラマ

494デフォルトの名無しさん (ワッチョイ b111-m0BB)2017/08/17(木) 00:25:27.24ID:DvHgRVVt0
ム板でやれ

495デフォルトの名無しさん (ワッチョイ b111-m0BB)2017/08/17(木) 00:25:52.50ID:DvHgRVVt0
違った、マ板でやれ

496デフォルトの名無しさん (ワッチョイ 616f-dsaK)2017/08/17(木) 01:03:52.74ID:ugZ0fkzt0
>>494
ハイ!

497デフォルトの名無しさん (ワッチョイ 396c-oL0b)2017/08/17(木) 16:54:44.90ID:fSYjKEAR0
プログラミング自体初めてで(3日目)、MSのチュートリアルをやってる最中です
https://msdn.microsoft.com/ja-jp/library/dd553230.aspx
このページの内容で質問があります

Listで並べたアイコン(text)をテープルレイアウト上に並べたラベルにランダムで次々に流し込むという内容ですが
次々に流し込むというのはテーブルレイアウトの次のマスへ順番に勝手に流れ込んでいくのですが
どこのマスへ…という指定がなくても、作動しています
で、そのテーブルレイアウトのマスを次々変えているのは簡単に言うと
foreach (Control control in tableLayoutPanel1.Controls)
でループしている間、その都度tableLayoutPanel1.Controlsを変更(適用?)して次のマスへ行く様に作動している
という認識で良いのでしょうか?

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

499デフォルトの名無しさん (ワッチョイ 396c-oL0b)2017/08/17(木) 17:23:35.76ID:fSYjKEAR0
>>498
ありがとうございます
超初心者の自分にも凄く分かりやすい説明で助かりました
デバッガの使い方調べてみます

500デフォルトの名無しさん (オッペケ Sr4d-uth0)2017/08/17(木) 17:49:30.79ID:sB3nMuGZr
初めてとか超初心者を強調しすぎ。
ここは初心者用スレなのにしつこく強調する意図を勘ぐったり勘ぐらなかったり…

501デフォルトの名無しさん (ワッチョイ d319-oL0b)2017/08/17(木) 18:38:27.43ID:iTFxBfxz0
質問です。

502デフォルトの名無しさん (アウアウイー Sacd-4GJO)2017/08/17(木) 18:46:51.87ID:I0R9izuAa
>>500
小姑かよww
くっだらねえ

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

504デフォルトの名無しさん (オッペケ Sr4d-uth0)2017/08/17(木) 19:03:38.85ID:sB3nMuGZr
>>502
申し訳ない。

必要の無いことをしつこくやってる人がいるとどうも気になってしまう体質でして…

505デフォルトの名無しさん (ワッチョイ 2ba2-oL0b)2017/08/17(木) 19:51:20.19ID:r/967Sma0
外部のアプリ(EXEファイル)を別プレセスで複数実行させるのどうやんの

506デフォルトの名無しさん (ワッチョイ 2b61-oL0b)2017/08/17(木) 19:56:19.12ID:ur5EMh3c0

507デフォルトの名無しさん (ワッチョイ 2ba2-oL0b)2017/08/17(木) 20:07:52.35ID:r/967Sma0
>>506
天才
インスタンス化したかったんだありがとう

508デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/19(土) 05:38:22.41ID:pqlrWbIe0
タプルでコレクションの中身を書けばノイズが少なくていいかと思って配列に変換するコードを書いてみたら
なんか毒々しいものが出来たんだけどどうすれば改善できる?

http://ideone.com/nfbYcC

509デフォルトの名無しさん (ワッチョイ 816e-I7lA)2017/08/19(土) 09:03:58.70ID:GJ9v1oeu0
>>508
タプルはコレクションではないのでそんな間違った発送は捨てる

510デフォルトの名無しさん (ワッチョイ 81c0-oL0b)2017/08/19(土) 09:46:57.21ID:L0VsKhKh0
>>508
自前のメソッドなんて使わなくてもSelect使えばIEnumerableなTaple作れると思うが

511デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/19(土) 10:19:25.53ID:pqlrWbIe0
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();

512デフォルトの名無しさん (エムゾネ FFb3-jXEI)2017/08/19(土) 11:04:54.36ID:Qv1Dw1g0F
Dictionary

513デフォルトの名無しさん (ワントンキン MMd3-3iWW)2017/08/19(土) 13:25:33.54ID:cYLfyEivM
でもそれメタプロで遅いし型チェック効かなくなるじゃん
だったらスクリプト言語を使いなよ

514デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/19(土) 13:49:29.79ID:pqlrWbIe0
http://ideone.com/RUcYj6 速度はこれでだいぶまともになると思う

515デフォルトの名無しさん (ブーイモ MM35-I7lA)2017/08/19(土) 13:54:04.95ID:y3ZCFtJSM
>>511
そんなもん一次元で渡してから二次元に変換すりゃいいだろ
括弧すら必要ない

516デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/19(土) 14:32:05.62ID:pqlrWbIe0
>>515
1, 2, Delim,
3,4, 5, Delim

みたいに区切りを書くの?
それだとNum(1,2)みたいにするのと冗長さは変わらんでしょ

517デフォルトの名無しさん (ワッチョイ 816e-I7lA)2017/08/19(土) 14:39:34.62ID:GJ9v1oeu0
>>516
科学技術計算なら矩形しか使わないからデリミタなんか要らん
numpyなんかだとreshapeで行列の型を読み替えたりするのは普通に行われている

518デフォルトの名無しさん (ワントンキン MMd3-hOer)2017/08/19(土) 15:01:44.09ID:cYLfyEivM
遅すぎわろた

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

519デフォルトの名無しさん (ブーイモ MM35-cIbb)2017/08/19(土) 15:31:46.04ID:5zKij7dqM
>>518
初心者スレであんたどうしたいの?

520デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/19(土) 15:40:55.40ID:pqlrWbIe0
>>517 矩形しか使わないわけないやろ
まあ一行の個数が決まってるなら普通にTuple指定すれば型安全にちゃちゃっと書ける

521デフォルトの名無しさん (アウアウウー Sa85-JJVS)2017/08/19(土) 19:40:18.23ID:zNHilmkoa
csv読み込め

522デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/19(土) 19:50:47.56ID:pqlrWbIe0
たとえば1回目の実験では15人の被験者がいました
2回目では13人で3回目は20人でN回目はM人でしたと
一人分のデータには名前とか年齢とかいろんな型のデータが使われます
これを一気に処理しようとすれば一人分のデータの型は固定の2次元ジャグ配列になるよね
このデータを書く時にVisual Studioで書けば、データ型のエラーは即検知してくれるしデータを修正するときにもエクセルとか立ち上げなくて済むしJSONみたいな冗長な型式にして可読性を犠牲にしなくてもいい
別のスクリプト言語を実行するための環境を用意しなくても済むしその言語の変な仕様に足をすくわれることもない
いいことづくめでしょ タプルを使えばね

523デフォルトの名無しさん (ブーイモ MM35-I7lA)2017/08/19(土) 20:09:37.64ID:y3ZCFtJSM
>>522
そんなデータをソースにリテラルで書くことがどれだけあるのだろう
そういうデータ処理はわりとよくやるけどPythonやPerlですらソースに書くなんてやったことないわ

524デフォルトの名無しさん (ワッチョイ f94b-jLVh)2017/08/19(土) 20:10:28.00ID:xJNDdKxb0
>>522
そのケースだとタプル使う意味なくね?

525デフォルトの名無しさん (ブーイモ MM35-I7lA)2017/08/19(土) 20:17:26.15ID:y3ZCFtJSM
まあ実験IDか実験日を持たせるわな
重複が嫌なら正規化するべきだし

526デフォルトの名無しさん (ワッチョイ 61e2-WUop)2017/08/19(土) 20:24:22.85ID:FWLPt1pK0
バカが例を出すとこうなるよな

527デフォルトの名無しさん (ワッチョイ 9391-jLVh)2017/08/19(土) 20:34:08.67ID:xhyE7NbO0
Nが少ないなら高速処理要らないんだしファイル経由でいい
N多いならそもそもデータベースかファイル群として格納しとけっていうデータやね
数値計算で扱うデータではないよ

528デフォルトの名無しさん (アウアウウー Sa85-JJVS)2017/08/19(土) 20:34:56.03ID:zNHilmkoa
だからデータはソースじゃなくて外に出せよ
c#入門したてでファイルの読み込みできないのかもしれないけど
勉強したほうがいいぞ

最低でもcsvにしとけば他でも使いやすい

529デフォルトの名無しさん (ブーイモ MM35-I7lA)2017/08/19(土) 20:51:46.08ID:y3ZCFtJSM
なるべく細かく設計するならこんな感じだな
実験(実験ID, 実験日, …)
実験結果(実験ID, 被験者ID, 項目1の結果, 項目2の結果, …)
被験者(被験者ID, 氏名, 年齢, …)
1項目ごとに結果の値が複数個あるなら項目ごとに別々の実験結果テーブルを作ったしたほうがいいかもね

530デフォルトの名無しさん (ワンミングク MMd3-3iWW)2017/08/19(土) 21:17:47.49ID:khsltEiUM
実験するたびに手作業でタプル書いてリビルドするとか斬新な修行方法だな

531デフォルトの名無しさん (ワッチョイ 9391-jLVh)2017/08/19(土) 21:22:03.91ID:xhyE7NbO0
データは流石に機器制御で自動取得なのでは

532デフォルトの名無しさん (アウアウウー Sa85-JJVS)2017/08/19(土) 21:34:04.23ID:zNHilmkoa
最近は横着しだしてcsvじゃなくてタブ区切りにしてる

533デフォルトの名無しさん (ワッチョイ c932-6J24)2017/08/19(土) 23:16:55.78ID:6Hx+8ODk0
>>532
所謂TSVってやつだけど、知名度いまいちだね。
Excelでそのまま開いてくれないから、採用し辛い。

534デフォルトの名無しさん (アウアウウー Sa85-JJVS)2017/08/19(土) 23:23:29.02ID:hlM8r5U9a
>>533
今のは開かないのか
前のは普通におkだったけど

535デフォルトの名無しさん (ワッチョイ 81c0-oL0b)2017/08/19(土) 23:40:22.90ID:L0VsKhKh0
>>533
普通に開けるよ
方言でトラブル多いCSVよりTSV使って欲しいわ

536デフォルトの名無しさん (アウアウイー Sacd-4GJO)2017/08/20(日) 00:32:23.71ID:ZcNe1uIUa
どっとも同じにしか思えないけどw
CSVで起こるトラブルは全部起こるんじゃないの?
セパレーターが違うだけじゃんw

ただ、TSVってクリップボード経由でエクセルに矩形(N列×M行)のデータ
貼り付けに使えるんだよね。
それ以外の用途で使ったことないなあ

537デフォルトの名無しさん (アウアウウー Sa85-JJVS)2017/08/20(日) 01:18:43.49ID:sHrA4xR7a
>>536
いやいや普通のテキストには普通にコンマ入ってるけどタブは入ってない
これが重要

538デフォルトの名無しさん (ワッチョイ d319-oL0b)2017/08/20(日) 01:21:28.72ID:ry172e0x0
TVで報道されない真実


集計マシーン  ムサシ


作ってる会社は?


wwww
一番触れられたくない部分www 税金垂れ流しで身内がばぶってる糞安倍特需

539デフォルトの名無しさん (アウアウイー Sacd-4GJO)2017/08/20(日) 01:53:56.95ID:dZsjl021a
>>537
確かにカンマの方が頻度が圧倒的に高いのはそうだね

プログラマの端くれだからどうしても「例外的な状況でも問題を起こさないか?」
って視点で考えちゃうけど、現実論としてはそうかもしれん

540デフォルトの名無しさん (ワッチョイ 81c0-oL0b)2017/08/20(日) 02:16:19.45ID:g2LxWR3u0
>>537
それを区別するためにダブルクォーテーションを先頭と末尾につけて更にドツボにハマるケースとかあるしな

541デフォルトの名無しさん (ブーイモ MMc5-VWtH)2017/08/20(日) 03:12:20.91ID:sDPteTwuM
そう、C#ならね

542デフォルトの名無しさん (ブーイモ MMc5-VWtH)2017/08/20(日) 03:14:12.06ID:sDPteTwuM
>>535
え、もしかしてcsvのcって、カンマで、tsvのtってタブなの??

543デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/20(日) 05:20:55.44ID:Z/sZ4AZQ0
だから言ってるだろ
ソースに書いたほうが何もかもいいんだよ
いちいち別ファイルにして読み込んで混乱してもなんにもいいことはないし
修正にも手間がかかる
仮想的にデータを修正して結果がどうなるか調べていって新たな実験のプランを立てたりもするのだから
デリケートでミスが多い型式にするのも可読性を犠牲にするのも何も合理的じゃない
ソースにデータを書いてはいけないというのはただの思いこみに過ぎない

544デフォルトの名無しさん (ワキゲー MMa3-Gskc)2017/08/20(日) 05:41:01.10ID:MYcnjkMXM
>>543
データ変わるときには再コンパイル?

545デフォルトの名無しさん (ワッチョイ 13c4-WUop)2017/08/20(日) 08:23:09.88ID:NOqm8CtN0
引っ込みつかなくなったガキ

546デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/20(日) 09:11:36.31ID:Z/sZ4AZQ0
>>544
もちろん
C#なら一瞬 なんならプロジェクト分ければそこしかコンパイルされない

547デフォルトの名無しさん (ワッチョイ 5966-oL0b)2017/08/20(日) 09:18:37.94ID:WBEiN1za0
TSVを使えると言うならソース側のソフトもいじれることを示すわけで
両方いじれるならIPCでも使ったほうが使い勝手が良さそう

ケースバイケースだけどね

548デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/20(日) 09:19:33.42ID:Z/sZ4AZQ0
もっと根本的なことを言えば、なぜこの世にスクリプト言語があるかと言えば
プログラミングの外側にスクリプティング 作ったライブラリをただ呼び出すフェーズがあり
その外にさらにデータを作るフェーズ これはプログラミング言語を使う必要もなく
データ記述に特化したアプリを使うことが多いわけだが
出来るものは全部C#でやったほうがいい Visual Studioはそれだけ優れた記述環境だ
ライブラリを呼び出す時のインテリセンスのサポートは圧倒的だし
データの型式エラーもリアルタイムに発見できる
言語自体の記述の冗長性の低さもタプルで一段先に進んだ

549デフォルトの名無しさん (ワッチョイ 816e-I7lA)2017/08/20(日) 09:25:57.99ID:02zgg1Cu0
こういう時期あるよね
俺も経験あるわ
君が言っているようなことは誰でもみんな一度は考えて試したことがあるんだよ
プログラミングのベストプラクティスは自分の考えでやってみて壁にぶち当たって初めて身につくものだから、君はそのままでいいと思うよ

550デフォルトの名無しさん (ワッチョイ 994d-jLVh)2017/08/20(日) 09:28:02.98ID:4v9fraNU0
こういう時期あるよね
俺も経験あるわ
君が言っているようなことは誰でもみんな一度は考えて試したことがあるんだよ
プログラミングのベストプラクティスは自分の考えでやってみて壁にぶち当たって初めて身につくものだから、君はそのままでいいと思うよ

551デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/20(日) 09:47:38.37ID:Z/sZ4AZQ0
自演はするのに書き込みにロジックはない
恥ずかしいなお前

552デフォルトの名無しさん (ワキゲー MMa3-Gskc)2017/08/20(日) 09:54:32.77ID:MYcnjkMXM
>>546
お前がそれでいいならいいけど俺ならそんなどうでもいいことまで保守しなきゃならないプログラムは避けるなぁ

553デフォルトの名無しさん (ワッチョイ 816e-I7lA)2017/08/20(日) 09:58:05.52ID:02zgg1Cu0
>>551
君の言っていることは理屈の上では正しいからな
教科書的な否定意見を述べることはもちろんいくらでもできるけど、君がそれを受け入れないことも分かってる
なぜなら俺自身がそうだったからね
これはプログラムというものがどういう状況で使われたりどういう理由で変更されたりすることが多いか、といった、
きわめて経験的な問題であって、演繹的なロジッで白黒付けられるような問題じゃないの

554デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/20(日) 10:16:08.57ID:Z/sZ4AZQ0
>>553
議論の目的は相手を言い負かすことではないから俺が受け入れるかどうかなどどうでもいいし
ロジックでは説明できないと言い張るのも全く論理的な態度ではない 少なくともプログラマーが取るべき態度ではない

>>552
データの管理をプログラマーがやらなきゃならなくなるって話か?
データを書いて管理するのもスキルが必要だしそのスキルを学べたならC#のデータ記述ぐらい学べる
プログラミング技術ではなくデータ書式を覚えるだけなんだから
それにこの方式なら自然にデータがバージョン管理されるから何か問題が起きた時に再現したりも簡単にできる

555デフォルトの名無しさん (ワッチョイ 81c0-oL0b)2017/08/20(日) 10:22:57.60ID:g2LxWR3u0
ソース管理履歴が入力データの数値変更とかある意味斬新な使い方だな

556デフォルトの名無しさん (ブーイモ MM35-I7lA)2017/08/20(日) 10:43:36.19ID:xUVeBm+tM
>>554
その使い方を他人に教えるのは少なくとも最初はお前の仕事なんだぞ?
VSのインストール方法、ソースの変更箇所や変更方法、ビルド方法、全部教えるの?
外部のスクリプトから毎回パラメータを変更して繰り返し実行したいときはどうするの? 実験データの処理なんかだとよくあるよね
毎回本体に手を入れるの? 他人にもそれを求めるの?

557デフォルトの名無しさん (アウアウウー Sa85-JJVS)2017/08/20(日) 10:55:39.20ID:IkwItTHKa
データが変わったり増えたりするたびにコンパイルしなおす環境を
是とするのは初心者だけ

コンパイル5分とかのプロジェクトが普通にあるんだけど

558デフォルトの名無しさん (ワッチョイ 61a0-WUop)2017/08/20(日) 10:57:55.80ID:VzkR/TOU0
実際初心者なんだからいいだろ
何をムキになってんの

お前も初心者Lv2くらいなんしゃねーの

559デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/20(日) 11:29:10.12ID:Z/sZ4AZQ0
だからプロジェクトを分ければそこだけしかコンパイルされない
VSの使い方は別に難しくない しかもデータを書くだけなんだから使う機能はほんの一部

データほどバックアップが必要なものはないからバージョン管理するのも当然
上書きしたデータはしばしば必要になるがデータは消えたらまず戻らない
ソースコードの変更履歴なんてのは消えても必要なら書き直せばいいだけだからな

パラメータを変えながら繰り返し実行したいならC#で書けばいい
繰り返しになるがそこだけプロジェクトを分ければそこしかコンパイルされない
スクリプト層のように一方的に使う側は書き換えても何も他に影響を及ぼさない
データのように書き換えてもプログラム上のインターフェースが変わらないものも同じだ

560デフォルトの名無しさん (ワッチョイ 994d-jLVh)2017/08/20(日) 11:33:38.19ID:4v9fraNU0
>>557
プログラムにデータベタ書きは日本のSIerなら常識だぞ。
変更のたびに改修費取れるからな。消費税率なんかみんなベタ書きだ。

561デフォルトの名無しさん (ドコグロ MMb3-x4Vn)2017/08/20(日) 11:38:29.95ID:RoSv4OHrM
>>555
データをバージョン管理ツールに突っ込むのはたまにやる

562デフォルトの名無しさん (スップ Sdb3-jXEI)2017/08/20(日) 12:01:00.60ID:8rqqhxmUd
>>557
コンパイル5分はさすがに設計が悪いとしか

563デフォルトの名無しさん (アウアウウー Sa85-JJVS)2017/08/20(日) 12:08:47.92ID:IkwItTHKa
>>559
だからこそ外に出したほうがいいんではないかと普通に思うんだけど
外に出しておけばほかのツールなどでも使えるし

馬鹿な初心者はなんで食い下がりたがるんだろうか?という疑問はいつか解消されるのか

564デフォルトの名無しさん (アウアウイー Sacd-4GJO)2017/08/20(日) 12:20:57.09ID:TOwE0eF8a
なんかしょうもないことで揉めてるなあ。
こんなの要件その他しだいのケースバイケースでしょ。

まさか文字列や数値のリテラルまで否定する人はいないわけで、
そういう感覚で複雑なデータをコードに直書きした方が好都合な場合もそりゃないことはないと思うよ。

いつでもどんな場合もそうした方がいいと言ってるならお馬鹿さんだけどさ

565デフォルトの名無しさん (スップ Sdb3-jXEI)2017/08/20(日) 12:20:57.99ID:8rqqhxmUd
>>563
テストケースで使うデータはテストコードと強く結びついてるからコード中に書く場合もある
ひとつの手段を「普通」と言い切ってしまうのは浅はか

566デフォルトの名無しさん (ワッチョイ f932-jLVh)2017/08/20(日) 12:40:50.18ID:3qMRQsNA0
c#でjsonにシリアライズしたいんですが、キーは文字、値は文字と数字としたい場合
どのような型を使えばいいのでしょうか?

例えば、jsonの表記を以下のようにしたいということです。

{
"test": [
{
"a": "aaaa",
"b": 123456789,
"c": "ccc",
"b": "987654321,
},
{
"a": "aaaa",
"b": 123456789,
"c": "ccc",
"b": "987654321,
}]
}

567デフォルトの名無しさん (ワッチョイ f94b-jLVh)2017/08/20(日) 13:02:04.31ID:/Yfo0eFx0
>>562
6年ほど前に某F通のフレームワーク使ったときはビルドに10分とかかかってたわ

568デフォルトの名無しさん (ブーイモ MMab-I7lA)2017/08/20(日) 13:04:52.88ID:+32tL3aOM
>>566
objectかdynamic

569デフォルトの名無しさん (ブーイモ MMab-I7lA)2017/08/20(日) 13:10:16.81ID:+32tL3aOM
いや訂正
>>566なら普通にa, b, c, dをプロパティとして定義した型を使えばいいな

570デフォルトの名無しさん (ワンミングク MMd3-bETP)2017/08/20(日) 13:57:47.29ID:dgrWF/1pM
>>566
var obj = new {
test = new [] {
new {
a = "aaaa",
b = 123456789,
c = "ccc",
d = "987654321"
},
new {
// ry
}
}
};

var s = NewtonSoft.Json.JsonConvert.SerializeObject(obj);

571デフォルトの名無しさん (ワッチョイ f932-jLVh)2017/08/20(日) 14:03:08.79ID:3qMRQsNA0
お二方とも、ありがとうございました。
オブジェクトを使って無事にやりたいことができました。

572デフォルトの名無しさん (ワッチョイ 5bc8-faiX)2017/08/20(日) 15:36:32.78ID:Z/sZ4AZQ0
>>563
データを別の環境から使いたいならJSON.NETでも使えばいいだけ
しかしJSONは冗長だから管理には向かないが
CSVみたいなのも自分が何の値を触ってるのかわからなくなりがちだから難しい
だから元データにはC#&VSを使うべき

タプルのいいところはもうひとつあるな こっちの方が重要かもしれないが
コードでデータを書こうとする場合、データの型とプログラムに依存関係が発生してしまう場合がある
C#でデータを書くには型が必要で プログラムで処理するにも入力する型が必要
「プログラムは再利用するものだ」という観念があるとここで型を使いまわして依存関係が発生してしまう
プログラムで処理したい型に合わせて元データを書いていると、プログラムの方の仕様変更で型が変わっても元データをいじるわけにはいかず対応が難しくなる
もともとデータはデータであってデータの汎用性を最大にするためにも変更に強くするためにもプログラムと依存関係は持つべきじゃない
依存関係はコンパイルにも影響する
しかし同じ型を二つ作ってやりとりするのはめんどくさかった
(まあJSONやCSVを使える型に直すよりはずっと楽だが)

この問題はタプルで解決する
タプルの型が使いまわせるうちはそのまま渡せばいいし
使いまわせなくなったら必要な変換コードを書けばいい

573デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 15:38:29.83ID:zHhVJRDSa
>>564
見積りに入ってねぇのに勝手にやったらぶっ殺すけどな
テスト工数とかものすげー増えんじゃん

574デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 15:44:09.85ID:zHhVJRDSa
>>572
タプルってpythonのごった煮のゴミだろ
いらねーよ

575デフォルトの名無しさん (ブーイモ MMab-I7lA)2017/08/20(日) 15:48:19.19ID:+32tL3aOM
>>572
そうそう
それを突き詰めていくと「CSVかJSONでよくね?」となるんだよ
こっち側まであと半年くらいかな

576デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 15:52:41.50ID:zHhVJRDSa
pythonのお仕事が来ると
あまりにも変態的な使い方をするやつが多かったのか
使用禁止例もいっしょに出るので注意な

577デフォルトの名無しさん (ブーイモ MMab-I7lA)2017/08/20(日) 15:56:43.69ID:+32tL3aOM
Pythonのタプルが要素の取り違えを非常に起こしやすいのは確か
C#のタプルは常にフィールド名を型に含めておけるからだいぶマシだと思うよ

578デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 15:59:24.89ID:zHhVJRDSa
>>577
いやいや
どんな設計になっとんねん
将来的にデータベースに移すとかなったらそんなテーブルどう作んねん

579デフォルトの名無しさん (ワンミングク MMd3-bETP)2017/08/20(日) 16:01:29.91ID:dgrWF/1pM
>>572
素晴らしいアイデアだ
是非とも世界中に広めてくれ
ちなみにこのスレのみんなはもう君の素晴らしいアイデアは理解したから
別のコミュニティに行って啓蒙した方がいいと思うぞ
業界のデファクトスタンダードになったら業務にも導入するよ

580デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 16:08:54.30ID:zHhVJRDSa
なんでもできちゃう仕組みは実は何にもしない
これがわからんうちは素人
俺らは制限を加える代わりに機能を作成している

581デフォルトの名無しさん (ワキゲー MMa3-Gskc)2017/08/20(日) 16:09:34.46ID:MYcnjkMXM
>>554
そう考える方もいるんだね
データと処理は分けたい!ってクセになってるので状況に応じて柔軟に考えるようにするわ

582デフォルトの名無しさん (ワッチョイ d319-oL0b)2017/08/20(日) 16:16:50.41ID:ry172e0x0
LINUX あきらめた人がC#やってるってまじ?

583デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 16:18:08.23ID:zHhVJRDSa
>>581
せめて客と打ち合わせして
誰向けにどんな頻度で読み込むのか
相談しろよ
しかしやはりテスト工数とか超無駄
頼んでもいねー機能が入っちゃってるし
コードレビューやるとこだと
会議室静まり返るわ

584デフォルトの名無しさん (ワキゲー MMa3-Gskc)2017/08/20(日) 16:24:22.45ID:MYcnjkMXM
>>583
で?

585デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 16:31:05.69ID:zHhVJRDSa
>>584
お前扱いにくいやつになっちゃったんだな
場所によっては通用しないだろうな

586デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 16:39:10.31ID:zHhVJRDSa
加不足なくキッチリ作ってこそプロ
塗装屋に屋根だけじゃなく壁も塗られたら嫌だろ

587デフォルトの名無しさん (ブーイモ MMab-I7lA)2017/08/20(日) 16:47:40.00ID:+32tL3aOM
>>582
大雑把に言えば間違ってはいないな
俺は基本的にLinuxファーストで構成組むけど、どうしてもどうしてもWindowsを使わざるを得ない場合にC#を使う

588デフォルトの名無しさん (ワンミングク MMd3-bETP)2017/08/20(日) 17:07:58.90ID:dgrWF/1pM
>>582
LinuxできないのにC#は今後キツイぞ

589デフォルトの名無しさん (ワッチョイ 13c4-WUop)2017/08/20(日) 17:24:54.81ID:NOqm8CtN0
素人さんにそんなこと言っても分からんだろ

590デフォルトの名無しさん (ワッチョイ d319-oL0b)2017/08/20(日) 17:35:16.04ID:ry172e0x0
>>587
やっぱりそうだよな。
スキルとか知識面で
Linuxベース+Windowsの人間の方がきもいけど知識は豊富

591デフォルトの名無しさん (ワッチョイ f94b-jLVh)2017/08/20(日) 17:43:20.05ID:/Yfo0eFx0
まーた流れが変になったきた

592デフォルトの名無しさん (ワッチョイ 2ba2-oL0b)2017/08/20(日) 17:57:07.82ID:lAN4MCjV0
Linux出来ないってなんだよ

593デフォルトの名無しさん (ブーイモ MM35-VWtH)2017/08/20(日) 18:19:33.30ID:qRBovfU3M
>>570
library使ってるの言わなきゃわかんねーだろw

594デフォルトの名無しさん (ブーイモ MM35-VWtH)2017/08/20(日) 18:22:32.24ID:qRBovfU3M
タプルって必要?

595デフォルトの名無しさん (ワッチョイ c16f-jLVh)2017/08/20(日) 18:24:23.09ID:RTInNZ8f0
Linux出来ないの意味がわからない

596デフォルトの名無しさん (ブーイモ MM35-VWtH)2017/08/20(日) 18:24:46.30ID:qRBovfU3M
タプル使っても結局戻り値の受け皿となる型用意しなきゃいけないし、だったら最初からその型で返却すればいいとおもうのですが。

597デフォルトの名無しさん (アウアウウー Sa85-JJVS)2017/08/20(日) 18:39:05.96ID:hUYAcmEda
>>572
コードの中に埋め込んでる状況が一番依存性が高いだろうwww

本当の馬鹿ってこんなところにいるんだな…

598デフォルトの名無しさん (ワッチョイ 5966-oL0b)2017/08/20(日) 19:02:37.86ID:WBEiN1za0
>>596
var

599デフォルトの名無しさん (ワッチョイ 93ea-7xTZ)2017/08/20(日) 19:16:42.28ID:CkRUpBQZ0
タプルはその型にちょうどいい名前がつかない時が使いどころ
なくてもそんなに困らないけどあると便利な場面は多い

600デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 19:21:32.83ID:6SP869Cna
全部タプルで組まれるテロ

601デフォルトの名無しさん (ワッチョイ 110b-wwH0)2017/08/20(日) 20:04:50.98ID:5Qhm1OO+0
タプルは7.0のタプル型になってから戻り値で使うようになった

602デフォルトの名無しさん (アウアウイー Sacd-4GJO)2017/08/20(日) 20:29:11.34ID:9QhbSfl9a
からだすこやか茶~

603デフォルトの名無しさん (ワッチョイ b111-m0BB)2017/08/20(日) 20:32:10.39ID:TNLMpcMk0
C#はバージョン毎に結構あれこれ追加されて常識が変わってくからな
最新バージョンを追い掛け続けてる人とそうでない人で、話が通じなくなる事もしばしば

俺も割りと4.0くらいで頭の中が止まってるかもしれない

604デフォルトの名無しさん (ワッチョイ 61e3-jLVh)2017/08/20(日) 20:35:21.31ID:PJX+MB9c0
せっかくJavaやCが戻り値はひとつにしようと糞コード撲滅の努力をしてきたのに

605デフォルトの名無しさん (ワッチョイ 13c4-WUop)2017/08/20(日) 20:38:12.45ID:NOqm8CtN0
JavaやCみたいな前世紀の遺物

606デフォルトの名無しさん (ワッチョイ ab6f-oL0b)2017/08/20(日) 20:41:00.60ID:WpPKXiqN0
クラスじゃなくてタプルで返すべき場面てある?

607デフォルトの名無しさん (ワッチョイ 93ea-jXEI)2017/08/20(日) 20:47:43.32ID:tm2H9Mai0
>>604
JavaやCワロタwww

608デフォルトの名無しさん (ワッチョイ 61e3-jLVh)2017/08/20(日) 21:17:50.95ID:PJX+MB9c0
>>606
戻り値のためにクラス作るのがなんか心理的に重い

609デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/20(日) 21:33:13.87ID:6SP869Cna
>>608
戻り値にデータが複数必要ってどんなときだべ?
もちろんなかったわけじゃないが
エラーとエラーログみたいな?

610デフォルトの名無しさん (ワッチョイ 2b61-oL0b)2017/08/20(日) 21:38:30.65ID:woceXaSP0
>>609
たとえば画像データだと画素データだけでなくチャンネル数や各チャンネルの大きさ、縦と横の(特に横)の長さが必要になる
これだけで例えばバイト配列といくつかのintが必要になる

611デフォルトの名無しさん (アウアウイー Sacd-4GJO)2017/08/20(日) 21:53:44.36ID:9QhbSfl9a
>>610
全然適切な例になってない気が
それ、明らかにクラスまたは構造体にまとめるべきデータでしょ

まあ、一つの型にまとめたくない複数のデータを一つのメソッドから返したい、
なんて率直に言ってうんこの臭いしか感じないね。

612デフォルトの名無しさん (ワッチョイ 2b61-oL0b)2017/08/20(日) 21:59:18.22ID:woceXaSP0
>>611
「クラスや構造体でまとめられないデータ」に対する回答でなく
「複数の戻り値が必要なデータ」に対する回答なんだけど

613デフォルトの名無しさん (ワッチョイ 9996-jLVh)2017/08/20(日) 22:07:06.65ID:lGh3jxXl0
別の場所でも入力にも使うようならクラスなりで定義すべきだけど
なんちゃらResultとか名前を付けたくなるような
特定の場所の戻り値でしか使わないデータのまとまりはタプルって感じかなあ

614デフォルトの名無しさん (ワッチョイ 61e3-jLVh)2017/08/20(日) 22:09:47.01ID:PJX+MB9c0
一連のDBと入力の整合性チェックをまとめたとき
処理途中でとってきたDBの値を使いまわしたい場合とか

Result 処理途中でとってきたDBのDtoいっぱい = checkなんちゃら(画面入力.id, 画面入力.数量)

とかのためにクラスつくるのがなんとなくイヤで
タプルで楽したくなる

615デフォルトの名無しさん (ワッチョイ 81c0-oL0b)2017/08/20(日) 22:10:45.97ID:g2LxWR3u0
>>613
スコープの範囲次第で使い分けかなと考えているけど、職場ではTaple使えない悲しい現実

616デフォルトの名無しさん (ワッチョイ 81e6-VWtH)2017/08/20(日) 22:25:47.11ID:KFJuIj/g0
>>598
varすげえええ

617デフォルトの名無しさん (ワッチョイ 81e6-VWtH)2017/08/20(日) 22:28:08.05ID:KFJuIj/g0
>>603
会社が4.0の環境でasynce await使えないからよくわかるわ。

618デフォルトの名無しさん (ワッチョイ 81e6-VWtH)2017/08/20(日) 22:29:23.05ID:KFJuIj/g0
>>609
今時のAPIなんてほとんどjsonだろうに。

619デフォルトの名無しさん (ワッチョイ b111-m0BB)2017/08/20(日) 22:45:48.34ID:TNLMpcMk0
>>617
環境変えるとビルド結果のバイナリが変わってしまうかも知れない、て不安があるとどうしてもな

C#の話じゃないけど、Borland C++ Compiler(5.5.1)のコマンドライン版は問題なく使えるのに
後発の2006年版Turbo C++に含まれてる奴は、リソースコンパイラにバグがあってコマンドラインから呼ぶと正常に機能せずにしばらく頭を捻るとか
そういうしょーもない例も過去にある

620デフォルトの名無しさん (ワンミングク MMd3-bETP)2017/08/21(月) 00:25:30.65ID:O/1upfegM
分解構文は気持ちがいいぞ
タプルの存在意義なんてほぼ全て分解構文のためだろ
手軽に変数をまとめたいとかそんなんどうでもいいんだわ

621デフォルトの名無しさん (ワッチョイ d319-oL0b)2017/08/21(月) 00:39:12.05ID:g6ClmGpT0
Linuxの覚えることの多さに挫折した奴が

Visual Studio使って開発もどきをしている

622デフォルトの名無しさん (ワッチョイ c16f-jLVh)2017/08/21(月) 01:55:10.53ID:qkKjHqu10
意味ワカンネ
Linuxむしろ全然楽じゃん
windowsめんどくせー

623デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/21(月) 02:06:19.44ID:DtUMsypOa
>>622
linuxの画面表示版
最速HelloWorldってどーなんの?

624デフォルトの名無しさん (ワッチョイ c16f-jLVh)2017/08/21(月) 02:24:14.96ID:qkKjHqu10
>>623
画面表示版とは?

625デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/21(月) 02:43:19.80ID:DtUMsypOa
>>624
WinFormみたいな奴

626デフォルトの名無しさん (ワッチョイ c16f-jLVh)2017/08/21(月) 03:17:22.85ID:qkKjHqu10
>>625
最速ってのがわからないけどこんなん?
http://www43.atpages.jp/opicon69/xlib/t05.html
昔やってたwindowsSDKみたいな感じだな。まあ普通はGUIライブラリ使うんだろうけど

627デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/21(月) 03:22:57.90ID:DtUMsypOa
>>626
win32api思い出したわ
そうかlinuxで組むとそうなるか

628デフォルトの名無しさん (アウアウイー Sacd-eC16)2017/08/21(月) 03:23:30.61ID:DtUMsypOa
>>626
ありがとうございました

629デフォルトの名無しさん (ワッチョイ 8179-cJPH)2017/08/21(月) 07:38:19.57ID:io7xKced0
>>628
いいってことよ(´・ω・`)b

630デフォルトの名無しさん (ブーイモ MM35-VWtH)2017/08/21(月) 12:33:00.92ID:7ZS301rmM
Visual Studio意外でC#書いてるやつはマゾなのか??

631デフォルトの名無しさん (ブーイモ MM35-I7lA)2017/08/21(月) 12:39:26.81ID:g1AySmchM
マゾっていうかバカの一つ覚え

632デフォルトの名無しさん (スプッッ Sdf3-jXEI)2017/08/21(月) 12:45:15.76ID:RM3yKiI1d
>>630
最近ずっとプライベートではVSCode…

633デフォルトの名無しさん (スップ Sdf3-jXEI)2017/08/21(月) 12:46:13.25ID:voUPNyzbd
>>631
ごめんちょっとよくわからない

634デフォルトの名無しさん (ワンミングク MMd3-Vsvx)2017/08/21(月) 17:45:56.58ID:lYWr+wd6M
VSCodeがいまんとこベストかな
C#だけならVS IDEでもいいけど

635デフォルトの名無しさん (ワッチョイ ab84-oL0b)2017/08/21(月) 19:16:37.63ID:unnUdLF20
ライダーってどうなの?

636デフォルトの名無しさん (ワッチョイ 93ea-jXEI)2017/08/21(月) 19:30:53.20ID:61WjIS0b0
>>635
NuGetのパッケージマネージャーが軽くてびっくりした

637デフォルトの名無しさん (ワッチョイ e14b-m4kK)2017/08/21(月) 19:41:32.56ID:itmc25rV0
Nugetから持ってきたパッケージがウイルス感染している危険性は無いの?

638デフォルトの名無しさん (ブーイモ MM35-I7lA)2017/08/21(月) 21:28:45.58ID:g1AySmchM
>>637
MSのサーバーがやられてバイナリが感染する可能性を考慮すると
Windows UpdateもVS本体のオンラインインストールも、あらゆるダウンロード行為が何一つ安全でなくなるので、それは考慮しなくていいだろう
その上でNuGet特有のリスクは、第三者によるレビューなしに誰でもパッケージを登録でき、登録した本人であればいつでもそれを更新できること
例えばJSON.NETの作者がこっそりマルウェアを仕込んだらとんでもない被害が出るだろうね
その点についてMSが保証するのは他人のなりすましによる登録や更新が行えないことだけで、作者の人格を信用するかどうかはお前自信の責任

639デフォルトの名無しさん (ワンミングク MMd3-bETP)2017/08/21(月) 21:37:13.77ID:lYWr+wd6M
ソースチェックすればいいじゃん
なんのためのオープンソースだよ

640デフォルトの名無しさん (ブーイモ MM35-I7lA)2017/08/21(月) 21:40:21.89ID:g1AySmchM
>>639
公開されているソースとバイナリが一致している保証はない

641デフォルトの名無しさん (ワッチョイ 994d-jLVh)2017/08/21(月) 21:49:47.54ID:edNFVMcB0
ソースが公開されても誰もチェックしないよ。OpenSSLで証明済みじゃないか。

642デフォルトの名無しさん (ワッチョイ d319-oL0b)2017/08/22(火) 19:57:59.09ID:S++Cl2tB0
PCですが、室温が何度までだったら耐えられますか?

これ以上あがるとまずいという温度があれば教えてください。

643デフォルトの名無しさん (ワッチョイ b111-m0BB)2017/08/22(火) 20:01:02.01ID:EXI53gop0
スレチだが一応答えると
室温じゃなく、CPU・グラボ・HDDの温度を気にしろ

644デフォルトの名無しさん (ワッチョイ f94b-jLVh)2017/08/22(火) 20:02:03.90ID:u7G+rQ2a0
>>643
Linux君はスルー推奨

645デフォルトの名無しさん (ワッチョイ d319-oL0b)2017/08/22(火) 20:17:38.32ID:S++Cl2tB0
>>643
何度位までなら平気?

646デフォルトの名無しさん (アウアウイー Sacd-4GJO)2017/08/22(火) 20:48:21.01ID:z3/lSVpqa
最大積載量:積めるだけ
まで読んだ

647デフォルトの名無しさん (ワッチョイ 81e6-faiX)2017/08/23(水) 00:34:13.58ID:LJ4nsAN90
以下のようなHogeクラス型を定義して、List<Hoge> hoges というリストがあるとします。
class Hoge{
public string Name{ get; set; }
public int Age { get; set; }
public int Point { get; set; }
}

この時、hoges の各リストのAgeやPointの合計を1行で取れるクールなLinqを教えてください!
foreachなどでくるくるするしかないでしょうか?

648デフォルトの名無しさん (ワントンキン MMd3-bETP)2017/08/23(水) 00:36:48.60ID:kJ94jZYwM
hogea.Sum(i => i.Point)

649デフォルトの名無しさん (ブーイモ MM35-VWtH)2017/08/23(水) 01:07:33.71ID:8boGf0CHM
>>648
うおおお!超クール!!
ありがとうございます。

650デフォルトの名無しさん (ブーイモ MMab-VWtH)2017/08/23(水) 12:12:08.46ID:fFGpTDWIM
>>648
こーゆうコード集みたいなものどこかありませんか?
書籍でもいいです。

651デフォルトの名無しさん (スップ Sdb3-jXEI)2017/08/23(水) 12:32:51.30ID:Bqf1nBHjd
>>650
ググれ

652デフォルトの名無しさん (ワッチョイ 93ea-7xTZ)2017/08/23(水) 12:45:55.97ID:7K7+SK5b0
IntelliSenseに全部出るじゃん

653デフォルトの名無しさん (アウーイモ MM85-vD8I)2017/08/23(水) 13:01:43.39ID:eVg7CM3YM
>>650
LINQの基礎の基礎なんだから
これ知らないならコード集の前に基礎学習したほうがええんと違うか

654デフォルトの名無しさん (ブーイモ MMb3-cIbb)2017/08/23(水) 13:52:13.78ID:qwZ8bOdEM
>>653
腰据えて勉強なんてしない、必要に迫られて都度聞いたりググったりして断片的な情報でその場をやり過ごすプログラマが大半

655デフォルトの名無しさん (ワンミングク MMd3-Vsvx)2017/08/23(水) 17:44:12.69ID:kf+gYKjIM
それでいいんだよ
時間は有限なんだから腰を据えて勉強する対象は厳選しなきゃ

656デフォルトの名無しさん (アウアウカー Sa1d-itr+)2017/08/23(水) 18:41:09.25ID:Afml/4LQa
結局やらなきゃ忘れるしな
こうすれば出来るって頭の片隅にでもあればok
もちろん知ってるに越したことはない

657デフォルトの名無しさん (アウーイモ MM85-vD8I)2017/08/23(水) 20:42:57.17ID:eVg7CM3YM
でもLINQは激選した中でも上位に位置すると思う

658デフォルトの名無しさん (ワッチョイ 93ea-jXEI)2017/08/23(水) 21:32:17.29ID:WLX1rD7y0
腰据えて勉強なんかしなくても使うだけなら全然問題ない

659デフォルトの名無しさん (ワッチョイ ea19-2x4P)2017/08/24(木) 00:46:57.05ID:Q8+yPkYs0
30桁の英数字混在パスワード


って総当たりで解析無理だよね?

660デフォルトの名無しさん (ブーイモ MMb9-Jmle)2017/08/24(木) 01:41:05.34ID:l9QBhR2xM
>>657
別に使わなくても同じ事書けるし。
ただ行が短くなるだけ

661デフォルトの名無しさん (ワッチョイ adc0-2x4P)2017/08/24(木) 01:48:00.53ID:VK4+zNaD0
ユニットテスト必須の土壌じゃないとLINQとか他人に薦める気にならんわな
メソッドがクソ長くても単体テスト通れば良いんだろで終わっちゃうし

662デフォルトの名無しさん (アウアウイー Sa2d-w74m)2017/08/24(木) 02:24:29.26ID:Pz57oiAha
うまく動かないときに
ループのときみたいに
ハイじゃあどうして第一要素にゼロが入ってるんでしょうか?
的な追い方ができない
いっせーのせ!
で動かして途中経過が皆無なのは辛い

663デフォルトの名無しさん (ワッチョイ caea-Jukv)2017/08/24(木) 06:29:18.71ID:CEXjJv+U0
>>661
メソッドがクソ長いのは別問題
そんなんまともにUnitTestできんだろ

664デフォルトの名無しさん (ワッチョイ 8ac4-iENb)2017/08/24(木) 08:40:38.96ID:XrT3rCcY0
>>662
しょっぼw
どういうレベルでプログラムを書いてるのか余裕で知れるな

665デフォルトの名無しさん (アウアウイー Sa2d-w74m)2017/08/24(木) 08:44:57.20ID:82a0JzXma
>>664
だっせw
教育レベルが知れてるな

666デフォルトの名無しさん (ワッチョイ a511-oAcR)2017/08/24(木) 08:49:24.22ID:m0+KU43R0
お前らマウンティングしないと死んじゃう病か何かなの

667デフォルトの名無しさん (ブーイモ MMb9-Fy2N)2017/08/24(木) 08:56:00.31ID:5RRADv5lM
独立な処理に途中経過もクソもないわな
処理の詳細を無視して入出力のルールにフォーカスする考え方ができてないとそりゃ難しいだろうな

668デフォルトの名無しさん (ワッチョイ 0993-vgeI)2017/08/24(木) 08:59:48.07ID:8SwKEq/O0
ラムダ式の部分にブレークポイント置けばそこだけ追えない?

669デフォルトの名無しさん (スップ Sdca-Jukv)2017/08/24(木) 10:57:24.20ID:RXm0c/8Od
>>668
Ozcodeとかじゃないと無理

670デフォルトの名無しさん (ワッチョイ a511-/mpg)2017/08/24(木) 15:20:26.85ID:PEdDcCzs0
VS2015からは可能でしょ?

671デフォルトの名無しさん (スップ Sdca-Jukv)2017/08/24(木) 16:23:39.34ID:RXm0c/8Od
>>670
ソース

672デフォルトの名無しさん (ワッチョイ a511-/mpg)2017/08/24(木) 18:49:58.57ID:PEdDcCzs0
>>671
2015時点じゃ ウォッチかイミディエイトでした。
2017ならブレーク貼れる。
http://blog.okazuki.jp/entry/2017/07/23/165809

673デフォルトの名無しさん (ワッチョイ 86a2-2x4P)2017/08/24(木) 21:46:31.96ID:mLP6maQg0
メモリに常駐しているプロセスって簡単に取得できますか?

674デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/24(木) 22:02:11.02ID:SLJfaWYPa
DOSの時代じゃないので常駐って概念に意味があるとは思えない気が
今でも慣用句的に常駐とか言うけどね

675デフォルトの名無しさん (ワッチョイ 8661-2x4P)2017/08/24(木) 22:28:03.16ID:fiQElVMv0
>>673
こういう話か?
実行されているすべてのプロセスを取得する
http://dobon.net/vb/dotnet/process/getprocesses.html
関連は一つ上のメニュー

676デフォルトの名無しさん (ワッチョイ a511-Q+Jn)2017/08/24(木) 23:46:42.82ID:gc1mfL3U0
もしかしたらすれ違いかも知れませんが気にせず質問させていただきます

先日パソコンが壊れました
電源をつけると5秒後に再起動を繰り返してしまいます
原因がわからないのですが
どなたか対応方法などご存知の方いたら教えてください

677デフォルトの名無しさん (ワンミングク MM5a-fQI7)2017/08/24(木) 23:50:07.54ID:PtEvZ+0qM
買い換えると良いよ

678デフォルトの名無しさん (ワッチョイ 954f-yhlS)2017/08/25(金) 10:56:32.35ID:KkUPiSlg0
>>676
馬鹿は死ね

679デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/25(金) 12:00:23.99ID:tShs1oZ90
>>676
OSは? 機種は古いの? 型番とかわかる?
5秒で再起動する直前の画面はどうなってる?

680(ワッチョイ 564c-s9Ze)2017/08/25(金) 12:02:47.95ID:TfQrtDcX0
こりゃあ面白いわ!!
https://blogs.yahoo.co.jp/antseq01/15073181.html

681デフォルトの名無しさん (ワッチョイ a511-7WPt)2017/08/25(金) 15:42:19.12ID:pvZFeD5Y0
このスレはLINQ大嫌いおじさんがいるからしゃーない
もう新しいこと覚えられないんだよ

682デフォルトの名無しさん (アウアウオー Sa72-w74m)2017/08/25(金) 18:18:09.76ID:WezsaSE3a
初心者ってんだからこのスレで扱うこともないかな?

683デフォルトの名無しさん (アウアウオー Sa72-w74m)2017/08/25(金) 18:20:09.66ID:WezsaSE3a
LINQ友の会ってスレあるじゃん

684デフォルトの名無しさん (ワンミングク MM5a-h7yY)2017/08/25(金) 18:26:35.82ID:7dyqz+BhM
Linqが新しいってタイムスリップでもしたのか
とっくに枯れてるだろ

685デフォルトの名無しさん (スッップ Sdea-L3sM)2017/08/25(金) 20:28:11.24ID:CEzIFhYxd
>>684
そこは立ち位置的に枯れてるって云えよw

686デフォルトの名無しさん (ワッチョイ 294d-vgeI)2017/08/25(金) 20:31:38.77ID:KodDhcxm0
普及するわけがないと誰かが言ってたがその通りになった。
ネラーはなかなか先見の目がある。

687デフォルトの名無しさん (ワッチョイ a511-7WPt)2017/08/25(金) 23:09:26.41ID:pvZFeD5Y0
LINQ普及してないってどこの世界の話?
よっぽどレベル低い職場なのかな

688デフォルトの名無しさん (アウアウオー Sa72-w74m)2017/08/25(金) 23:27:50.33ID:owge4R3Ba
>>687
おk、LINQは超流行ってる
でも初心者向けじゃないから別スレでやってな

689デフォルトの名無しさん (ワッチョイ adc0-2x4P)2017/08/25(金) 23:33:49.01ID:xduHYZQR0
お仕事でC#使っている人の何割がC#4.0以降の表記使っているか気になるわ

690デフォルトの名無しさん (ワッチョイ caea-Jukv)2017/08/25(金) 23:59:37.12ID:58ENjuei0
>>688
むしろ初心者向けじゃね?
パフォーマンス気にしだすと、StackOverflowの中の人みたく、全ての.csファイルからusing System.Linqを消し去ったりするw

691デフォルトの名無しさん (ワッチョイ 396c-2x4P)2017/08/26(土) 00:27:43.45ID:8TG2nidm0
http://libro.tuyano.com/index3?id=1247003
このページにある
MyObject obj = new MyObject();
obj.name = "つやの";
obj.age = 123;
obj.printData();
MyObjectクラスを使うこの部分はなんといいますか?

また、obj を変えて複数の上記のような構成を作るとそれに伴いちゃんと表示は増えますが、
objに当たる部分を必要に応じて動的に増やすということは可能のなのでしょうか?
インスタンスを動的に増やす で検索しても見当違いなものがヒットしますので、自分の中で言葉が間違ってるとは思いますが

よろしくお願いします

692デフォルトの名無しさん (ワッチョイ a511-7WPt)2017/08/26(土) 00:28:34.42ID:c9f1oCv90
よくパフォーマンス云々言う奴が居るけど
C#使う用途でLINQ程度のオーバーヘッドが気になるのってどんな場合だよ

書きやすさ捨てても速度ほしいならC++でも使ったほうがいいんじゃないの

693デフォルトの名無しさん (ブーイモ MM2e-Fy2N)2017/08/26(土) 00:38:20.18ID:2smXR1J8M
>>691
そのレベルならまずは入門書を一通り読もう
時間の無駄だ

694デフォルトの名無しさん (ワッチョイ 294d-vgeI)2017/08/26(土) 01:16:27.80ID:lejZryYl0
そのレベルの回答ならまずは入門書を一通り読もう
時間の無駄だ

695デフォルトの名無しさん (ワッチョイ caea-Jukv)2017/08/26(土) 05:00:00.26ID:E0KllEFJ0
>>692
StackOverflowの例が出てるやないか

696デフォルトの名無しさん (アウアウカー Sa85-bLkc)2017/08/26(土) 08:01:09.16ID:kTTj1e9la
でも実際のところ遅いよなあ

697デフォルトの名無しさん (ワッチョイ 0966-2x4P)2017/08/26(土) 08:49:05.86ID:JBmiypd/0
.netnativeは早いぞ
アレがFormsとかWPFに降りてくることはなさそうだが
UWPで作れる範囲は移行するべきだと思うわ

698デフォルトの名無しさん (ワッチョイ a511-7WPt)2017/08/26(土) 10:09:45.73ID:c9f1oCv90
>>695
ググっても出てこなかったんだけどソースある?

699デフォルトの名無しさん (ワッチョイ 294d-vgeI)2017/08/26(土) 11:54:04.74ID:lejZryYl0
LINQスレがあったぞ。そっちで聞いてはどうか。
10年で1スレ消費できないぐらい過疎ってるが。

700デフォルトの名無しさん (ワッチョイ a511-7WPt)2017/08/27(日) 06:31:24.46ID:7Xxy3tOq0
いやStackOverFlowの開発者がLINQ全消ししたって情報出した本人がすぐ上にいるのに
なんでそっちで聞かなきゃいけないの

701デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 07:45:43.39ID:+QB1TWiX0
大規模のプログラムを解読する場合にはどういう方法でアプローチしますか?

702デフォルトの名無しさん (ワッチョイ 1d4b-8oVV)2017/08/27(日) 07:54:29.85ID:zeyYP0xT0
>>697
>.netnativeは早いぞ
>アレがFormsとかWPFに降りてくることはなさそうだが
なぜ降りて来ないんだろうなあ
普及させれば良いのに

703デフォルトの名無しさん (ワッチョイ 194b-vgeI)2017/08/27(日) 08:13:43.76ID:pEA0SSCb0
WinFormsとWPFはMSに捨てられたから仕方ないね

704デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 08:45:58.12ID:+QB1TWiX0
Winform とWpfを捨てたら何がのこるん?

705デフォルトの名無しさん (ワッチョイ 416f-cEZM)2017/08/27(日) 09:40:24.19ID:s4SYRXbe0
ゴミとちょまど神

706デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 10:27:41.65ID:+QB1TWiX0
WIN32だな

707デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 10:29:06.43ID:+QB1TWiX0
>大規模のプログラムを解読する場合にはどういう方法でアプローチしますか?

これだけど、本質的を手短に説明できるちょっとレベルの高いひといる? 

708デフォルトの名無しさん (ワッチョイ ca91-vgeI)2017/08/27(日) 10:29:16.65ID:1dVSy16q0
そこでざまりんですよ

709デフォルトの名無しさん (ワンミングク MM5a-fQI7)2017/08/27(日) 10:35:48.21ID:Ss/d45M6M
>>701
リファクタリング
コミットはしなくていいぞ

710デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 10:38:53.50ID:+QB1TWiX0
>708
バインドって意味不明なんだが、
TEXT = データ
って書くのと
TEXT ={ バインド データコンテキスト}
って書くのでどんなメリットがあるの? というか1000万個のデータある時に1000万個にバインド
できんでしょ。バインドできるのはその中の一個だから、データを選択しないといけないよな。
でボタンを押されたら、データを選択して、データコンテキストにほりこむんだろ。代り映えがないような
きがする。

711デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 10:40:27.67ID:+QB1TWiX0
>>701
そう、その言葉をまっていました。そのリファクタリングを掻い摘んで説明してください。

712デフォルトの名無しさん (ワッチョイ 294d-vgeI)2017/08/27(日) 10:43:38.89ID:Pcpci17F0
ユーザはWinFormを捨てないから安心して。

713デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 10:45:36.83ID:+QB1TWiX0
>711
自己解決した。

714デフォルトの名無しさん (ワッチョイ ad6e-Fy2N)2017/08/27(日) 10:46:17.35ID:J8/CoBlN0
>>710
実際、大したメリットはない
最近の流れとしては、Web分野でも一時期バインドが流行っていたけど結局はユーザー操作時の代入に回帰しつつある
所詮は「手作業で代入すんのめんどくせえ」ってだけの問題であって、バインディングはそれだけのために過剰な複雑さを持ち込みすぎている

715デフォルトの名無しさん (ワッチョイ fde5-/mpg)2017/08/27(日) 10:47:48.02ID:42wr1dDO0
>>701
まず解読しなくていいように段取りだ

716デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 10:48:36.94ID:+QB1TWiX0
リファクタリングで
★継承を委譲に置き換える
 継承では基底クラスのすべてのメンバを、サブクラスに許さなければならない。
 基底クラスの一部だけの機能を利用する場合は、継承の代わりに委譲を使う。

これはどういう意味?

717デフォルトの名無しさん (ワッチョイ fde5-/mpg)2017/08/27(日) 10:49:09.92ID:42wr1dDO0
>>710
セキュリティチェックが簡単だからでしょ
代替方法あるなら拘る必要ない

718デフォルトの名無しさん (ワッチョイ 8661-2x4P)2017/08/27(日) 10:59:37.52ID:hG554Uge0
>>716
それはプログラムを読むための手法でなく最適化するための段取りってのはわかっている?
あとはオブジェクト指向とかのキーワードでググってみるほうが速い

719デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 11:00:37.70ID:+QB1TWiX0
>>714
デザイン(View)はアーティストの俺が書いて、「土方ロジックは知らん。お前等に任した」っていう時にはいいかもしれない。
しかしその場合にもボタンと同期してデータを切り替えないといけないよね。その仕組みってどうなってるの?
ボリュームを回すから、データはそれに合わせてかえてよねっていうようなこと。

720デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 11:01:25.93ID:+QB1TWiX0
>>718
VB6をC#に変更するんだが、VBソフトを解読する場合にはどこから手をつける?
画面数が70程度、クラスが10個、標準モジュールが30個位ある。
とりあえずクロスリファレンスを作ってみようとおもってるんだが、何か方法論とかないかなーとおもっている。
そこでリファクタリングをするというのは一つの手ではある。

721デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 11:04:21.15ID:+QB1TWiX0
VB6ってのは知らないかもしれないが、VBAと同じで標準モジュールというのは
グローバル変数で、これが大量にあるので難儀している。

722デフォルトの名無しさん (ブーイモ MMf1-Fy2N)2017/08/27(日) 11:05:21.87ID:GFDdydysM
>>716
お前の会社の経営が厳しくなり、無能なお前をリストラしてお前の業務を外部委託することになったとする
そのとき、外部の人間を社内に常駐させるか?、それとも社外に丸投げするか? ということ
社内とのやりとりが多い業務であれば前者の方がスムーズだろうけど、
そうでもないなら後者の方が安上がりだし委託先を後で変えることも容易で好ましいだろ

723デフォルトの名無しさん (ワッチョイ 8661-2x4P)2017/08/27(日) 11:05:33.18ID:hG554Uge0
>>720
VBなんか知らんし
仕様書があれば仕様書見て作り直し必要な部分だけ元のソース参照する
仕様書が無いのなら動作確認して自分で仕様書書くところから

724(スプッッ Sdca-Vrzw)2017/08/27(日) 11:21:08.14ID:0sFxQlMgd
>>719
デザインセンター持ってる会社なら、ホントに分業出来るから楽だと思うよ。
ボタンと同期して中身変える、ってのは、ダミーデータ返す関数と、メソッドのスタブ最初に用意して、それを渡す。なかったら「くれ」って言ってくるし。
どちらも無意味な不幸の無いプロジェクトになる。

725デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 11:21:43.63ID:+QB1TWiX0
>>722
分かり安い説明だが、愛がない。そこもかなり重要だと思う。ところでWPFって
やったことないのだが、やってみたい。
最初はVB6のフォームのコントロールのリストと位置を拾いだせば画面は自動的に変換できそうなので
そうしようかと思ったのだが、XMALでやるってのは難しいだろうか?

726デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 11:25:19.91ID:+QB1TWiX0
>>724
そうだね。アーティストの俺には土方仕事を丸投げできるからかなり有利かも。

727デフォルトの名無しさん (アウアウイー Sa2d-oKtA)2017/08/27(日) 11:47:31.40ID:fbqxfljfa
>>720
解読するって言うのはまず間違いじゃないかな

顧客から要望聞いてSEが再設計して仕様書作るのが正しい

728デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 11:49:16.29ID:+QB1TWiX0
>>仕様書が無いのなら動作確認して自分で仕様書書くところから

ソースを解読してその仕様書を書く手順を考えている。うまくコンパイルして動かすこともできたん
でソースを解読しつつ整理して、最終的に変換をする。
具体的には
整理
1.クロスリファレンスをだしてグローバル変数を整理
2.画面がやたら多いので手書きで書き直すのはとっても大変だ。
しかし殆どはパラメータの設定のような単純な画面なので、画面の書き換えはプログラムで変換できそうだ。
しかし内部のイベントロジックをどうするかだな。画面はC#でもVBでも好きなように変換できるが、ロジック
はC#に変更するのは正気の沙汰ではないな。
やはりVB.netに置き換えるべき。となるとやはりVB.NET Winform以外の選択肢はないのか?

729デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 11:56:58.26ID:+QB1TWiX0
>顧客から要望聞いてSEが再設計して仕様書作るのが正しい

もともと正しくないところから出発しているので、正しい方法は取れない。唯一できるのは
自由に作れるということだけ。しかも動きさえすればいいというレベルの客。ただし.netで
作るというのが条件でソースも提出することになっている。C#でもVBでもWPFでも問題ない。
 大半をDLLにして、上っ面だけNETでもいい。

730デフォルトの名無しさん (アウアウイー Sa2d-oKtA)2017/08/27(日) 11:57:14.71ID:fbqxfljfa
ID抽出してみたけど

プロに頼んだほうがいいよ

731デフォルトの名無しさん (ワッチョイ adc0-2x4P)2017/08/27(日) 12:01:04.00ID:FvXw0+6i0
ソース提出って下手な仕様書出すより厳しいと思うんだが

732デフォルトの名無しさん (アウアウイー Sa2d-oKtA)2017/08/27(日) 12:03:03.81ID:fbqxfljfa
>>729
レスを読んで思ったけど本人は真面目なのかもしれないが
やってることは素人の趣味の延長レベル

それで給料がもらえるって非常にありがたいことだね

733デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 12:16:29.66ID:+QB1TWiX0
平和だからね。

734デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 12:18:52.83ID:+QB1TWiX0
>プロに頼んだほうがいいよ

頼んだのだけどやる人がいない。

735デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/27(日) 12:21:18.06ID:8n2Hj3z6a
>>720
VS2008まではVB6⇒VB2008へのコンバーターがついてたので、
VS2008かVB2008 Expressをなんとか手に入れて、とりあえずVB2008に変換して
みたらどうかなと。

まあ変換精度は高くないので手直ししないとまず正常に動かないし、
返還後のコードはMicrosoft.VisualBasic名前空間とかVBランタイム関数とか
使いまくりなので、それをさらにC#で書き直すのはかなり大変だと思うけど

736デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 12:31:29.70ID:+QB1TWiX0
>>720
それは調べてやってみたが、1時間かかっても変換できなかったよ。
一時間たってキャンセルしたら1kのLogファイルが残ってた。
多分簡単なものなら変換できるだろうと淡い期待はもっている。リファクタリングして疎結合にすれば
3つに分解できそう。
 IOコントロール
 DBアクセス
 画面
IOが厄介だなーとは思う。多分この部分がよくわからないのでプロは逃げ出す。

737デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 12:35:37.88ID:+QB1TWiX0
>使いまくりなので、それをさらにC#で書き直すのはかなり大変だと思うけど

混在してつかえるし、VBのクラスはそのまま呼び出せるので不都合のある部分だけラッパーすればいいだけでは?
それならVBで書けよって話になるかもしれないが、追加部分だけでもC#にしたい。

738デフォルトの名無しさん (ワンミングク MM5a-fQI7)2017/08/27(日) 13:14:51.06ID:Ss/d45M6M
VB6置き換えは元が酷いスパゲティだしCOMコンポーネントの代替ライブラリが見つかんないと詰むしロクなことにならない
要件定義からリビルドしたほうがマシだぜ

739デフォルトの名無しさん (ワッチョイ 8696-M74o)2017/08/27(日) 13:15:02.42ID:zg/5OaZO0
htmlの文章をC#で書くメリットは有りますか?
無ければテンプレ落として来て挿入するだけなんですけど。

740デフォルトの名無しさん (ワッチョイ 294d-vgeI)2017/08/27(日) 13:16:46.63ID:Pcpci17F0
素人はすぐ新しく作り直せとか言うんだよな。

741デフォルトの名無しさん (ワンミングク MM5a-fQI7)2017/08/27(日) 13:29:37.85ID:Ss/d45M6M
>>740
一般論的に言ってリプレースは最後の手段だ
少なくとも数ヶ月はリファクタリング、リアーキティングなど試せることは試した上で
それでも手に負えないと判断してからリプレースに着手する
いきなりリプレースはリスクがデカすぎる
しかしながら経験上VB6の移植は結局リプレースになることが多いんだわ

742デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 13:33:01.79ID:+QB1TWiX0
>>738
確かにそういうばあいもある。モジュールが多いのが問題だけれどもクラスを使っているから、そんなに下手なプログラムではないね。
VB6でクラスを使っているとまあまともだね。

743デフォルトの名無しさん (ワンミングク MM5a-fQI7)2017/08/27(日) 13:48:07.30ID:Ss/d45M6M
>>742
UI class : other class : static class = 7 : 1 : 3

かなりバランス悪いと思うぞ
綺麗なソースになってるとは期待できない

744(スプッッ Sdca-Vrzw)2017/08/27(日) 14:21:50.71ID:0sFxQlMgd
>>726
工業デザインの人に、アーティストと言うと鉄拳飛んできたイメージだが、今のデザイナーはアーティストはなのかな。
俺もデザイン系の単位も資格も持ってるけど、アートと思った事は無いなぁ。

745デフォルトの名無しさん (フリッテル MMce-2y0c)2017/08/27(日) 16:04:23.27ID:aV3uBNlQM

746デフォルトの名無しさん (ワッチョイ 0a11-xpGE)2017/08/27(日) 16:30:03.45ID:QZuIwK0r0
VB6のコードを解読しないといけないアーティストw

システムの内側からじゃなく外側から整理して
ユースケース単位や機能単位でコードリーディングしていくのが効率的

747デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/27(日) 16:47:16.97ID:UU3MXRkga
プログラム本体やシステム全体の仕様が分かってるならゼロから書き直した方が
結局早いと思うけどね。

そもそも今更C#でに移行するのは、将来手を入れる可能性があるからじゃないの?
だとしたら長期的なメリットデメリットを考えてもそうした方がいいよね。

「動いてるプログラムを触ってはいけない」ってのは個人的にはダメな人の台詞だと思うね。
それ、自分のコードを理解する能力が不十分だって語るに落ちてないか?

748デフォルトの名無しさん (ワッチョイ 564c-8a/Z)2017/08/27(日) 17:04:06.72ID:+4gR/MAE0
COMとドトネトの相性が良くないのは意外だったなあ

749デフォルトの名無しさん (アウアウオー Sa72-w74m)2017/08/27(日) 17:30:52.38ID:+kJVVvm3a
>>747
理論上触らなければバグらない以上
用も無いのに触る一手はないな

750デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/27(日) 17:33:19.12ID:UU3MXRkga
>>749
だから、「用がある」から今更C#で書き直すんでしょw
間違った前提から間違った結論を導いてもしょうがないよww

751デフォルトの名無しさん (ワンミングク MM5a-fQI7)2017/08/27(日) 17:35:20.33ID:QpZ6CaB1M
既存のクラスを触りたくないといって
間違った場所にコードを追加していったやつがおってな
気がつくと見事なスパゲティの塊が出来上がっていたんだとさ

752デフォルトの名無しさん (ワッチョイ 0a11-xpGE)2017/08/27(日) 18:26:10.44ID:QZuIwK0r0
>>747
詳細仕様が分かってないからコードを読もうとしてるんじゃ?

753デフォルトの名無しさん (アウアウオー Sa72-w74m)2017/08/27(日) 18:37:29.03ID:q8gbijSsa
>>750
それは現状が正解じゃない状態になったのかい?

754デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 19:20:19.44ID:+QB1TWiX0
技術的アプローチに対してアーティスト的アプローチもある。そもそも専門家が遣らないという
のは技術的に興味がない。もしくは打算的技術者なら経済的に見てもメリットがないということだ。
つまり儲からない。そういう結論がでている。

 しかしアーティストの見解は違う。アーティストにとっては技術とか打算とかの優先順位は
かなり低い。すべての仕事はどう料理するかがアーティストのアーティストたる能力の発揮し
どころだから、技術屋から見るとかなりリスキーであっても敢てやってみる。

755デフォルトの名無しさん (ワッチョイ dd6f-M74o)2017/08/27(日) 19:24:45.57ID:+QB1TWiX0
>>752
表面的な仕様というかパラメータの設定とか動作などの取り扱い方法は客先で大体はわかる。
しかしメカの細かい動作なんかの部分は一切分からない。動作検証は客先でやってくれる。
結果が正しいかどうかは客先でわかる。

756デフォルトの名無しさん (ワッチョイ 8ac4-iENb)2017/08/27(日) 19:44:16.32ID:DBQBoW3m0
22回だと

757デフォルトの名無しさん (ワッチョイ 8661-2x4P)2017/08/27(日) 19:46:36.23ID:hG554Uge0
もうNGでいいよ。作り話だろうから

758デフォルトの名無しさん (ワッチョイ 0a11-xpGE)2017/08/27(日) 20:58:41.04ID:QZuIwK0r0
>>754
あ~~、敢えてね・・・(察し)

759デフォルトの名無しさん (ワキゲー MMf2-kkbx)2017/08/27(日) 21:35:03.08ID:htfhfzKBM
虚言は多弁にて構築する

760デフォルトの名無しさん (アウーイモ MM91-1Eq8)2017/08/28(月) 21:24:49.09ID:jkZMoX4aM
>>720
昔、なんかのツール使ってVB6を.NETにしたよ。
急には上がらないから2005にして2008にして2010だったかな。
段階的に変えていく。
それぞれの.NETstudio使う。
前のバージョンを上げられるよ。
2005から2010とかは確かできない。

で、最後にC♯にすればよくね?

761デフォルトの名無しさん (ワッチョイ fde5-/mpg)2017/08/28(月) 21:34:07.26ID:o3aBTh5N0
VB6から2010までは一気にいけたはず
そのあと2013までいったら2017まで共通

762デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/28(月) 23:16:58.67ID:LI+9ess2a
上にすでに書いたけど、VB6のコンバーター(アップグレードウィザードとか言ったと思ったけど)
がついてたのはVS2008までだよw

763デフォルトの名無しさん (ワッチョイ fde5-/mpg)2017/08/29(火) 00:32:19.56ID:TMhzTuGH0
マジか
VB6を2010で開いた記憶があったがボケちゃったな
すまんこ

764デフォルトの名無しさん (ワッチョイ 416f-cEZM)2017/08/29(火) 00:56:21.39ID:BmkqqErg0
>>763
発言には責任を持って手で変換してね はぁと

765デフォルトの名無しさん (ワンミングク MM5a-fQI7)2017/08/29(火) 07:36:26.75ID:X4Q/TPlHM
コンバーターってロクな結果にならないアレか
手で移植したほうがマシって有名なやつ

766デフォルトの名無しさん (ワッチョイ 86a2-2x4P)2017/08/29(火) 07:50:29.80ID:se0bVMb80
前VB6を.NETに移行する案件あったなスルーしてよかった新人突っ込んだらしいし
配列要素の1始まりとか鬼門過ぎるVB6触ったこと無いが

767デフォルトの名無しさん (ワッチョイ 1a91-vgeI)2017/08/29(火) 08:00:33.67ID:4AYdjmhP0
>>766
だめな会社だな
そういう案件にこそ玄人を投入すべき
(玄人=知らない言語でもコードが読める能力を持つ者)

768デフォルトの名無しさん (ブーイモ MM2e-Fy2N)2017/08/29(火) 08:13:07.45ID:KBcajP1UM
VB.NETの配列はX(N)で宣言するとX(0)~X(N)まで確保される仕様だから、
VB6からの移植の場合はX(0)を無視すればインデックスはだいたいそのままで動くぞ
汚いといえば汚いけどこの仕様を決めた奴は有能だと思う

769デフォルトの名無しさん (ワッチョイ cd03-2Mp8)2017/08/29(火) 14:29:00.01ID:z6aeY2gd0
逆にVBを1始まりにした奴はとんでもない無能だな

770デフォルトの名無しさん (アウアウカー Sa85-yhlS)2017/08/29(火) 14:50:21.63ID:qDW+6cr0a
VB以前のBASICからの伝統なので、、、

771デフォルトの名無しさん (アウアウカー Sa85-yhlS)2017/08/29(火) 14:52:25.47ID:qDW+6cr0a
いや、その前のCOBOL,FORTRANからか

772デフォルトの名無しさん (ワッチョイ ca66-2x4P)2017/08/29(火) 15:06:42.27ID:r/k5/IVc0
MS-Basic書いたのはビル・ゲイツだな

773デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/29(火) 15:41:44.42ID:/sqn3fx+a
BASICのBの意味を考えれば、その方がとっつきやすいという判断でしょう。
プログラマの視点で考えれば、0オリジンの方がきれいに実装できるに決まってるし

774デフォルトの名無しさん (JP 0H9d-2x4P)2017/08/29(火) 15:53:08.07ID:XtumNqBwH
VB6でもデフォルトはOption Base 0だろ?

775デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/29(火) 16:14:24.95ID:/sqn3fx+a

776デフォルトの名無しさん (アウアウイー Sa2d-oKtA)2017/08/29(火) 17:59:14.69ID:dKAQo2Vla
配列が0スタートのせいでバグが量産されてるという気もするが
それは個人の考え方次第

配列1個目が0番
配列2個目が1番

配列N個目がN-1番

777デフォルトの名無しさん (ドコグロ MM45-+ULf)2017/08/29(火) 20:03:57.06ID:zDssXbBFM
気になるなら下限も指定すればいいのに...

778デフォルトの名無しさん (アウアウカー Sa85-PSHs)2017/08/29(火) 20:53:58.30ID:Vnq3Ax6Ua
配列の要素数があれ?ってなる

779デフォルトの名無しさん (ワッチョイ caea-dMKE)2017/08/29(火) 21:20:52.33ID:BqQa7G9t0
>>768
ソースが出てこないが.Net化の際にゼロで統一するようにしたら
ベータ版の段階で世界中からクレームのフィードバックが沢山あったので
その折衷仕様になったはず。

780デフォルトの名無しさん (ワッチョイ caea-dMKE)2017/08/29(火) 21:23:35.54ID:BqQa7G9t0
ゼロで統一じゃないや。C系に揃えるってことでした。
ExcelのCellオブジェクトと関連させる場合は
1スタートto要素数=最終行or列で合う

781デフォルトの名無しさん (ワッチョイ ca66-2x4P)2017/08/29(火) 21:34:26.94ID:r/k5/IVc0
Cの基本はポインタで、配列ってのはポインタのシンタックスシュガーだからね
添字は*(p+x)のxだから0始まり

782デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/29(火) 21:38:30.14ID:K1eHFhhta
折衷っていうか文化の違いでしょ
C系と違ってVBの配列作成時に指定する値は、添え字の最大値ってことになってたはず

783デフォルトの名無しさん (ワッチョイ fe6d-EUPY)2017/08/29(火) 23:45:49.74ID:Z8GIMLiK0
抽象クラスのoverride で、型を変えるような事はできるでしょうか?

以下のようなコードが書けるかなと思ったのですが
戻り値はあくまでList<object>でないとダメみたいなので
書く方法があればお教えください

public class hoge { }
public class fuga { }

public abstract class Base
{
public abstract List<object> GetData();
}

public class SubOne : Base
{
public override List<hoge> GetData()
{
return null;
}
}

public class SubTwo : Base
{
public override List<fuga> GetData()
{
return null;
}
}

784デフォルトの名無しさん (ワッチョイ 0a11-xpGE)2017/08/30(水) 00:17:18.47ID:RiHZq49u0
それはシグニチャが違うから別メソッドじゃ?
overrideはずしてみ

785デフォルトの名無しさん (アウアウエー Sab2-A9BZ)2017/08/30(水) 00:21:31.70ID:M/4qyBdLa
これじゃいかんの?
public abstract class Base<T>
{
public abstract List<T> GetData();
}

786デフォルトの名無しさん (ワッチョイ adc0-2x4P)2017/08/30(水) 00:30:38.41ID:aQB+rR710
同じGetDataメソッドで別のデータ取得させたいのはなんか理由あるのかね
hogeとfugaが抽象化できるならともかく

787デフォルトの名無しさん (アウアウイー Sa2d-oKtA)2017/08/30(水) 01:23:10.88ID:ZNhSKe/9a
typescriptやjavascriptから流れてきたんだろうな
と勝手に妄想

788デフォルトの名無しさん (アウアウイー Sa2d-oKtA)2017/08/30(水) 01:26:58.62ID:ZNhSKe/9a
>>784
戻り値の型だけ違うシグネチャは判定ができないから設定できない

789デフォルトの名無しさん (ワッチョイ a511-7WPt)2017/08/30(水) 01:31:51.49ID:RP2OopsU0
ジェネリック使え

790デフォルトの名無しさん (ワッチョイ 4aea-oHh7)2017/08/30(水) 01:43:21.54ID:DqOxxcW/0
関係ないけど戻り値はインタフェースで返してくれよな

791デフォルトの名無しさん (ワッチョイ 0a11-xpGE)2017/08/30(水) 02:22:24.13ID:RiHZq49u0
>>788
他言語で実現できてるのは戻り値型の共変性ってやつなんやね。
勉強になったわ。ありがと。

792デフォルトの名無しさん (ワッチョイ caea-Jukv)2017/08/30(水) 04:42:52.63ID:RyepnT5X0
>>785
これ

793デフォルトの名無しさん (アウアウイー Sa2d-oKtA)2017/08/30(水) 12:13:11.62ID:ZNhSKe/9a
本来は継承で解決すべき事柄じゃないものも何でも継承で
解決しようとする

794デフォルトの名無しさん (ワッチョイ cd03-2Mp8)2017/08/30(水) 13:29:51.66ID:flwVYOal0
一見>>785でよさそうに思えるが
よくよく考えると使い道が分からん
Base<hoge> と Base<piyo> は違う型になるので
それらを継承したクラス同士も違うクラスから派生しているっつーことで
統一的には扱えなくなる
差分プログラミングがしたいならそれでよいが
なら、Baseクラスのabstractの意味は何だ?

795デフォルトの名無しさん (バッミングク MM9f-O9jT)2017/08/31(木) 07:11:58.47ID:uXMS1+GuM
783ですが、抽象化したテーブルクラスを作って、テーブル単位で選択結果を返す具象クラスを作りたかったのですが、Dapperを使うのでメソッドの戻り値がList<T>となり戻り値の型が具象クラス毎に違っています

こういう例が無さそうということはアンチパターンやってるでしょうか

796デフォルトの名無しさん (アウアウオー Sadf-G83I)2017/08/31(木) 07:23:02.32ID:ukHSVGRna
目的を明確にしていらねーもん全部捨てろよ

797デフォルトの名無しさん (ワントンキン MM9f-+LVy)2017/08/31(木) 07:53:46.13ID:5L4gV5sHM
>>795
interface IDao<TEntity, TId> {
TEntity ReadOne(TId id);
IEnumerable<TEntity> ReadPage(int pageSize, int pageIndex);
void Create(TEntity e);
void Update(TEntity e);
void Delete(TEntity e);
}
class FooDao : IDao<Foo> { ... }

これじゃいかんのか?

798デフォルトの名無しさん (バットンキン MM67-O9jT)2017/08/31(木) 18:48:22.38ID:RNa0QExKM
>>797
テーブルのみを扱うので同様の属性という意味で抽象クラス使ったのですが、インターフェイスで選択したデータを返す機能として定義した方が良いでしょうか

抽象とインターフェイスの使い分けに今ひとつ自信がなくて

799デフォルトの名無しさん (ブーイモ MMff-9zQU)2017/08/31(木) 19:00:57.90ID:knvUk5zeM
>>798
使い分ける必要はない
is Aだのcan Aだの言ってたのは昔の話で、今時はどうしても実装を継承する必要がある場合以外は基本的にインターフェースを使う
もっというと、実装継承のために抽象クラスを使う場合はインターフェース継承とは本来区別して考えるべきで、
インターフェース←抽象クラス←具象クラス
という継承関係にするのが理想
抽象クラスはあくまで実装の共通化のためのツールに過ぎない

800デフォルトの名無しさん (アウアウイー Sac7-b8Mh)2017/08/31(木) 21:53:11.25ID:gYg3phKFa
Table<T>を作ってGetData<T>
それ以上の機能を使いたかったら適当なクラスを作ってTable<T>をコンポジション

801デフォルトの名無しさん (ワッチョイ 636e-9zQU)2017/08/31(木) 22:03:15.27ID:rtd0E2rY0
>>800
単体テストで差し替えできなくね

802デフォルトの名無しさん (アウアウオー Sadf-G83I)2017/08/31(木) 22:22:29.61ID:izluyX1Ma
>>799
何が良くてそんなことやってんの?
変更があったら変更すればいいじゃん

803デフォルトの名無しさん (ワッチョイ cfa2-X0kF)2017/09/01(金) 05:13:10.52ID:JBM8M4Dg0
MariaDBってデフォで接続できたりする?

804デフォルトの名無しさん (バットンキン MM67-O9jT)2017/09/01(金) 07:26:54.74ID:swl6M8kLM
>>799
それはDIってデザインパターンでしょうか

なんか教科書のインターフェイスと使い方が違うので理解出来なかったのですが

805デフォルトの名無しさん (ワッチョイ cfaa-gHR8)2017/09/01(金) 14:07:02.06ID:RTadbuNn0
インターフェースは、has-a、部品化。車とハンドル。
抽象クラスは、is-a、継承。車と消防車

継承は、クラスに親子関係がある。
非常に似ているもの同士

部品化は、全く異なるもの同士

DI は、XMLなどの設定ファイルから、クラスを自動的に作る、ジェネレーター

806デフォルトの名無しさん (ワッチョイ e303-3JEm)2017/09/01(金) 15:17:36.03ID:sKG/CNAU0
>インターフェースは、has-a、部品化。車とハンドル。
↑これマジ?
でも>>799では「can A」って書いてあるよ
大マジ?
そんな説、聞いたことないんだけど

807デフォルトの名無しさん (ワッチョイ e303-3JEm)2017/09/01(金) 15:18:46.48ID:sKG/CNAU0
てかそんな(脳の)状態でプログラム書けるものなの?
C#優秀すぎだろ

808デフォルトの名無しさん (ワッチョイ cfaa-gHR8)2017/09/01(金) 15:27:41.14ID:RTadbuNn0
スッキリわかる Java入門 第2版、2014

Javaの人は皆、この本で、オブジェクト指向を学ぶ。
というか、日本では、この本しか無い

だから皆、C#をやる前に、Javaから勉強する

オブジェクト指向の最初のクイズが、is-a, has-a の例題

809デフォルトの名無しさん (ワッチョイ 0311-u8bs)2017/09/01(金) 15:38:08.33ID:HIaJQCDW0
>>808
外国人みたい言葉遣いしてんな
いつの間にか2chもグローバル化してたのか
そして謎の熱いjavaのステマ付き

810デフォルトの名無しさん (ワッチョイ e303-3JEm)2017/09/01(金) 15:51:33.77ID:sKG/CNAU0
で、最初のクイズで間違ってたら、どうしようもなくね?
has-aはコンポジションであってインターフェースは関係ない

811デフォルトの名無しさん (ブーイモ MMff-9zQU)2017/09/01(金) 15:59:59.83ID:olFLJFhOM
この人あちこちのスレに突如出現しては的外れで一方的な持論とともに書籍を紹介する変な人だよね
書籍宣伝のボットなんじゃないかという気もするけど、もし人工知能だとしたらかなり優秀だと思う

812スッキリ厨 (ワッチョイ cfaa-gHR8)2017/09/01(金) 16:39:36.84ID:RTadbuNn0
「たのしいRuby」「みんなのPython」とか、
掌田津耶乃の「はじめてのJavaScript」では、
オブジェクト指向の説明は、数十ページ

一方「スッキリわかる Java入門」では、250ページ!
他を圧倒してる

漏れは、10言語・数十冊以上は読んでる

本を読む順番は、
1. スッキリわかる Java入門
2. たのしいRuby
3. みんなのPython

C# なんかは、後の方

813デフォルトの名無しさん (アウアウオー Sadf-G83I)2017/09/01(金) 16:42:51.82ID:Gpi3WshSa
>>812
文法解説ばっかりで作って覚える系の本が無いな
なんか具体的にアプリケーション作れる本があった方がいいんじゃないか?

814デフォルトの名無しさん (JP 0H47-X0kF)2017/09/01(金) 16:44:01.49ID:dv5tNHSMH
Javaが一番スッキリしてないと思うが

815デフォルトの名無しさん (ブーイモ MMff-Oa4x)2017/09/01(金) 16:46:00.19ID:JdxtetydM
>>812
>10言語・数十冊以上は読んでる
バカじゃねぇの?

816デフォルトの名無しさん (アウアウオー Sadf-G83I)2017/09/01(金) 16:59:37.83ID:G1MJZtxwa
java,ruby,pythonの入門書に共通してるのが作って覚える系の本があまりない
javaはandroidのアプリの本が数冊だが出ているがandroidなんだよね
エミュでしか動かせなかったりイマイチ

そういう意味で入門書にはc#をオススメしたい
これならwindowsアプリが具体的に作って動かせるので絶対に初心者にはこちらのがいい
csvやxlsファイルの処理やDB接続の処理が書いてあったりするのもGood

817デフォルトの名無しさん (ワントンキン MM9f-hCsL)2017/09/01(金) 18:15:16.28ID:e0+gOffZM
スッキリは詳しい説明をはぐらかして初心者を誤魔化そうって思惑が透けて見えんだよね

818デフォルトの名無しさん (ワキゲー MMdf-7W5h)2017/09/01(金) 18:35:46.75ID:UZeCG1ZbM
>>812
ちゃんとコテハン登録しとけよ
NG登録しとくから

819デフォルトの名無しさん (ワッチョイ ff11-BPzU)2017/09/01(金) 20:50:25.60ID:A4rxsWGh0
>>806
has-a capability

部品化とは違うけどね

820デフォルトの名無しさん (アウアウエー Sadf-nbtu)2017/09/01(金) 21:08:27.70ID:v3Wg48+ra
真面目に言ってるのかボケてるのか何なんだろうねw

821デフォルトの名無しさん (ワッチョイ 832d-6h2J)2017/09/01(金) 21:51:22.37ID:li9KR7ak0
UnityのためにC#もちょこちょこ勉強し始めたけど、Javaと大分似てるんだなこれ
本買おうと思ったけど、完全な新規向けのじゃなくて
言語仕様についてわりとがっつり書いてあるような本でお勧めってあります?

822デフォルトの名無しさん (ワッチョイ ff66-X0kF)2017/09/01(金) 21:58:15.49ID:bJwSdbz60
入門書に移譲って書いてなかったんだろうか?

823デフォルトの名無しさん (ワッチョイ e303-3JEm)2017/09/01(金) 21:59:42.54ID:sKG/CNAU0
求めているものとは違うかもだけど
だいぶん古いけど

連載  改訂版 C#入門
http://www.atmarkit.co.jp/ait/subtop/features/dotnet/csharp_abc2_index.html

はわりとがっつりC#の文法を網羅的に説明している
筆者の語りはうざいが・・・

824デフォルトの名無しさん (ワッチョイ e303-3JEm)2017/09/01(金) 22:03:23.25ID:sKG/CNAU0
Wikipediaでも

has-a
https://ja.wikipedia.org/wiki/Has-a
日本語では集約やコンポジション集約関係を意味する。

って書いてあるからね

825デフォルトの名無しさん (アウアウイー Sac7-b8Mh)2017/09/01(金) 22:08:01.94ID:XixvX44ca
クラスの機能はできるだけ簡素にを守っていると
is-aでいられるのは本当に基本的なクラスだけになる
普通にやってると絶対has-aの関係になる

継承を有効に使えるのはほんの一部

826デフォルトの名無しさん (アウアウオー Sadf-G83I)2017/09/01(金) 22:12:18.08ID:lXz+XipAa
>>823
c#最新?
で無いなら折角買ってもなぁ

827デフォルトの名無しさん (ワンミングク MM9f-+LVy)2017/09/01(金) 22:35:02.89ID:ocN7XlE1M
>>821
少し古いがCLR via C#
C#やってて読んでないとモグリと言われる一冊

828デフォルトの名無しさん (ワッチョイ 8f4c-KRPf)2017/09/02(土) 01:20:27.66ID:OFiHW9Qt0
javaは重い上にゴミ吐いて死ぬから嫌い

829デフォルトの名無しさん (ワッチョイ 334d-6h2J)2017/09/02(土) 01:30:22.70ID:bF0cAHIp0
>>822
委譲ってなんですか?

830デフォルトの名無しさん (ワッチョイ 63e6-2DHa)2017/09/02(土) 04:34:44.87ID:tnM/ItCw0
>>826
イディオムの本、よかったけどなぁ。

831デフォルトの名無しさん (ワッチョイ 0311-X0kF)2017/09/02(土) 09:49:42.44ID:TQXuPiZd0
約一年ぶりにプログラミングをしようと思いC#を選らびました
学生の頃にJavaやCは学習したため参考書の購入にあたって相談があります
今はこの三冊から購入を検討しています

http://www.sbcr.jp/products/4797347081.html
http://www.shoeisha.co.jp/book/detail/9784798122205
http://gihyo.jp/book/2017/978-4-7741-8758-7

最後の一冊の購入はほぼ決めているのですが、上の二冊のどちらかを読了した後読もうと考えています
Cのポインタ、Javaのオブジェクト等は理解しているつもりですので、今後辞書のように使えそうな独習C#に傾いています

上記以外でも適切な本やWebサイトがあれば教えていただきたいです。

832デフォルトの名無しさん (ドコグロ MM47-G83I)2017/09/02(土) 09:59:09.48ID:5q6bBvmPM
>>831
独習c#ってc#のバージョン的に最新出てんの?

833デフォルトの名無しさん (スッップ Sd1f-0gWf)2017/09/02(土) 10:18:37.96ID:u30btijYd
>>831
c#で何をしたいの?

834デフォルトの名無しさん (ワンミングク MM9f-+LVy)2017/09/02(土) 10:32:48.98ID:O1j4weutM
>>831
どれもハズレだな
CLR via C#
まずはこれを読もう

835デフォルトの名無しさん (ワッチョイ 0311-X0kF)2017/09/02(土) 10:47:06.25ID:TQXuPiZd0
>>832
出版日から見るに最新のバージョンには対応していないように見えます

>>833
ひとまずはコンソール上で動くプログラムを作ってみようと思ってます
後々はデスクトップアプリやUnityなどに手が出せるという理由でC#にしました

>>834
英語に疎いおかげで良書でも読めません・・

836デフォルトの名無しさん (ワッチョイ cf61-X0kF)2017/09/02(土) 10:50:46.46ID:oXM/ZCZp0
C#7.1なら本どころかMSDNのリファレンスじゃないと無理だろ
>>831
上に出ているじゃないか>>823
基本部分網羅してあってタダで見られるのだから本買う必要はない

837デフォルトの名無しさん (ワッチョイ 0311-X0kF)2017/09/02(土) 11:08:34.82ID:TQXuPiZd0
>>836
最新版を追うなら本では厳しいということですね
目次を流し見してみましたが確かに入門には十分すぎる内容でした
ここで勉強してから本の購入を検討してみようと思います

838デフォルトの名無しさん (ブーイモ MM67-9zQU)2017/09/02(土) 11:16:20.91ID:oDByz4eYM
今のC#ってgithubで言語仕様決めてるからな
もうプログラミング言語は本で覚える時代じゃない

839デフォルトの名無しさん (ワッチョイ 0311-X0kF)2017/09/02(土) 11:30:45.92ID:TQXuPiZd0
>>838
githubってそんなに活発なんですね
仕様が議論させるとは

840デフォルトの名無しさん (ワッチョイ 6312-8mjs)2017/09/02(土) 12:13:28.97ID:KSbwYPK00
>>835
"CLR via C#"は和訳本出てるよ。
タイトルは"プログラミング .NET Framework"。
最新のは第4版。

841デフォルトの名無しさん (ワッチョイ 0311-X0kF)2017/09/02(土) 12:50:09.28ID:TQXuPiZd0
>>840
和訳ありましたか、ありがとうございます
.NETとやらが必要になったタイミングで買おうと思います

842デフォルトの名無しさん (ワッチョイ a305-6h2J)2017/09/02(土) 13:47:13.38ID:GeyJWChH0
書籍もいいがM$燻製のChannel9とかもありじゃね
偶に裏話とかあるし
なんでC#(名称)になったとか(あっ知ってたらスルーね)

843デフォルトの名無しさん (スッップ Sd1f-0gWf)2017/09/02(土) 15:49:15.96ID:u30btijYd
>>841
.NETが必要じゃないc#の用途の方が珍しいと思われ

844デフォルトの名無しさん (ワッチョイ b369-G83I)2017/09/02(土) 19:11:00.76ID:h042tsov0
>>837
えーでも結局誰かが書いたコードを辞書的に調べたいからそういう本欲しいんでしょ?
最新に対応してないのは困るなぁ
タプルとか出てこないね
最近書籍の対応遅いよね

845デフォルトの名無しさん (ブーイモ MM1f-9zQU)2017/09/02(土) 19:55:06.66ID:9/Pt0bz9M
>>844
小さなバージョンアップを繰り返すようになったからね
C#開発のメインストリームがWeb系のバリバリな連中の方に移ってしまって、
書籍の主な購買層であったドカタ系が完全に取り残されて新機能に興味を示さなくなってしまったのも大きい

846デフォルトの名無しさん (ワッチョイ 63e6-2DHa)2017/09/02(土) 20:56:25.71ID:tnM/ItCw0
>>831
独習とイディオム読んだ独学だけど、一通りの事はできるようになったよ。
api呼んでみたり、データベース連携したりね、
独学やったあと、イディオム読めばええんちゃう?

847デフォルトの名無しさん (ワッチョイ f31d-X0kF)2017/09/02(土) 21:24:01.88ID:RAK1J/Hs0
ふらっと C#,C♯,C#(初心者用) Part130 [無断転載禁止]©2ch.net	YouTube動画>7本 ->画像>11枚
このプログラムを作りたいんだけど
仕様が

・ルートフォルダ
手入力でディレクトリ先のパスフォルダを削除する事ができる
・参照
押してフォルダを選択してパスをルートフォルダのテキストボックスに表示

start
・クリックするとカレンダーが出てきて、そこから日付を選択
End
・start~Endの期間の日付フォルダをまとめて削除できる

上記二つはできたけどstart~endが分からん…
新人プログラマーで入ってまだ4日目なんですが
20時間以上やってるけど全くできない…
みんなこんなの本当にできるの?
入ってすぐ社内ではもう既に無能扱いされてますヾ(。>?<。)ノ

848デフォルトの名無しさん (ワントンキン MM9f-ysE7)2017/09/02(土) 21:28:50.88ID:w/8WFstaM
>>847
そりゃそうだよ
無能に決まってるじゃん
そんな問題は10分でできるようになってから入社するのが世界の常識
日本は非常識だから素人でも雇っちゃうけどね

849デフォルトの名無しさん (ワッチョイ f31d-X0kF)2017/09/02(土) 21:35:22.95ID:RAK1J/Hs0
>>848
やっぱそーなんですねぇ(´・ω・`)
日曜日1日使って、出来なかったら
向いてないので退職してきます
有難うございます

850デフォルトの名無しさん (ワッチョイ cf61-X0kF)2017/09/02(土) 21:36:31.07ID:NoLppLbV0
>>847
日付でなく例えば連番で100から1000までならできるよな?
日付をDateTimeにして同じようにやればいい
比較演算子普通に使えるし
https://msdn.microsoft.com/ja-jp/library/system.datetime.compare(v=vs.110).aspx
でもいいし好きなほうで

851デフォルトの名無しさん (ワッチョイ ffe7-CD37)2017/09/02(土) 21:40:57.91ID:hCVoOyCG0
>>847
「C# Forms カレンダー」と「C# ファイル 削除」でググれ

852デフォルトの名無しさん (ワッチョイ 0311-X0kF)2017/09/02(土) 21:50:00.25ID:TQXuPiZd0
>>842
C#に決まった由来は気になるので時間あるときにみてみます

>>843
となると遅かれ早かれ必要になりそうですね
学ぶタイミングが難しい気もしますが

>>844
もともとその用途で購入を考えてましたが周りの方が言う通り
ネットの恩恵に預かろうかと思います

>>846
参考になる経験談ありがとうございます
WEBの勉強で不足を感じたら独習→イディオムのように勧めていこうかと思います

853デフォルトの名無しさん (ワッチョイ ffea-dgwg)2017/09/02(土) 22:08:20.57ID:E5+eBi390
>>847
勉強の基本なんだけど。
「分からない」時にはなにが分からないかを列挙して、それをさらに細かい要素に分解していく。
分解して考えれば・調べれば分かるようになったら、それをひとつひとつ解決していく。

847 を読んでもなにが分からないのかこちらに伝わらない。
つまり自分でなにが分からないのか分かってないんでしょ。
もっと整理してみたら?

ちなみに新人というか数年程度のヤツにそんなたいしたことは求めてない。
きちんと適切な質問を出来るようになればそれで OK だと思うよ。(ちょー難しい要求だが)
特に1年目なんて、なにを聞いても許される二度とない重要な期間なんだから、それを有効活用しない手はない。
最悪なのは自分で抱え込んでなにも進まない状態だよ。

854デフォルトの名無しさん (ワッチョイ ff11-BPzU)2017/09/02(土) 22:11:52.21ID:9PaYDv7F0
>>849
今できることよりも
継続して勉強できるかどうかのほうがずっと大事
1~2年継続して勉強すれば周りのやつ全員追い抜けるよ

ただし基礎的な能力が高いやつに限るが
(論理的思考力、自然言語能力、メタ認知能力等)

855デフォルトの名無しさん (ワッチョイ ff11-BPzU)2017/09/02(土) 22:18:11.21ID:9PaYDv7F0
>>849

>>853のアドバイスをよく聞くといい
自然言語能力・メタ認知能力をある程度身につけてる良い手本
勉強の仕方を勉強すること

856デフォルトの名無しさん (ブーイモ MM67-2DHa)2017/09/02(土) 22:26:21.45ID:NYkisN1vM
思考の言語化能力だな

857デフォルトの名無しさん (ワキゲー MMdf-7W5h)2017/09/02(土) 22:44:12.81ID:fbxz7fkLM
>>848
床上手な処女理論

858デフォルトの名無しさん (ワントンキン MM9f-ysE7)2017/09/02(土) 22:46:27.15ID:w/8WFstaM
無能な働き者に分類される人は自然言語に傾倒しがちだよね
ダラダラと長く曖昧でわかりにくい文章が数式なら僅かな記述で明確に表現できることもある
理解するのに時間がかかる難解な文章が図表なら瞬時に把握できることもある
もちろん自然言語を全て否定する訳ではないがバランス感覚は大事なんだな
自然言語はあくまでツールのひとつ

859デフォルトの名無しさん (ワッチョイ 0311-nZMq)2017/09/02(土) 22:52:16.04ID:o1ErZR2S0
最近、イディオム買って読んでるけど、この本読んでる方って多いんでしょうか?

独習C♯読んでから、独学で色々とプログラム作ってましたけど、
OOPの考え方とかまったく知らないでやってたもので、コードが散らかってます
staticおじさんになってたり、クラス分けても結局再利用しないような内容、関数コピペ
メインメソッドから分離してるだけで、メインメソッドに膨大な量書いてるのと大差無い感じです

再利用の仕方とか勉強する為にイディオム本どうかなって見ましたが、みなさんはどの様に覚えたんでしょうか?

860デフォルトの名無しさん (アウアウカー Sa07-EkES)2017/09/02(土) 22:53:55.94ID:DlxVwJvMa
>>849はまだ入って4日目だろ
こんなツール作らせてる教育環境がどうかしてるんじゃないの?

861デフォルトの名無しさん (ワッチョイ 63c0-X0kF)2017/09/02(土) 23:02:32.93ID:T/CezPj/0
>>860
せめてツール作らせるなら段階的にやらせるわな
クラスやメソッドの組み合わせ考えずに、とりあえず出来ましたで終わりそう

862デフォルトの名無しさん (ワッチョイ 636e-9zQU)2017/09/02(土) 23:03:27.85ID:PfNbROPa0
経験者として派遣で投入されたんじゃない?

863デフォルトの名無しさん (ワントンキン MM9f-ysE7)2017/09/02(土) 23:05:22.40ID:w/8WFstaM
>>859
再利用は出来れば良いね程度の気持ちで
クラス分けの目的は色々あるけど主に責務の分割な

例えばパソコンに暖房がついてたら嫌だろ
持ち運びもできず
夏場は邪魔になるだけ
暖房機能が壊れたら壊れてないパソコン部分もまとめて修理に出さないといけない
普通と勝手が違うから暖房の起動方法がわからない(セットのパソコンでコントロール?リモコン?)
パソコンを拡張したいけど暖房機能を壊してしまわないか不安になる
問題だらけだ

だからパソコンとエアコンに責務を分けようってわけ
これなら先に挙げたようなアホくさい問題が全部解決するだろ

864デフォルトの名無しさん (ワッチョイ 0311-nZMq)2017/09/02(土) 23:17:35.26ID:o1ErZR2S0
>>863
機能の分離でクラス分けすると今度は必要なクラス探すの大変になる感じですかね?
後はどこまで繋げてどこから分離するかも中々難しく感じます

例えばエアコンのコレクションを扱うとして、エアコンの寒暖房機能、温度検知機能、タイマー機能、設定
などエアコンの中を細かくするのが苦手なんですよね
自分がよく作るのは株価を扱うプログラムですが・・・

865デフォルトの名無しさん (ワッチョイ 0311-Yonq)2017/09/02(土) 23:22:10.23ID:Q8fEI/lK0
>>863
どうでもいいがテレビデオを思い出した

>>864
>中を細かくするのが苦手なんですよね
それはクラス設計つーより、要件定義の段階でないの
要件が明確なら、作るべきクラスも自然に決まって来るっしょ

866デフォルトの名無しさん (ワッチョイ 636e-9zQU)2017/09/02(土) 23:27:14.80ID:PfNbROPa0
>>864
オブジェクト指向設計の本質は、設計を人間の感覚に合わせることだよ
分けることを目的にしたらダメ
人間の直感は設計の指針として明確でわかりやすいし、
オブジェクトの単位が直感に合っている限りは破綻しない(というか、少々無理が出ても破綻したように感じない)

867デフォルトの名無しさん (ワッチョイ e303-3JEm)2017/09/03(日) 00:23:14.14ID:VHdSJmfv0
>例えばパソコンに暖房がついてたら嫌だろ

俺もそう思っていた時期があったけど
Skylake-XとVEGAの組み合わせだと真剣に暖房かもしれない
こういうのも出るし
https://www.apple.com/jp/imac-pro/

後、質問者に何か助言できるなら、オブジェクト指向はそんなに真剣にしなくてもよいよ
大事なのは手続き型プログラミングが
・データ構造
・制御構造
という二大要素で出来上がっていることに気づくこと
データ構造とアルゴリズムともいう
データ構造と制御構造をそれぞれ別々に思い描いて
その上で、データ構造と制御構造の両方を持つ「class」に分割するには
何処で切り分けたら一番「制御構造の見通しが良いか」を考える
大事なのは制御構造について意識することで、というのもオブジェクト指向でやると
データ構造の方は勝手にきれいになるから意識する必要はないのでね
C#のasync/awaitも制御構造をきれいに保つための仕組みだしね
最近の流行りというか、流れ、トレンド

868デフォルトの名無しさん (ワッチョイ e303-3JEm)2017/09/03(日) 00:28:40.22ID:VHdSJmfv0
なんであまりオブジェクト指向に肩入れしていると
この人はややこしい人だと思われる風潮
オブジェクト指向設計というのは
制御構造とデータ構造という二つのものを考えて
小分けにしてclassという一つのものにまとめる作業
と考えていいと思うよ
二つのものを綺麗に切って一つにして小分けにするのは
高度な作業かもしれないけど、十や百じゃなくて高々二つなんで
まぁ慣れです

869デフォルトの名無しさん (ワッチョイ b369-G83I)2017/09/03(日) 00:33:37.65ID:WT48SvB10
>>866
設計書を表現することだろ?
直感は人間同士でズレる
過去の自分とも

870デフォルトの名無しさん (ブーイモ MM67-9zQU)2017/09/03(日) 00:57:51.36ID:ksmau7/rM
実装レベルの設計とドメインのモデリングの話がごっちゃになってる気がする
ドメインモデルはまず人間の感覚から入って、そこから実装に落としていく段階で制御構造の観点を入れていく感じだね

871デフォルトの名無しさん (ワッチョイ 0311-nZMq)2017/09/03(日) 01:05:30.75ID:8T0wjaPz0
ありがとうございます
OOPの人間の感覚に合わせる意識が大事であって、分けることを目的にしないってのは大事だなって思います
難しいですが・・・

そういう意味だと、プログラムを少し修正したい、機能追加したいって思った時にバグが出にくい、追加しやすい状態にしたいですね
OOPに拘りは特に無く、あくまでソース管理や生産性の向上が目標です
曖昧な目標なので、実現するための手段で手こずってますが

自分の作るプログラムは目的上、同じデータから色んな値を作ったり検証させるので、使いまわせるところは汎用性がほしいんですよね

毎回別のプログラム作るたびにプロジェクト作って一部関数使いまわし、既存プロジェクトのクラス参照で使ってますが、
いつの間にかプロジェクト別で関数が別物になってしまったり、参照クラスの仕様変更で他のプロジェクトに影響出たり、設計が大変なので・・・

872デフォルトの名無しさん (ワッチョイ 23e5-ffya)2017/09/03(日) 09:32:19.26ID:wl+VODG10
>>847
いまいるおっさんたちは就職する時点でアマチュアプログラマ歴10年以上だよ
新卒でプログラミング経験なしだと無能扱いされて当然

まずは答えを見つけて写経しろ
ペンでもキーボードでもいいから丸暗記するまで書き写せ
話はそれからだ

ちなみにベテランだったら30秒ぐらいで作るぞ

873デフォルトの名無しさん (ワッチョイ 734b-6h2J)2017/09/03(日) 09:47:28.95ID:jdcIxspg0
コントロールを配置するだけで30秒はかかるんだけど

874デフォルトの名無しさん (ワッチョイ 0311-Yonq)2017/09/03(日) 09:50:38.93ID:evIIJ2cg0
高校から始めたから、新卒時点で10年以上では無かったな
大学から始める様な人もいるし、適当言い過ぎだろ

新卒未経験は流石に、採用されてもPGじゃなく別部署に回される気がするが

875デフォルトの名無しさん (ワントンキン MM9f-ysE7)2017/09/03(日) 10:30:41.79ID:QlhluFUqM
新人は研修する前提だから最初からそんなに高度なことはできなくてもいい

実験データのテキスト読み込んでデータベース化しましたとか
サークルのWebサイトをメンテナンスしてましたとか
論文書くために自力でLinux TeX環境整えましたとか
エロ画像収集ツール自作しましたとか
そういう学生らしい微笑ましいIT体験談を聞ければ充分
あとはやばそうな精神疾患とか障害がなければ合格だね

ただし
何にもしてこなかったけど興味と熱意はありますってやつと
エクセルでマクロ組んでましたをやたら強調する意識たかそうなやつ
プログラムは書かないけどITパスや基本情報をアピールするやつ
これは地雷なのでその場で不採用にチェックします

876デフォルトの名無しさん (アウアウカー Sa07-L9We)2017/09/03(日) 10:39:56.06ID:u3w+/QXpa
あと彼女いないやつは不採用だな
あれは人間として駄目すぎる

877デフォルトの名無しさん (ワッチョイ ffea-2cBM)2017/09/03(日) 10:43:23.41ID:bPltp/aL0
「ぼくにとってはコンパイラが彼女のような存在でした」

878デフォルトの名無しさん (ワッチョイ 43aa-u2+A)2017/09/03(日) 11:50:36.53ID:c9bJJ/ld0
おまえら全員マ板で語れ

879デフォルトの名無しさん (アウアウイー Sac7-X0kF)2017/09/03(日) 11:53:04.09ID:0sJDT6fHa
オブジェクト指向はプロジェクトが大きくなるほどベストの設計は存在しないんじゃないかと思う
ベストを目指しベターを繰り返していくけど結局正解はないと思い知らされる

880デフォルトの名無しさん (ワッチョイ 0311-Yonq)2017/09/03(日) 11:55:32.51ID:evIIJ2cg0
成果物に問題がなくて、そこそこ保守性が良ければ
無理にベストを目指す必要も無いからね

ベターをベストにする労力を掛けるより、
その労力で別の事をした方がいい

881デフォルトの名無しさん (ワントンキン MM9f-ysE7)2017/09/03(日) 12:06:31.17ID:QlhluFUqM
>>879
そういうものだよ
だからカイゼンを繰り返せるように設計する
最悪な設計は間違った設計ではなく変更が難しい設計
現代のOOPの常識だね

882デフォルトの名無しさん (ブーイモ MM67-9zQU)2017/09/03(日) 12:21:22.74ID:ksmau7/rM
変更のしやすさって開発スタイルに依存するからなあ
システムを作る側とそれを利用する側とで責任が分かれてる体制下においては、
綺麗なドメインモデルを継続的に改善し続けるなんて不可能
ひたすらコントローラでSQLを垂れ流す方が遥かに変更しやすい

883デフォルトの名無しさん (ワントンキン MM9f-ysE7)2017/09/03(日) 12:28:56.71ID:QlhluFUqM
長大で無数のSQLなんてメンテしたくないよ
リポジトリパターンにしておけば1時間もかからない仕様変更に何日もかかるようになる
テストの工数も考えると辟易するね

884デフォルトの名無しさん (スッップ Sd1f-0gWf)2017/09/03(日) 12:31:00.27ID:Tnu26RxGd
>>882
コントローラーでSQL垂れ流しって時点で、UnitTest考慮ゼロだな

885デフォルトの名無しさん (ブーイモ MM67-9zQU)2017/09/03(日) 13:53:29.42ID:ksmau7/rM
設計フェーズでちゃんと客と握ってれば仕様変更は客に相応のコストを請求すればいいでしょ
変更にかかる工数はトランザクションスクリプトなら高精度で簡単に見積もれる
変更しない前提ならテストなんか画面でポチポチしてExcelにスクショ貼り付けた方が早い
>>882で変更しやすいと言ったのは運用保守フェーズに入ってからの話ね

886デフォルトの名無しさん (ワントンキン MM9f-ysE7)2017/09/03(日) 14:03:02.81ID:QlhluFUqM
簡単に変更コスト見積れるトランザクションスクリプトのシステムなんて見たことないな
どこで何をやってるかすぐにはわからない
SQLが酷いと優しく言っても地獄

887デフォルトの名無しさん (ワッチョイ 334d-6h2J)2017/09/03(日) 15:50:56.57ID:SkKZ7pGs0
> だからカイゼンを繰り返せるように設計する

思いつきで仕様決める奴の理想。現実は一度決めた仕様を捨てることは困難。

888デフォルトの名無しさん (ワントンキン MM9f-ysE7)2017/09/03(日) 17:12:55.58ID:QlhluFUqM
>>887
仕様と実装の区別も付かないあたり初心者スレらしくて微笑ましい

889デフォルトの名無しさん (ワッチョイ f36c-X0kF)2017/09/04(月) 18:45:09.41ID:hB0i/ETq0
List<int> suuji に入ってる一桁、数百の整数リストを3個ずつに纏めて新たなList<int> suujibunkatuに入れる作動を希望
C#の仕組みを理解するためにいろいろな方法を試しています
以下ソース

List<int> suuji = new List<int>();
//この後、suujiにはLoopで回した一桁の数字が数百入ります
List<int> suujibunkatu = List<int>();
foreach (var unit in suuji.Chunks(3))
{
Console.WriteLine(unit);
suujibunkatu.Add(unit);
}

//以下ネットからコピペした拡張メソッド
public static class Extensions
{
// 指定サイズのチャンクに分割する拡張メソッド
public static IEnumerable<IEnumerable<T>> Chunks<T>
(this IEnumerable<T> list, int size)
{
while (list.Any())
{
yield return list.Take(size);
list = list.Skip(size);
}
}
}

890デフォルトの名無しさん (ワッチョイ f36c-X0kF)2017/09/04(月) 18:45:33.53ID:hB0i/ETq0
やりたいことはforeachの中でList<int>suujibunkatu に三個ずつに纏められたunitの中身を次々に入れていく作動です
ここで、以下のエラーがでます
引数 1: は 'System.Collections.Generic.IEnumerable<int>' から 'int' へ変換することはできません。
場所はsuujibunkatu.add(unit)のunitに赤線になります
引数1 はList<int> suujiの最初の数字である1だと思います。

どうやって解消したら良いでしょうか?
unitに入ってるのがint[]のような配列だと思うのですが…それが原因なのかもわかりません
int[]に入ってる配列をint化する必要があるという感じでしょうか?
拡張メソッドの中身はまだ理解できてないので、拡張メソッドの方を改造しない方向で、のちのち拡張メソッド内を把握していこうと思っています
3つずつまとめる他の方法は出来るのですが、この拡張メソッドの中身を把握するために、使う部分でのエラーをなくしたいと思ってます

よろしくお願いします

891デフォルトの名無しさん (ワッチョイ 63c0-X0kF)2017/09/04(月) 18:57:40.46ID:otT4pCTb0
>>890
List<int> suujibunkatu = List<int>();にint[]をAddしようとしてエラーになってる
3つずつ格納するならList<int[]>にしないと

892デフォルトの名無しさん (ワッチョイ 734b-6h2J)2017/09/04(月) 19:01:00.81ID:00KK6mcG0
エラーメッセージに全て書いてあるのに何で読まないんだろ

893デフォルトの名無しさん (ワッチョイ f36c-X0kF)2017/09/04(月) 19:03:22.90ID:hB0i/ETq0
>>891
うぉぉおできました
ありがとうございました
なるほど…

894デフォルトの名無しさん (ブーイモ MMff-2DHa)2017/09/04(月) 19:09:27.18ID:btcIVubBM
リストリスト最強

895デフォルトの名無しさん (ワッチョイ 0311-nZMq)2017/09/04(月) 19:11:52.70ID:GCSWB22g0
リスト入れ子で使ってたけど、最近はクラスで中身決めてから使うようにしてます・・・

896デフォルトの名無しさん (ブーイモ MMff-2DHa)2017/09/04(月) 19:17:38.96ID:btcIVubBM
リスト<クラス>も最強!!

897デフォルトの名無しさん (ワントンキン MM47-HH9D)2017/09/04(月) 19:18:16.98ID:J/PDDIf7M
ディクショナリリストリストディクショナリディクショナリリストリスト…

898デフォルトの名無しさん (ワキゲー MMdf-7W5h)2017/09/04(月) 19:24:49.60ID:4D/EyHyVM
>>896
最も強いモノが二つあるのか

899デフォルトの名無しさん (アウアウエー Sadf-nbtu)2017/09/04(月) 19:30:38.82ID:2WJ6m4B/a
リストはイケメンだったって葉加瀬太郎が言ってた

900デフォルトの名無しさん (ワッチョイ 0311-Yonq)2017/09/04(月) 21:15:16.49ID:xzNFEqQH0
もしかして:フランツ・リスト

901デフォルトの名無しさん (ワッチョイ a3e3-UQ5O)2017/09/05(火) 12:51:24.34ID:gmADSVwC0
女性客はリストの演奏で興奮のあまり失神者多発だったからなあ

902デフォルトの名無しさん (ブーイモ MM1f-Oa4x)2017/09/05(火) 15:32:58.15ID:MGmieXBfM
俺クラオタだけどこういう流れイラっとする

903デフォルトの名無しさん (ワッチョイ 0311-nZMq)2017/09/05(火) 15:34:47.87ID:VPTccCtg0
クラシックオタクなのかクラスオタクなのか

904デフォルトの名無しさん (ブーイモ MM1f-Oa4x)2017/09/05(火) 15:39:07.58ID:MGmieXBfM
>>903
こういうのイラっとする

905デフォルトの名無しさん (ワッチョイ 536f-SIBH)2017/09/05(火) 20:51:37.63ID:n1w+1UPx0
クラクラオタクだろ

906デフォルトの名無しさん (ワッチョイ 6311-7QJT)2017/09/06(水) 01:29:30.86ID:nkmkM8Yj0
練習でコンソールアプリケーションで迷路のようなのを作ってます
開始からゴールまでの時間を表示することはできたのですが、これを毎回記録しつつ、あなたは○○秒です~現在○位です!
のようなランキングを表示できたらと思ってますが、どのような方法が考えられるのでしょうか?

907デフォルトの名無しさん (ワッチョイ 0311-nZMq)2017/09/06(水) 01:46:25.57ID:t+GbP5lP0
>>906
MySQL使ってDB構築してるわ

DB構築、そこからプレイヤーのidをキーに保持して、秒を保存すればええんでね?
ランキングはListとかでソートしてインデックス+1で表示
同率とかの処理必要ならメソッド作る感じで

オススメのDBはよく分からないけど

908デフォルトの名無しさん (ワッチョイ ff11-BPzU)2017/09/06(水) 02:18:50.02ID:x6m+UIsj0
>>906
1. 記録はファイル出力/ 順位表示時に毎回ソート
2. SortedList等を使って記録時にソート済みでファイル出力、起動時等にSortedListの構築が必要
3. DBに記録、順位表示はDBからソートした結果を取得して表示

自分だけでプレイするのなら1で十分だと思うが
練習なら上から順番にやっていくのでもいいかもね
DB使うならSQL CEかSQLiteかな

909デフォルトの名無しさん (ワッチョイ cfaa-gHR8)2017/09/06(水) 05:50:00.34ID:zWRlsEKn0
ブラウザに記録する、Web Storage

どこかのサイトのランキング・サービスとか

910デフォルトの名無しさん (ワッチョイ ff66-X0kF)2017/09/06(水) 09:07:50.25ID:xhMucLYd0
つか、その程度のデータならxmlかjson使ってクラスをシリアライズするのが良いよ

911デフォルトの名無しさん (ブーイモ MMff-9zQU)2017/09/06(水) 10:04:14.65ID:h6l6T9rKM
適当なBaaS使うのが簡単だろうね
やる気があればAWSで API Gateway + Lambda + DynamoDB ならほぼメンテナンスフリーで余裕で無料枠に収まる

912デフォルトの名無しさん (ワントンキン MM9f-SIBH)2017/09/06(水) 15:39:28.12ID:rdtIk74+M
普通 Redis

913デフォルトの名無しさん (ワッチョイ 6311-ygYq)2017/09/06(水) 18:48:35.84ID:yZhXwa1n0
① 記憶媒体からデータを読み込む。読み込んだ順番を保ちつつリストを作成する
② ゲーム開始→終了
③ ①のリストの先頭から見て行き、新しい記録より大きい要素の1つ前に挿入する。(挿入した位置が順位)
④ 表示処理
⑤ リストデータを記憶媒体へ書き込む

ソートは不要。
DBを使う要件がないのであれば記憶媒体はtxtファイルで十分。

914デフォルトの名無しさん (アウアウイー Sac7-b8Mh)2017/09/06(水) 19:04:59.84ID:s9ZfYQxla
>>906
テキストファイル名に名前秒数を適当な区切りを入れて保存

山田,60,田中,75,伊藤,81.scr

エクスプローラーからF2で編集可能
エディタもいらない
もちろんファイル名に使えない文字はあらかじめ除外だ

915デフォルトの名無しさん (ワッチョイ 6f6d-bdum)2017/09/06(水) 23:29:32.24ID:kZeUfc0W0
ネットを見ていたら、インターフェースで依存性を排除するコードが
例として出ていたのですが「コンストラクタでengineに実装を注入する」とある部分は、どのように書けるのでしょうか?

インターフェースには実装が書けず、コンストラクタでメソッドを書くこともできないので見当がつきません

よろしくお願いします

public interface Engine
{
void start();
}

public class Car
{
public Engine engine;
public Car()
{
// コンストラクタでengineに実装を注入する
}
public void go()
{
engine.start(); // <- Engineはインターフェースなので依存性がなくなった
}
}

916デフォルトの名無しさん (ワッチョイ e303-3JEm)2017/09/06(水) 23:38:07.92ID:ygscOEFy0
Engineインターフェースを実装したエンジンのインスタンスを
何らかの手段で手に入れてengineに代入しろってことだな

つまり、君の買った車にはエンジンが付いてないので
買ってくるか、自分で作るか、好きにしてもらったらよいが
エンジン作る部分までは説明しないよ、ってことだな

917デフォルトの名無しさん (ワッチョイ ff11-BPzU)2017/09/06(水) 23:53:04.33ID:tZ2T0w/m0
>>915
CarはEngineに依存してるよ
インターフェース使えばEngineの実装には依存しないようにできるけど
インターフェースなので依存性がなくなったというのは認識として間違ってると思う

んで実装を注入する方法はいくつかあって、例えばコンストラクタ・インジェクションなら
Carインスタンスを生成するときにEngine実装のインスタンスを渡してあげるイメージ

public Car(Engine engine)

918デフォルトの名無しさん (ワッチョイ 2312-935K)2017/09/07(木) 00:04:50.83ID:25clT2YI0
>>915
要はインターフェースの使い方が分からないってことかな。
https://ideone.com/sUlQuj

919デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/07(木) 00:30:22.69ID:jomVuFMWa
>>915
依存性云々はとりあえず今は聞き流して、インターフェイスの使い方を覚えるのがいいねw

920デフォルトの名無しさん (ワッチョイ 9aea-kA1u)2017/09/07(木) 00:35:28.14ID:n13wzRyY0
>>915
基本的にフィールドをpublicにしちゃだめ
メソッド名はPascal

質問とは無関係だけど

921デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/07(木) 01:19:40.93ID:/528PZB30
>>915
なんで依存性を無くしたいの?
変更が必要になったら変更に必要なお金を貰えばいいじゃない?
君が依存性を無くした機能が将来的に役に立つ可能性は100%なの?

922デフォルトの名無しさん (ワッチョイ 0b11-FoH9)2017/09/07(木) 06:29:42.71ID:yYQdIYqd0
>>921
こういう質問からズレた的はずれなこと言うやつってどこにも湧くよな
yahoo知恵袋とかにも多いけど

923デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/07(木) 06:52:28.02ID:/528PZB30
初心者スレだし
意味のないことをやってる人間を止めるのも優しさだろ
明らかに意味がない

924デフォルトの名無しさん (バットンキン MMdf-o7Wx)2017/09/07(木) 07:06:09.22ID:jEqK5EjrM
>>921
将来保守される保障あんの?
で、突き詰めたらメインメソッドだけで良いという結論に行き着きそうだな

925デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/07(木) 07:21:08.70ID:/528PZB30
>>924
実際、機能10個作って10年で内3つしか変更が入らないときって
残りの7つに費やした依存性解消の時間って無駄じゃね?
いつ精算できんの?

変更することになってからゆっくり金貰って変更すればいいよ
予めやっておく必要も金も時間も欠片もない

926デフォルトの名無しさん (ワントンキン MM8a-q4XS)2017/09/07(木) 07:32:44.67ID:oeWMtJN8M
>>921
え?ユニットテストしないの?
まじかよ

927デフォルトの名無しさん (ワッチョイ 8343-3TYr)2017/09/07(木) 07:33:51.36ID:j+BNBbb90
>>915 を書き直すとこういう感じだろうか
public class Car
{
 private Engine engine;
 public Car(Engine engine)
 {
  // engineのインスタンス生成は外部で行い、
  // その参照をEngineインターフェースの変数として保持する
  // (渡されたクラスにEngineインターフェースが実装されているか
  //  どうかしか感知しない)
  this.engine = engine;
 }
 public void go()
 {
   // コンストラクタで渡されたEngineを使うので、
  // インスタンスの実装には依存しない
  // (実際に渡されるクラスで変更があっても、
  //  それがEngineインターフェースに関わらない部分なら影響がない)
  engine.start();
 }
}

あと、↓に従ってくれると、他の人からも読みやすい

インターフェイスの名前付けのガイドライン
https://msdn.microsoft.com/ja-jp/library/cc433279(v=vs.71).aspx
"インターフェイス名には、この型がインターフェイスであることを示すために、プリフィックス I を付けます。"

メソッドの名前付けのガイドライン
https://msdn.microsoft.com/ja-jp/library/cc433282(v=vs.71).aspx
"Pascal 形式を使用します。"

928デフォルトの名無しさん (スッップ Sdba-kA1u)2017/09/07(木) 07:41:56.97ID:KHq0qyGqd
>>921
いつの時代の話だよ

929デフォルトの名無しさん (スッップ Sdba-kA1u)2017/09/07(木) 07:43:59.67ID:KHq0qyGqd
>>927
命名規則持ち出すんなら、メソッド名もPascalにしろよ
それからフィールドはreadonlyにして_engine、thisは消せ

930デフォルトの名無しさん (ワッチョイ 236e-nkYL)2017/09/07(木) 07:46:39.37ID:NVMcPyFE0
>>926
依存先を先に作ればいいだけだよ
まさかDI使うプロジェクトは作るクラス全部疎結合にするとでも思ってるのか?

931デフォルトの名無しさん (ワントンキン MM8a-SdQ8)2017/09/07(木) 08:00:06.40ID:oeWMtJN8M
>>930
それ結合テスト

932デフォルトの名無しさん (ブーイモ MM26-nkYL)2017/09/07(木) 08:02:41.36ID:j5w9yEfWM
下位のモジュールを結合した状態で単体テストするのはおかしなことではないでしょ
MSだって普通にクラスの中でnewしてるよ
見境なくDIすると結合したときとのギャップが大きくなりすぎる
○○サービスと呼べるような粒度の低いクラスだけにとどめるのがいいと思ってる

933デフォルトの名無しさん (ワントンキン MM8a-SdQ8)2017/09/07(木) 08:10:18.52ID:oeWMtJN8M
>>932
対象を選ぶのは当たり前

934デフォルトの名無しさん (スッップ Sdba-kA1u)2017/09/07(木) 08:13:41.08ID:KHq0qyGqd
>>930
こいつUnitTestしたことないだろ

935デフォルトの名無しさん (ワントンキン MM8a-SdQ8)2017/09/07(木) 08:17:23.55ID:oeWMtJN8M
粒度も基準としてはあるが
自前のコードで完全に制御できないものはどこかで注入したほうがいいな
注入は別にインターフェースでなくてもいい
単にoverrideでもdelegateでも用途(今の文脈だとユニットテストか)に合えば良い
古い言語だとテスト用のモジュールをリンクしたり
マクロやインクルードで注入することもある

936デフォルトの名無しさん (ブーイモ MM26-nkYL)2017/09/07(木) 08:50:12.82ID:j5w9yEfWM
>>934
単体テストと結合テストの違いはテストケース
単体でも通るテストか、結合してないと通らないはずのテストか、それだけのこと
開発順序の都合とかネットワークに依存しててクソ遅いとか意図的に発生させるのが難しいエラーがあるといった特別な理由がない限り、
単体でも通るテストを結合して動かすことはなんら単体テストの意義を損なうものではないよ

937デフォルトの名無しさん (スッップ Sdba-kA1u)2017/09/07(木) 10:51:28.81ID:KHq0qyGqd
>>936
素人おつ

938デフォルトの名無しさん (ワッチョイ 23c0-xkdj)2017/09/07(木) 10:57:46.90ID:eu6mSuii0
職場はユニットテスト何それ?だから1メソッドが数百行どころか千行超えるコードざらに見かけます・・・

939デフォルトの名無しさん (ワントンキン MM8a-SdQ8)2017/09/07(木) 12:10:02.38ID:tK2euLNeM
>>936
結合してテストして失敗したら
テスト対象が悪いのか依存先が悪いのか切り分けが面倒だろ
やれやれだぜ

940デフォルトの名無しさん (ブーイモ MMba-d5PD)2017/09/07(木) 12:18:14.16ID:CjGXGOTyM
>>938
作り直しレヴェルだろw

941デフォルトの名無しさん (ワントンキン MM8a-SdQ8)2017/09/07(木) 12:23:19.06ID:tK2euLNeM
>>938
レビューしないの?

942デフォルトの名無しさん (ブーイモ MM26-nkYL)2017/09/07(木) 12:30:07.79ID:j5w9yEfWM
>>939
よく考えよう
それ結合テストで起きる問題を先送りにしてるだけだろ?
むしろ単体テストレベルで見つかったほうが範囲が絞られてる分原因を特定しやすいよね

943デフォルトの名無しさん (ワッチョイ 1a91-/OaE)2017/09/07(木) 12:42:10.15ID:SGJxgazo0
ワッチョイ b769-ZN1Y)
ワッチョイ 236e-nkYL)
ブーイモ MM26-nkYL)


944デフォルトの名無しさん (ワッチョイ 4e00-/59e)2017/09/07(木) 12:47:41.77ID:lOf9v6000
>>938
わかる
汎用機型のプログラミングから抜け出せなかった企業はこれからどんどん終わってくよね

945デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/07(木) 12:52:28.11ID:/528PZB30
>>926
それしないとユニットテストってできないの?
無駄なことやってない?
使い方知らないの?

946デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/07(木) 12:58:50.81ID:vdmBVUrpa
質問者そっちのけで盛り上がってるねw

>>915が読んだ記事の著者のいう依存性の排除っていうのは恐らく、
Enineのコードが修正されてもCar側のコードがその影響を受けないようにする、
っていう程度の意味。(CarとEngineは別の人やチームが書いてると考えて)

そのための手段として、Carのコードでは具体的なクラスEngineではなく、
Car側のコードを書いている人、または第三者が定義したIインターフェイスEngineを使い、
EngineにはIEngineの実装を強制する。

そうすればEngineを書いている人はIEngineによって拘束され、
Car側(Engineを使う側)のコードが動かなくなるような変更はできなくなる。

まあたぶんこんな感じ。
だけど、下位の側のコード(この場合はEngine)を拘束するために
わざわざインターフェイスを使って抽象度を上げる(つまり可読性は下がる)必要が
本当にあるのかは、個人的にはかなり疑問。鶏を割くのに牛刀を使う感がある。

まあ質問者に確実に言えるのは、上にも書いたけど
依存性云々なんて理解しなくても問題ないから安心して読み飛ばしていいよってことw

947デフォルトの名無しさん (ワッチョイ 0b11-zjjG)2017/09/07(木) 13:03:19.68ID:NBIMX30y0
依存性をどっかで断ち切らないと、変更の影響が波及し過ぎるからだよ

その例で言うなら、Carの実装内容がEngineに直接依存してると
Engineを修正した時に、Carも修正しなくちゃならなくなるので、それを断ち切りたい訳だ

実際には、その2クラス間にしか依存関係が発生しないなら纏めて修正でもそこまで困らないんだけど
クラスAにクラスBが依存、クラスBにクラスCが依存、クラスCにクラスDが依存……って連鎖してく様な形になってると最悪で
クラスAを修正した結果、クラスB~Dも全部修正とかになる可能性がある

948デフォルトの名無しさん (ブーイモ MMff-nkYL)2017/09/07(木) 13:04:43.74ID:vyrcxkNNM
>>944
汎用機は

949948 (ブーイモ MMff-nkYL)2017/09/07(木) 13:06:37.62ID:vyrcxkNNM
すまん
汎用機は細かくプロセス分けて作るから単体テストはわりと容易だよ
そのノリでVBやJavaモノリシックなアプリを作ろうとしたところでおかしくなった

950デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/07(木) 13:39:50.81ID:/528PZB30
>>947
設計変わってねぇのに
テスト数が増える話してんの?
ないとは言い切れないないけど考慮に入れるには頭悪くね?

951デフォルトの名無しさん (ワッチョイ 5a11-oWo5)2017/09/07(木) 15:14:35.43ID:EkI2HYTy0
ここにはまともな人ほとんどいないのな

952デフォルトの名無しさん (ワッチョイ 5a11-w0Wv)2017/09/07(木) 15:21:06.66ID:MHVyagna0
まともな人は質の低いところには集まらないからな

953デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/07(木) 15:27:09.98ID:/528PZB30
>>951
まともじゃない人って
何年もビジネスでやってるのに
金にならないプログラム組む人?

954デフォルトの名無しさん (ワッチョイ b3e2-VqnV)2017/09/07(木) 15:34:12.42ID:QW6AKtGa0
ID:/528PZB30 (6回)

955デフォルトの名無しさん (ワッチョイ 8a91-x/0H)2017/09/07(木) 15:38:11.33ID:QvUFBIyZ0
未だにVB5の保守案件を手放せていない俺は、きっとまともじゃないです

956デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/07(木) 15:44:45.27ID:/528PZB30
>>954
単発に言われてもねw

957デフォルトの名無しさん (ブーイモ MMba-d5PD)2017/09/07(木) 16:48:04.48ID:CjGXGOTyM
1秒毎にボーリング処理するなかであるクラスのメソッドを呼び出す場合、毎回newするのは悪手ですか?staticが基本でしょうか?

958デフォルトの名無しさん (ワッチョイ 47c2-x/0H)2017/09/07(木) 17:29:06.04ID:wvM1rF390
自分で分かってるくせに

中身をしらん俺には答えは分からんがな

959デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/07(木) 17:37:51.97ID:hyVDvgFsa
>>957
staticってのは意味不明だけど(フィールドじゃないの?)
基本的にどっちでも書きやすい方でOK

もちろん高価な共有リソースを使う場合は別

960デフォルトの名無しさん (ワンミングク MM8a-SdQ8)2017/09/07(木) 17:42:49.39ID:1h1pdgP4M
>>957
重いリソース抱えてないなら毎回インスタンス作って良いよ

961デフォルトの名無しさん (ワッチョイ 23c0-xkdj)2017/09/07(木) 19:00:31.87ID:eu6mSuii0
>>957
new のコストが重いならこんな手も

方法: ConcurrentBag を使用してオブジェクト プールを作成する
https://msdn.microsoft.com/ja-jp/library/ff458671(v=vs.110).aspx

962デフォルトの名無しさん (ワッチョイ 4e61-xkdj)2017/09/07(木) 19:18:39.04ID:KSI/qa2l0
>>957
そのメソッドをアクセスしやすい場所に置けばいいだけじゃないの?
単純に使うクラスにメソッドをコピーするか必要なメソッドだけ分離してクラスにして今まで使っていたクラスではフィールドで持っておけばいい

963デフォルトの名無しさん (ワッチョイ 5a11-oWo5)2017/09/07(木) 21:02:39.11ID:EkI2HYTy0
>>957

>>958の言うとおり
1秒毎にポーリングする処理というだけでは
毎回newするのが悪手かどうかstaticメソッドにするのがいいかどうかは誰も分からない

1. どういう選択肢があるのか考える(調べる)
2. それぞれのメリット・デメリット/トレードオフを理解する
3. 状況や目的に最も適している選択肢を選ぶ

こういう選択思考を繰り返すのが設計・コーディング時の考え方の基本
他にも選択肢あるから怠けず1.からやるのがいい
状況や目的をきちんと提示すればいいアドバイスが貰えるかもね

964デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/07(木) 21:13:30.58ID:/528PZB30
もう実際にやってパフォーマンスモニタでログでもとってみりゃいーじゃん的な

965デフォルトの名無しさん (ワッチョイ 5a11-oWo5)2017/09/07(木) 21:29:02.21ID:EkI2HYTy0
パフォーマンス的に問題ないかを確認するのが目的ならね。

966デフォルトの名無しさん (ワッチョイ 9aea-ShIp)2017/09/07(木) 21:51:07.93ID:rUDH3LDL0
JSON のシリアライズで教えてください。
派生先クラスのインスタンスを、派生元クラスのシリアライザで処理できないでしょうか。

こんなクラスがあるとします。 (書き方については大目に見てください)
class Data;
class ItemData : Data;

これをこんなことは出来ない物でしょうか。
var data = new ItemData();
(new DataContractJsonSerializer( typeof( Data ) )).WriteObject( stream, data );

この場合なら、こんな風に回避できるのですが。
(new DataContractJsonSerializer( data.GetType() )).WriteObject( stream, data );

こんなクラスのインスタンスに (AssemblyDataのインスタンス).data = new ItemData(); でシリアライズしようとすると実行時にエラーになります。
class AssemblyData
{
public Data data {set; get;}
}

ネットで見た範囲では DataContractJsonSerializer は多態に対応していると書かれた記事もあったのですが、どうにもうまくいかず。
方法があるようでしたら教えてください。

967デフォルトの名無しさん (ワッチョイ e74b-x/0H)2017/09/07(木) 21:51:39.39ID:f+yzxXuh0
EventArgsとか毎回newしてるし全然問題ないでしょ

968デフォルトの名無しさん (ワッチョイ dbaa-gFuG)2017/09/08(金) 00:31:12.15ID:VpThhHIU0
>>966
例外メッセージにどうすれば良いか書かれてると想うけど
> DataContractSerializer を使用している場合は DataContractResolver を
> 使用することを検討するか、静的に認知されていないすべての型を既知の型の
> 一覧に追加してください。このためには、たとえば KnownTypeAttribute 属性を
> 使用するか、シリアライザーへ渡される既知の型の一覧にこれらの型を追加します。

969デフォルトの名無しさん (ブーイモ MMff-d5PD)2017/09/08(金) 07:43:59.68ID:F2F5K69aM
newの質問したものです。
newにかかるオーバーヘッドの時間調査して、パフォーマンスを比較するのを怠ってましたが、やはりやってみないとわかりませんね。
やります。皆さん色々アドバイスありがとうございます。

970デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 10:31:16.74ID:y+E+UDjYa
いやいやいや、それはどっちかというと頓珍漢な言い掛かりの部類でアドバイスじゃないと思うよw
今年は何年よw

コンストラクタ呼び出しが時間的に高コストなんてよっぽど特殊なクラス以外ありえないよwww
µsオーダでもmsオーダーでもなく、たった1回/秒の呼び出しなんだからw

だから最初から言ってるように、普通は書きやすい方法で書いて何も問題ないよ本当。

971デフォルトの名無しさん (JP 0H4b-xkdj)2017/09/08(金) 11:43:10.75ID:b0hnqFHTH
いわゆる無駄な最適化の部類だとは思うが
まぁ自分で検証するというのれは良いことなのでどんどんやるといい

972デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 13:15:47.36ID:bqhsPJxB0
>>970
いや、気にしてるのはnew連発の穴ボコメモリだろ?
そのうちosがうまいことやってくれるのはなんとなくわかるがそのコストって具体的にどうよ?
ってのが本当に知りたいことだろ?
環境次第だしパフォーマンスモニタ動かしてみろよって話

3日も動かすと5秒だけ動作が止まるような動きをするってなったらそれが運用上許容できるのか?バグるのか?
それもやっぱりやって見なきゃわからないんちゃうん?

973デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 13:55:53.86ID:y+E+UDjYa
>>972
何がいやか分からないけど、だから最初から
高価な共有リソースを使う場合は別だと言ってるでしょ
今頃何を言ってるのかね

そういう例外的なケースを除けば、毎秒数個のオブジェクトを使い捨てにしたって
問題なんか起こらない。
そんなのXPの時代だってそうだから

974デフォルトの名無しさん (ワッチョイ 8a91-x/0H)2017/09/08(金) 14:00:38.33ID:0UBMFtit0
データベースへのコネクションを using で括ると
コネクションプールが機能しなくなる?

975デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 14:30:27.51ID:bqhsPJxB0
>>973
問題起こらないってどういう範囲で言ってるの?
何度も確保したnewの領域をosがどう処理するから問題ないって言ってるの?
仕様によっては問題起きるよ
1つはメモリ限界ギリギリまでガベコレしないときは定期タスクの動きを止めてメモリ処理するよ
1分以上止まっちゃってたことあるよ

976デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 15:23:04.74ID:Ej7G00WUa
>>975
具体的にどうぞ。
君が問題が起こる具体的な一例を挙げればそれで話は終わる。
もちろん、極端な特殊例でなくどこでもありうるような一般的なものでお願いしますよ。

あのねえ、今はPC-98の時代じゃないんですけどw

977デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 15:38:29.56ID:bqhsPJxB0
>>976
は?
で?何が問題ないって?

978デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 15:40:34.40ID:bqhsPJxB0
とりあえずガベコレ動くときにプログラムの動作止まっちゃうよって1つあげてるよね

979デフォルトの名無しさん (ブーイモ MMba-nkYL)2017/09/08(金) 16:26:18.98ID:VL+fdMeQM
>>978
すぐに使い捨てるなら確実にGen0GCで回収されるから止まる原因になることはないよ

980デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 16:45:28.16ID:Ej7G00WUa
こっちは具体例上げるけど、もっと高頻度(例えば10回/秒とか)で
画面を更新する必要があるアプリなんてごく普通にあるわけで、
そういう場合、例えばGDI+なら、ペンとかブラシとかデバイスコンテキスト(普通は作るのはシステム側で
ユーザーコードじゃないけど)とか、描画ごとに使い捨てすることになるけど、
こんなのが問題を引き起こすなら使い物にならないよ。

実際.NET1.1の時代に今じゃ考えられないような貧弱なWin98のマシンで
そういうアプリをテストしたことあるけど、何の問題もなかったよ。
当たり苗だけどw

981デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 17:11:08.88ID:bqhsPJxB0
>>979
とりあえず解決した方法は
10分に一度程度で強制ガベコレ実行することで解決したよ
溜めるとガベコレの時間は長くなるっぽい
やってみた感じね
パフォーマンスモニタでもメモリリークしてる?ってぐらい増えてく
ガベコレが動くと解消される
でもそのとき10秒タスクなんかは動かない
小刻みに強制ガベコレを実行しておくとそれが解消される
そんな動きをしている

その動きをされると困るときに小刻みに強制ガベコレを実行する必要がある

982デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 17:14:12.49ID:bqhsPJxB0
これが問題があったときな
これを問題ないって言われちゃうとどう返していいかわからんけどね

983デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 17:19:26.30ID:bqhsPJxB0
ちなみに趣味でゲームも作ってるけど
頻繁に強制ガベコレを動かさないと
重いガベコレを実行されるときがある

ゲームでは多少重い動作をした程度なので問題にならないが
これを周期的にデータを収集するタスクを動かしてるときにやられると不味いときがある

984デフォルトの名無しさん (ワッチョイ 9ac8-xkdj)2017/09/08(金) 17:23:06.63ID:dMUjO8jT0
だから具体的にどんなサイズのオブジェクトを
どういう頻度でインスタンス化したのか教えてくれないと
そういうどんくさい実装も可能だろうね
でも一般的な話じゃないよねとしか言えないんだよ

985デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 17:34:00.33ID:bqhsPJxB0
>>984
それがわかったところでだからどうなの?
何がしたいん?

986デフォルトの名無しさん (ワッチョイ b769-ZN1Y)2017/09/08(金) 17:36:30.75ID:bqhsPJxB0
まあ、今回の件がどうなのかパフォーマンスモニタで測ってやってみんのが一番いいよね
そのアプリが連続実行される要件に合わせてって話だけど

987デフォルトの名無しさん (ワッチョイ 5a11-oWo5)2017/09/08(金) 18:02:05.09ID:mcCYyLIS0
>>980
描画ごとに使い捨てにするのはデバイスコンテキストのハンドルで
デバイスコンテキスト自体じゃないじゃないんじゃないのかな?
少なくとも一般的には

あとスレ立てヨロ

988デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 18:15:42.38ID:Ej7G00WUa
>>987
立てたよ
https://mevius.2ch.net/test/read.cgi/tech/1504861931/l50

少なくともマネージドオブジェクト(Graphics)は毎回使い捨てだと思うよ。


スレ立てのために久しぶりにブラウザで表示したらずいぶんデザイン変わってるんだな。
こんなくだらないことするのなら専用ブラウザなんか使わなくても
もっと使いやすいようにすりゃいいのに...

まあ、もう2ch亡くなっても誰も困らんか

989デフォルトの名無しさん (アウアウイー Sa7b-QyhX)2017/09/08(金) 19:40:16.45ID:wFGdJLM3a
nmecabに例の辞書入れて動かしてたら時々遅くなって何かと思ったらガベコレだった
サービスにぶっこんでて気付かなかった

990デフォルトの名無しさん (ワッチョイ 174d-x/0H)2017/09/08(金) 19:46:39.40ID:hqG5pPGU0
>>970
これがゆとりかぁ。

991デフォルトの名無しさん (ワッチョイ 4e61-xkdj)2017/09/08(金) 19:50:01.67ID:KtAqYxG/0
質問者がいなくなった後の要件のはっきりしない議論とか次に持ち越すなよ
>>988
スレたて乙

992デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 20:23:30.10ID:Ej7G00WUa
>>990
いや、君が人間的に幼稚なだけ。
どうでもいいけど、反論するなら事実で反論してよ

993デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 20:26:02.00ID:Ej7G00WUa
つーか、今時毎秒オブジェクトを使い捨てしたぐらいで何か問題が起こると
真顔で主張するって、大丈夫かしらん。

普段どんなコード書いてるのかねw

994デフォルトの名無しさん (アウアウイー Sa7b-QyhX)2017/09/08(金) 20:32:43.87ID:bIIt/y+7a
そもそもポーリング処理じゃなくて

ボーリング処理だからな

何が行われてるのかさっぱりわからない

995デフォルトの名無しさん (ワッチョイ 23e6-d5PD)2017/09/08(金) 20:38:17.46ID:HXP4jN1T0
>>994
これは恥ずかしい
ポーリング(polling)とは、通信やソフトウェアにおいて、
競合を回避したり、送受信の準備状況を判断したり、
処理を同期したりするために、複数の機器やプログラムに対して
順番に定期的に問い合わせを行い、一定の条件を満たした場合に
送受信や処理を行う通信及び処理方式のことである。

996デフォルトの名無しさん (ワッチョイ 174d-x/0H)2017/09/08(金) 20:38:39.24ID:hqG5pPGU0
キミの用途はそうではなくても、常識としてnewやstringは遅いという認識を共有してくれないかな。
今時とか、普段とか、遅くて使い物にならなかった昔のJava屋のセリフそのままじゃないか。
どんな時代でもCPUのリソースは有限なんだよ。

997デフォルトの名無しさん (ワッチョイ 23e6-d5PD)2017/09/08(金) 20:39:35.74ID:HXP4jN1T0
>>994
ボーリングってなんだよwww

998デフォルトの名無しさん (アウアウイー Sa7b-QyhX)2017/09/08(金) 20:49:45.90ID:13cy/HVma
>>995
>>997
元のレスをよく見ろよ

>>957

999デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 21:00:17.89ID:Ej7G00WUa
穴を掘るだけの簡単なお仕事です

1000デフォルトの名無しさん (アウアウエー Sa52-tij5)2017/09/08(金) 21:03:18.12ID:Ej7G00WUa
>>996
上から目線で頓珍漢なことを言ってるお型を見るほど滑稽な物はないなw

mmp2
lud20190707164950ca
このスレへの固定リンク: http://5chb.net/r/tech/1500327645/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

TOPへ TOPへ  

このエントリをはてなブックマークに追加現在登録者数177 ブックマークへ


全掲示板一覧 この掲示板へ 人気スレ | Youtube 動画 >50 >100 >200 >300 >500 >1000枚 新着画像

 ↓「ふらっと C#,C♯,C#(初心者用) Part130 [無断転載禁止]©2ch.net YouTube動画>7本 ->画像>11枚 」を見た人も見ています:
ふらっと C#,C♯,C#(初心者用) Part141
ふらっと C#,C♯,C#(初心者用) Part142
ふらっと C#,C♯,C#(初心者用) Part143
ふらっと C#,C♯,C#(初心者用) Part134
ふらっと C#,C♯,C#(初心者用) Part137
ふらっと C#,C♯,C#(初心者用) Part145
ふらっと C#,C♯,C#(初心者用) Part135
ふらっと C#,C♯,C#(初心者用) Part129
ふらっと C#,C♯,C#(初心者用) Part148
ふらっと C#,C♯,C#(初心者用) Part149
ふらっと C#,C♯,C#(初心者用) Part154
ふらっと C#,C♯,C#(初心者用) Part119
ふらっと C#,C♯,C#(初心者用) Part121
ふらっと C#,C♯,C#(初心者用) Part128
ふらっと C#,C♯,C#(初心者用) Part161
ふらっと C#,C♯,C#(初心者用) Part155
ふらっと C#,C♯,C#(初心者用) Part160
ふらっと C#,C♯,C#(初心者用) Part152
ふらっと C#,C♯,C#(初心者用) Part118 ©2ch.net
ふらっと C#,C♯,C#(初心者用) Part120 [無断転載禁止]
ふらっと C#,C♯,C#(初心者用) Part151 (306)
ふらっと Q#,Q♯,Q#(初心者用) Part 1 (10)
FX初心者スレ Part132
Xiaomi(小米科技)初心者 Part16
クロスバイク初心者質問スレ part13
人狼ジャッジメント初心者スレ part12
セキュリティ初心者質問スレッド Part137
Wonderland Wars 入門者・初心者スレ Part13
遊戯王 初心者・復帰組交流支援スレ Part18
【PS4】ARK: Survival Evolved 初心者 part10
【プロスピ】プロ野球スピリッツA初心者スレ part10
【プリコネ】プリンセスコネクト! Re:Dive初心者・中級者スレ Part134
ふらっと C#,C♯,C#(議論用) [無断転載禁止]
MTB初心者質問スレ part126
■西洋占星術☆初心者さん■part18
ウクレレ初心者集まれ! Part18
ウクレレ初心者集まれ! Part18
PC版】APEX LEGENDS初心者スレ Part115
ギター初心者同士で語り合い高め合うスレ part13 [無断転載禁止]
【キンスレ】キングスレイド初心者用スレpart1【初心者】
【プリコネ】プリンセスコネクト! Re:Dive初心者スレ Part135
【プリコネ】プリンセスコネクト! Re:Dive初心者スレ Part138
【プリコネ】プリンセスコネクト! Re:Dive初心者スレ Part136
【プリコネ】プリンセスコネクト! Re:Dive初心者スレ Part131
【右巻きの】ルアーの右投げ右巻きって初心者臭いよね Part134【うpまだ?】
【右巻きの】ルアーの右投げ右巻きって初心者臭いよね Part135【うpまだ?】
くだすれFORTRAN(超初心者用)その7
くだすれDelphi(超初心者用)その16
くだすれC++Builder(超初心者用)その5
ロード初心者質問スレ part424
Java入門・初心者質問スレ Part.8
Ruby 初心者スレッド Part 62
Ruby 初心者スレッド Part 65
Ruby 初心者スレッド Part 60
Ruby 初心者スレッド Part 63
Ruby 初心者スレッド Part 61
Ruby 初心者スレッド Part 64
Java入門・初心者質問スレ Part.9
Webサイト制作初心者用質問スレ part250
【C++】 DirectX初心者質問スレ Part41 【C】
Java入門・初心者質問スレ(ワッチョイなし) Part.8
カルドセプト3DS 初心者&質問スレッドpart13
12:50:11 up 64 days, 13:48, 0 users, load average: 9.81, 10.00, 9.82

in 0.027493000030518 sec @0.027493000030518@0b7 on 062101