!extend:checked:vvvvv:1000:512
■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/
■コードを貼る場合はこちら
http://ideone.com/
■前スレ
C#, C♯, C#相談室 Part93
http://mevius.5ch.net/test/read.cgi/tech/1492818720/
■次スレは>>970が建てる事。
建てられない場合は他を指定する事。
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
C#, C♯, C#相談室 Part94
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ワッチョイ 935f-5Uxj)
2019/03/20(水) 18:57:36.47ID:ZZcTomnN0917デフォルトの名無しさん (ワッチョイ 7501-09aj)
2021/11/17(水) 20:50:08.18ID:iuNg9UQr0 ビスマルク「愚者は経験に学び、 賢者は歴史に学ぶ」
918デフォルトの名無しさん (ワッチョイ cd2f-FDGb)
2021/11/17(水) 22:01:06.93ID:GLXZB85w0 そもそもコンパイル環境なら、VS Codeすらいらないんじゃ
919デフォルトの名無しさん (ワッチョイ 6d78-wd7R)
2021/11/17(水) 22:23:38.77ID:oaCBMm/O0 VSはダメでVSCodeはインストールできるんだ
よくわからない環境だな
よくわからない環境だな
920デフォルトの名無しさん (ワッチョイ 4de6-wt4Y)
2021/11/17(水) 22:48:30.86ID:OY6bKJls0 普通の会社で使えるのは2017までなんだよな
921デフォルトの名無しさん (ワッチョイ 4bbb-OGRf)
2021/11/17(水) 23:11:54.33ID:SfknQ7Tq0 うち2022買ったで
922デフォルトの名無しさん (ワッチョイ 7501-09aj)
2021/11/17(水) 23:14:07.67ID:iuNg9UQr0 まだ2021年なのに?
923デフォルトの名無しさん (ワッチョイ 7501-09aj)
2021/11/18(木) 09:00:28.34ID:+Wtl3GaA0 ジャップには分からんだろうが世界的には9月からはもう2022年だぞ
924デフォルトの名無しさん (ワッチョイ 4bb0-WW/G)
2021/11/18(木) 21:37:43.70ID:cf0G7PVa0 じゃあ日本は4月からもう2022年になってるのか
925デフォルトの名無しさん (ワッチョイ 8eda-xqyN)
2021/11/19(金) 01:11:50.72ID:4qGzfQ8F0 コマンドが格納されたListを順番にサーバへ送信し、
1が返ってきたら次のコマンド送信、1以外かTimeoutしたら即中断みたいな処理を
ractiveでサクッと書けますか?
var cmdList=new List<string>{ cmd1, cmd2, ... };
cmdList
.ToObservable()
.TimeOut( ・・・ )
.SendCommand()
.WaitResponse()
.PostRecv(1だったら次のコマンド送信、1以外やタイムアウトなら処理中止);
みたいな感じで。。
1が返ってきたら次のコマンド送信、1以外かTimeoutしたら即中断みたいな処理を
ractiveでサクッと書けますか?
var cmdList=new List<string>{ cmd1, cmd2, ... };
cmdList
.ToObservable()
.TimeOut( ・・・ )
.SendCommand()
.WaitResponse()
.PostRecv(1だったら次のコマンド送信、1以外やタイムアウトなら処理中止);
みたいな感じで。。
926デフォルトの名無しさん (テテンテンテン MM8e-YpRD)
2021/11/20(土) 22:43:08.40ID:F7Qzv69PM cmdList
.ForEach(x => { if(x.SendAsync(cts.Token).Result == 1 ) throw new Exception() });
.ForEach(x => { if(x.SendAsync(cts.Token).Result == 1 ) throw new Exception() });
927デフォルトの名無しさん (テテンテンテン MM8e-YpRD)
2021/11/20(土) 22:58:08.09ID:YK5Xmj5SM var results = await cmdList
.ToAsyncEnumerble()
.SlectAwait(async (c) => await c.SendAsync(cts.Token))
.TakeWhileAwait(async (r) => r == 1)
ToArrayAsync();
.ToAsyncEnumerble()
.SlectAwait(async (c) => await c.SendAsync(cts.Token))
.TakeWhileAwait(async (r) => r == 1)
ToArrayAsync();
928デフォルトの名無しさん (アウアウウー Sa3b-VuZ6)
2021/11/21(日) 00:02:36.10ID:Z3Hc+Mmaa タイムアウトで値や例外が返ってくるタイプだったらいいけど
時間経過で勝手にタイムアウト判定しろよってタイプだと詰みそう
時間経過で勝手にタイムアウト判定しろよってタイプだと詰みそう
929925 (ワッチョイ 8eda-xqyN)
2021/11/21(日) 00:41:13.81ID:7ZBVrJXA0 ReactiveExtentions(System.Reactive名前空間 ver5.0)を使ってます。
自分なりに書いてみましたがこのライブラリの使い方がよくわかってない状態です。
(疑問点をコメントに書きました。分かる方教えてください)
IDisposable d = cmdList
.ToObservable()
.Timeout( TimeSpan.FromSeconds( 3000 ) )
.Select( cmd =>
{
var res = this.SendCommand( cmd ) // 自作のコマンド送信関数;
return res;
} )
.Where( res => res == 1 )
.Subscribe(
res => /* ここで次のコマンド送信を行う書き方が分からない*/ res.ToString(),
ex => Debug.WriteLine( ex.Message /* Timeout発生時 */ ),
()=> Debug.WriteLine( "Complete" /* 全ての送信完了?それとも1つだけ送信完了? */ )
);
>>927
やはりToAsyncEnumerbleからアプローチするべきなんですかね。。
自分なりに書いてみましたがこのライブラリの使い方がよくわかってない状態です。
(疑問点をコメントに書きました。分かる方教えてください)
IDisposable d = cmdList
.ToObservable()
.Timeout( TimeSpan.FromSeconds( 3000 ) )
.Select( cmd =>
{
var res = this.SendCommand( cmd ) // 自作のコマンド送信関数;
return res;
} )
.Where( res => res == 1 )
.Subscribe(
res => /* ここで次のコマンド送信を行う書き方が分からない*/ res.ToString(),
ex => Debug.WriteLine( ex.Message /* Timeout発生時 */ ),
()=> Debug.WriteLine( "Complete" /* 全ての送信完了?それとも1つだけ送信完了? */ )
);
>>927
やはりToAsyncEnumerbleからアプローチするべきなんですかね。。
930デフォルトの名無しさん (ワッチョイ 8eda-xqyN)
2021/11/21(日) 00:46:46.14ID:7ZBVrJXA0 Timeout関数の中身は
TimeSpan.FromMilliseconds( 3000 ) // 3秒
の間違いでした
TimeSpan.FromMilliseconds( 3000 ) // 3秒
の間違いでした
931デフォルトの名無しさん (テテンテンテン MM8e-YpRD)
2021/11/21(日) 10:42:16.16ID:XHu2qeE/M Rxは監視を行うもの
時系列に沿って要素が流れてくる時に使うもの
なのである要素が流れてきた時に次の要素なんてのはまだ無い
要素が最初から揃ってるListから始めるからわからなくなる
最初から揃ってるなら普通にLinqかforeachを使う
Listでなくストリームならこれでおk
var d = CommandStream
.Select(c => Send(c))
.Timeout(t)
.TakeWhile(r => r == 1)
.Subscribe();
時系列に沿って要素が流れてくる時に使うもの
なのである要素が流れてきた時に次の要素なんてのはまだ無い
要素が最初から揃ってるListから始めるからわからなくなる
最初から揃ってるなら普通にLinqかforeachを使う
Listでなくストリームならこれでおk
var d = CommandStream
.Select(c => Send(c))
.Timeout(t)
.TakeWhile(r => r == 1)
.Subscribe();
932デフォルトの名無しさん (ワッチョイ bf4b-1Ur4)
2021/12/10(金) 11:57:57.31ID:ceXBGTs50 次元の違う配列ではArray.Copy出来ないのでしょうか。
例)
var foo = new int[4];
var bar = new int[3, 4];
ArrayCopy(foo,0,bar,0,4); // 例外発生 "The specified arrays must have the same number of dimensions."
1個づつコピーするしかないのでしょうか?
例)
var foo = new int[4];
var bar = new int[3, 4];
ArrayCopy(foo,0,bar,0,4); // 例外発生 "The specified arrays must have the same number of dimensions."
1個づつコピーするしかないのでしょうか?
933デフォルトの名無しさん (ワッチョイ df2c-yjVA)
2021/12/10(金) 12:19:49.36ID:D7YZScOh0 プリミティブ数値型の配列ならBuffer.BlockCopyできるけど
まあ多次元配列なんて肩身が狭いもんだから仕方ないね
まあ多次元配列なんて肩身が狭いもんだから仕方ないね
934デフォルトの名無しさん (ワッチョイ bf4b-1Ur4)
2021/12/10(金) 12:40:02.71ID:ceXBGTs50 classを配列に保存しているから、BlockCopyもダメなんですよね・・・
あまり数も多くないはずなので、1つずつコピー(代入)していきます。
あまり数も多くないはずなので、1つずつコピー(代入)していきます。
935デフォルトの名無しさん (ワッチョイ a724-C40i)
2021/12/10(金) 13:17:59.80ID:/7sxHGOs0 >>932
若干アンセーフだけど行ごとにならSpan利用すればマネージ型でも出来る
for (int i = 0, len2 = b.GetLength(1); i < b.GetLength(0); i++)
foo.CopyTo(MemoryMarshal.CreateSpan(ref bar[i, 0], len2));
若干アンセーフだけど行ごとにならSpan利用すればマネージ型でも出来る
for (int i = 0, len2 = b.GetLength(1); i < b.GetLength(0); i++)
foo.CopyTo(MemoryMarshal.CreateSpan(ref bar[i, 0], len2));
936デフォルトの名無しさん (ワッチョイ a724-C40i)
2021/12/10(金) 13:21:12.71ID:/7sxHGOs0 MemoryMarshal.CreateSpan(ref bar[i, 0], 5000)とかやっても確か例外でないから最新の注意を払う必要はある
まぁこうやってもソースの長さがデスト以内であれば問題は生じないけど
まぁこうやってもソースの長さがデスト以内であれば問題は生じないけど
937デフォルトの名無しさん (ワッチョイ c702-p36F)
2021/12/12(日) 04:59:13.07ID:/1pFbOYv0 入力を検知したときにメソッドを実行する処理において、
要素Aがnullでなく(エラー防止)、Aの子要素Boolがtrueの場合のみ処理をスキップしたい場合に いい書き方はありますか?
!A.Bool でメソッドを実行にしてしまうとAがnullだったときに実行されなくなってしまうので……
ひとまずgotoを使って以下のようにしているのですが、もっとスマートな書き方ありますでしょうか
if (Input)
{
if(A != null){
if(A.Bool){
goto INPUTSKIP;
}
}
Method();
}
INPUTSKIP:
要素Aがnullでなく(エラー防止)、Aの子要素Boolがtrueの場合のみ処理をスキップしたい場合に いい書き方はありますか?
!A.Bool でメソッドを実行にしてしまうとAがnullだったときに実行されなくなってしまうので……
ひとまずgotoを使って以下のようにしているのですが、もっとスマートな書き方ありますでしょうか
if (Input)
{
if(A != null){
if(A.Bool){
goto INPUTSKIP;
}
}
Method();
}
INPUTSKIP:
938デフォルトの名無しさん (ワッチョイ 7f10-xLgN)
2021/12/12(日) 08:06:18.80ID:OKsF9IR00 null条件演算子 null合体演算子 で検索
939デフォルトの名無しさん (ワッチョイ df89-+2Rn)
2021/12/12(日) 08:23:25.29ID:V78zeb460940デフォルトの名無しさん (ワッチョイ a701-p36F)
2021/12/12(日) 09:36:50.05ID:G8rzE1470941デフォルトの名無しさん (ドコグロ MM9f-JVtf)
2021/12/12(日) 10:16:02.74ID:2rSkF5hnM942デフォルトの名無しさん (ワッチョイ bfda-0QWB)
2021/12/12(日) 10:56:54.04ID:MLGY87ca0 後藤さんが出てくると素人臭が漂ってくるからな
943デフォルトの名無しさん (ワッチョイ df89-+2Rn)
2021/12/12(日) 12:26:50.16ID:V78zeb460 例外も後藤さんみたいなもんだが
944デフォルトの名無しさん (ワッチョイ c702-p36F)
2021/12/12(日) 12:48:33.01ID:/1pFbOYv0 AがnullだったときにORで並べてA.Boolの条件式を使ってしまうとそんなもんないよってエラーを吐くのでは、
と思い込んでいたのですが大丈夫なんですね……!
!A.Boolだけで判定したときに怒られたので頭凝り固まってました!
ありがとうございました!
と思い込んでいたのですが大丈夫なんですね……!
!A.Boolだけで判定したときに怒られたので頭凝り固まってました!
ありがとうございました!
945デフォルトの名無しさん (ワッチョイ 7f7b-ycqI)
2021/12/12(日) 13:09:03.73ID:I9KyYKSc0 >>944
いやショート サーキット評価だからエラーにならないだけ
https://docs.microsoft.com/ja-jp/cpp/cpp/logical-or-operator-pipe-pipe?view=msvc-170
いやショート サーキット評価だからエラーにならないだけ
https://docs.microsoft.com/ja-jp/cpp/cpp/logical-or-operator-pipe-pipe?view=msvc-170
946デフォルトの名無しさん (ワッチョイ c702-p36F)
2021/12/12(日) 13:17:35.22ID:/1pFbOYv0947デフォルトの名無しさん (ワッチョイ df89-+2Rn)
2021/12/12(日) 13:23:43.83ID:V78zeb460 vb.netのorだとエラーになる
948デフォルトの名無しさん (ワッチョイ 7f7b-ycqI)
2021/12/12(日) 13:31:38.41ID:I9KyYKSc0 >>946>>947
論理演算子2つ並べるのがショート サーキット評価なんだけど
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12181009427
次から初心者スレ行ってくれ
論理演算子2つ並べるのがショート サーキット評価なんだけど
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12181009427
次から初心者スレ行ってくれ
949デフォルトの名無しさん (ドコグロ MM9f-JVtf)
2021/12/12(日) 14:02:55.63ID:WWmfWzxPM950デフォルトの名無しさん (アウアウウー Sa6b-5lnE)
2021/12/12(日) 14:06:00.32ID:a4cuZ/Mwa vb恐ろしいな。そんなのバグの元じゃん
951デフォルトの名無しさん (ドコグロ MM9f-JVtf)
2021/12/12(日) 15:11:49.02ID:happ85M4M はあ?
C# ⇔ VB.Net
---------------------
& ⇔ And
&& ⇔ AndAlso
| ⇔ Or
|| ⇔ OrElse
ってなってるだけやぞ
C# ⇔ VB.Net
---------------------
& ⇔ And
&& ⇔ AndAlso
| ⇔ Or
|| ⇔ OrElse
ってなってるだけやぞ
952デフォルトの名無しさん (ワッチョイ a701-4A0X)
2021/12/13(月) 09:12:51.67ID:7pnzZ4JB0 >>937
条件式をネストしたり&でつないだりと複雑にするのは難読性が高くなるから分けたほうがいいだろ
どういう条件ならMthod()を呼ぶのか明確に
if(Input){
//事前処理
judge=(A==null) ? true: //Aがnullのとき
A.Bool==false ? true: //Aの子要素がfalseのとき
false; //それ以外
if(judge) Method();
//共通処理
...
}
条件式をネストしたり&でつないだりと複雑にするのは難読性が高くなるから分けたほうがいいだろ
どういう条件ならMthod()を呼ぶのか明確に
if(Input){
//事前処理
judge=(A==null) ? true: //Aがnullのとき
A.Bool==false ? true: //Aの子要素がfalseのとき
false; //それ以外
if(judge) Method();
//共通処理
...
}
953デフォルトの名無しさん (ワッチョイ 477c-Xngn)
2021/12/13(月) 09:51:11.81ID:g+jxvcxo0954デフォルトの名無しさん (ワッチョイ df01-c3Ov)
2021/12/13(月) 11:44:51.75ID:zykNHKxZ0 skipするほうが例外的処理だろうからskip条件を明確にしてearly returnしたほうがいいと思う
論理式の細かい書き方よりも意図が伝わるかどうかのほうが大事
if (ShouldSkip(a)) {
return;
}
Method();
bool ShouldSkip(A a) {
return a?.Bool ?? false;
}
論理式の細かい書き方よりも意図が伝わるかどうかのほうが大事
if (ShouldSkip(a)) {
return;
}
Method();
bool ShouldSkip(A a) {
return a?.Bool ?? false;
}
955デフォルトの名無しさん (ワッチョイ bf62-Trcr)
2021/12/13(月) 14:01:49.98ID:z2L+bKXw0 メソッドにすんのはいいけど、>>937 が入力を検知したときメソッドを実行したいって言ってんだからその通りに書けばいい
設計書通りに条件分岐すりゃいいのに無駄に置き換えて実装する人多いけどなんなんだろうね
if(入力検知(input, A)){
Method();
}
bool 入力検知(bool input, A a){
return input && a != null && a.Bool;
}
設計書通りに条件分岐すりゃいいのに無駄に置き換えて実装する人多いけどなんなんだろうね
if(入力検知(input, A)){
Method();
}
bool 入力検知(bool input, A a){
return input && a != null && a.Bool;
}
956デフォルトの名無しさん (アウアウウー Sa6b-p36F)
2021/12/13(月) 14:22:24.69ID:6wRfW5vFa 昼飯食いながら適当だから何か勘違いしてるかもしれないけど、>>937って要は
ある条件を満たした時だけMethodを実行したい、それだけでしょ?
だったら四の五の言わずに素直にそう書くのが一番じゃないの。
if( input && (!A?.Bool ?? false)) Method();
ある条件を満たした時だけMethodを実行したい、それだけでしょ?
だったら四の五の言わずに素直にそう書くのが一番じゃないの。
if( input && (!A?.Bool ?? false)) Method();
957デフォルトの名無しさん (アウアウウー Sa6b-5lnE)
2021/12/13(月) 14:29:51.31ID:KmNdaGVTa 求めてるのは「もっとスマートな書き方」だからな
主観的な問題だから、俺らが言えるのは「こういう書き方もある」ってのだけ
正解(どれが一番か)を決めれるのは本人だけ
主観的な問題だから、俺らが言えるのは「こういう書き方もある」ってのだけ
正解(どれが一番か)を決めれるのは本人だけ
958デフォルトの名無しさん (アウアウウー Sa6b-p36F)
2021/12/13(月) 14:47:42.73ID:6wRfW5vFa コードでも文章でも読み手に「要するにそれってどういうこと?」って思わせないのが一番。
これもコードでも文章でもそうだけど、読みにくいものは書いた本人がそこをよく理解せずに書いている。
これもコードでも文章でもそうだけど、読みにくいものは書いた本人がそこをよく理解せずに書いている。
959デフォルトの名無しさん (ワッチョイ 87ad-jwmr)
2021/12/13(月) 15:06:50.29ID:WUjUV8JM0 ReSharperが薦めるように書き換えたら、何をしてるのかわからなくなった。
960デフォルトの名無しさん (ブーイモ MM8b-+2Rn)
2021/12/13(月) 15:10:10.54ID:pxTkbBAYM 最近のc#はマルチパラダイムで構文が増えてカオスだ
961デフォルトの名無しさん (ワッチョイ df01-c3Ov)
2021/12/13(月) 16:35:33.81ID:zykNHKxZ0962デフォルトの名無しさん (アウアウウー Sa6b-5lnE)
2021/12/13(月) 16:52:41.40ID:KmNdaGVTa963デフォルトの名無しさん (ワッチョイ 7f33-1tZa)
2021/12/13(月) 22:23:58.46ID:s0FccnDO0 >>960
それ。言語の表現力が豊かでも、自分やチームで一貫性を担保するのが面倒ξ
それ。言語の表現力が豊かでも、自分やチームで一貫性を担保するのが面倒ξ
964デフォルトの名無しさん (ブーイモ MM8f-+2Rn)
2021/12/14(火) 09:16:58.78ID:cLXTODpXM >>963
そして、コーディング規約が底辺プログラマーに合わせられて生産性が低下する
そして、コーディング規約が底辺プログラマーに合わせられて生産性が低下する
965デフォルトの名無しさん (ワッチョイ 67b0-zDwW)
2021/12/14(火) 20:46:07.43ID:4rMew3mV0 どうせ好き勝手に言語機能使って上がる生産性なんて微々たるもん
966デフォルトの名無しさん (ワッチョイ c778-xLgN)
2021/12/14(火) 23:18:34.83ID:gu+YKYdX0 .net の 1.1 で書くとめちゃくちゃ不便で絶望するぞ
967デフォルトの名無しさん (ワッチョイ a787-3oVZ)
2021/12/14(火) 23:43:50.97ID:5qKKFixV0 linqがある.NET Framework3.5ですら今これでやれって言われたら不便に感じるしなぁ
使えるものは使わせてもらった方が全然楽だわ
使えるものは使わせてもらった方が全然楽だわ
968デフォルトの名無しさん (ワッチョイ 67b0-zDwW)
2021/12/15(水) 08:20:32.57ID:YtxEX99t0 色々使えた方が個人的に楽だと思うのは否定しないが、もっともらしく「生産性が上がる」とか言っちゃうと
意外とそうでもなかったり。
意外とそうでもなかったり。
969デフォルトの名無しさん (ワッチョイ df42-8/hI)
2021/12/15(水) 09:41:14.43ID:flSodCtX0 >>966
特にList<T>が無いのはキツイわ
特にList<T>が無いのはキツイわ
970デフォルトの名無しさん (ワッチョイ e701-zKou)
2021/12/15(水) 12:10:36.77ID:KtX6zlRp0 心配しなくても今どき1.1で書いたり書かされたりすることはないでしょ
971デフォルトの名無しさん (ワッチョイ a790-wtFG)
2021/12/15(水) 16:03:58.38ID:w2vh5jVl0 1.1とか極端すぎるやろ
972デフォルトの名無しさん (ブーイモ MM8f-+2Rn)
2021/12/15(水) 16:14:56.34ID:Jy+USlABM 2.0の知識で止まってるヤツも多いよね
973デフォルトの名無しさん (ワッチョイ 7f33-1bVk)
2021/12/15(水) 16:57:55.56ID:RMHVQ2YW0 さすがに今どきvar使うなとかLINQ使うなとか言われないよね?
974デフォルトの名無しさん (ワッチョイ 67e3-xLgN)
2021/12/15(水) 17:25:02.67ID:ik5KT4gs0 >>973
var使うとわからなくなるというのは名称が明示的になってないだけだと思うわ
var使うとわからなくなるというのは名称が明示的になってないだけだと思うわ
975デフォルトの名無しさん (ブーイモ MM8f-+2Rn)
2021/12/15(水) 17:31:22.22ID:KBNxuXv0M >>974
ハンガリアン記法?
ハンガリアン記法?
976デフォルトの名無しさん (ワッチョイ a701-hqAP)
2021/12/15(水) 18:19:16.59ID:UGnWEqDI0 MS公式はvar推奨してるけどさすがにintとかstringとか基本的な型はvarにはしないな
977デフォルトの名無しさん (ワッチョイ 87da-YqIs)
2021/12/15(水) 21:30:02.16ID:lA94GyTo0 明示的に型を書かないとダメなところ以外全部varで書くよ
978デフォルトの名無しさん (ワッチョイ bfda-0QWB)
2021/12/15(水) 21:44:12.20ID:M2QFYQSl0 最近はnew()で書けるようになったから、極力varはやめてる
Hoge hoge = new();
実装当初の想定通りlinqの戻りくらいかなvar、使うの。
Hoge hoge = new();
実装当初の想定通りlinqの戻りくらいかなvar、使うの。
979デフォルトの名無しさん (ワッチョイ df5b-xLgN)
2021/12/15(水) 23:22:27.06ID:l+MEhncN0 new()使えるのってc#いくつからだっけ
980デフォルトの名無しさん (ワッチョイ 7fbb-Nxno)
2021/12/15(水) 23:43:54.17ID:NZjG441V0 はやくおれのレベルまで上がって来い
上で待ってるぞ
上で待ってるぞ
981デフォルトの名無しさん (ワッチョイ a787-3oVZ)
2021/12/16(木) 00:21:19.35ID:R2Peltay0 new()で書けるようになったけど、コンストラクタで初期設定値渡すようにしちゃうから全然使わんなぁ。
セッター潰してコンストラクタで設定するのが好き
セッター潰してコンストラクタで設定するのが好き
982デフォルトの名無しさん (ワッチョイ df01-JVtf)
2021/12/16(木) 07:48:14.53ID:Ymr34XoE0 >>979
C# 9.0
C# 9.0
983デフォルトの名無しさん (ワッチョイ df10-4iyA)
2021/12/16(木) 09:44:30.84ID:P4pOcLuS0 C#がどんどんボクのしらないものになっていってる
いっそC##やDと名乗っていただきたい
(Dは既にある、は受け付けない)
いっそC##やDと名乗っていただきたい
(Dは既にある、は受け付けない)
984デフォルトの名無しさん (ワッチョイ a701-4A0X)
2021/12/16(木) 10:15:25.85ID:80W3ywqF0 C#に毛が生えた程度だろ
C丼でええがな
C丼でええがな
985デフォルトの名無しさん (ブーイモ MMff-gtpG)
2021/12/16(木) 10:54:52.18ID:Ni3FtdydM c井
986デフォルトの名無しさん (ワッチョイ 7f63-N/e5)
2021/12/16(木) 11:01:26.24ID:DM4zUQcN0 C⛩
987デフォルトの名無しさん (ワッチョイ 87ad-jwmr)
2021/12/16(木) 11:42:40.19ID:plhBUTFD0 C升
988デフォルトの名無しさん (ブーイモ MM8f-+2Rn)
2021/12/16(木) 11:47:41.44ID:e2PzMi3oM >>983
ほんと、氷川きよしくらい変わってしまった
ほんと、氷川きよしくらい変わってしまった
989デフォルトの名無しさん (ワッチョイ 7f33-1tZa)
2021/12/16(木) 23:46:42.90ID:vtDDQtO+0 if(item is {} a){
...
}
null判定でこんな書き方あるんだな。Resharperさんに提案されて初めて知ったわ。
個人的にはあまり使いたくないけど。
...
}
null判定でこんな書き方あるんだな。Resharperさんに提案されて初めて知ったわ。
個人的にはあまり使いたくないけど。
990デフォルトの名無しさん (ワッチョイ 7b24-8o0J)
2021/12/17(金) 00:40:01.77ID:fAwtu2PR0 >>989
それやるとaの色がローカル変数色にならず白のままになるのが不満なんだけど俺の環境だけか?
それやるとaの色がローカル変数色にならず白のままになるのが不満なんだけど俺の環境だけか?
991デフォルトの名無しさん (ワッチョイ 535f-3/1D)
2021/12/17(金) 02:39:12.84ID:KpFo6Hw/0 C林
992デフォルトの名無しさん (ワッチョイ ca2c-TeJl)
2021/12/17(金) 11:21:38.48ID:b89m5ifd0993デフォルトの名無しさん (ワッチョイ 535f-3/1D)
2021/12/17(金) 13:42:40.65ID:KpFo6Hw/0 C極
994デフォルトの名無しさん (ワッチョイ ff6e-n/si)
2021/12/19(日) 09:44:58.73ID:QHfeHH9E0 WinFormsを独学でやっているのですが教えて下さい
そこそこの規模のソフトは作れるようになってますが
VSで開発していくうえで、フォルダ構成ってどう考えればいいですかね
いままではDB関連をDBフォルダ
フォームはFormにまとめてさらにその中に機能別にフォルダを
細かいクラスファイルはClassというフォルダに
DBとの受け渡し(sql書いてFormとの受け渡しModelみたいなもの?)は
Modelというフォルダにまとめています
プロの皆様はチームで作っていかれる際に
会社によりけりかもしれませんが一般的なフォルダ構成の考え方ってあるんでしょうか
そこそこの規模のソフトは作れるようになってますが
VSで開発していくうえで、フォルダ構成ってどう考えればいいですかね
いままではDB関連をDBフォルダ
フォームはFormにまとめてさらにその中に機能別にフォルダを
細かいクラスファイルはClassというフォルダに
DBとの受け渡し(sql書いてFormとの受け渡しModelみたいなもの?)は
Modelというフォルダにまとめています
プロの皆様はチームで作っていかれる際に
会社によりけりかもしれませんが一般的なフォルダ構成の考え方ってあるんでしょうか
995デフォルトの名無しさん (ワッチョイ 5f78-kSWT)
2021/12/19(日) 09:58:37.55ID:eMi6YEPC0 そんなもの存在しないから適当でいいよ
まぁあえて口出しするならFormフォルダはFormクラスと名前が被るからやめとけって位かな
まぁあえて口出しするならFormフォルダはFormクラスと名前が被るからやめとけって位かな
996デフォルトの名無しさん (アウアウウー Sa9f-f5lq)
2021/12/19(日) 10:00:48.95ID:n0pWJPWXa なんのフォルダなのか理解できない
プロジェクト(visual studio上でのプロジェクト)内じゃフォルダ切ることはないな
プロジェクトがある程度大きくなったらクラスライブラリに分ける
プロジェクト(visual studio上でのプロジェクト)内じゃフォルダ切ることはないな
プロジェクトがある程度大きくなったらクラスライブラリに分ける
997デフォルトの名無しさん (ワッチョイ aa89-YeYq)
2021/12/19(日) 10:16:13.92ID:UEQjoSys0 シングルアセンブリ構造なのかな
998デフォルトの名無しさん (ワッチョイ ff6e-n/si)
2021/12/19(日) 10:33:08.48ID:QHfeHH9E0 >>995
そうなんですね、気をつけます
>>996
たとえば画面数でも100超えて、機能部分のClassファイルも100越えてくると
いちいち該当ファイル探すのが面倒でフォルダに分けたって感じです
前はPHPのフレームワークとか触ったときは
たとえばcontroller model viewとフォルダも階層構造みたいになっていて
そういう感覚もあります
チームでやられていると、どこに何のファイルが散らばっているか
わからなくなったりしないのですか? きちんと仕様書があるから関係ないのですかね
やっぱりクラスライブラリ(DLL化?)もちゃんと理解しないと駄目ですよね
一人で作ってるので、DLL化するほうが手間な気がして避けてました
そうなんですね、気をつけます
>>996
たとえば画面数でも100超えて、機能部分のClassファイルも100越えてくると
いちいち該当ファイル探すのが面倒でフォルダに分けたって感じです
前はPHPのフレームワークとか触ったときは
たとえばcontroller model viewとフォルダも階層構造みたいになっていて
そういう感覚もあります
チームでやられていると、どこに何のファイルが散らばっているか
わからなくなったりしないのですか? きちんと仕様書があるから関係ないのですかね
やっぱりクラスライブラリ(DLL化?)もちゃんと理解しないと駄目ですよね
一人で作ってるので、DLL化するほうが手間な気がして避けてました
999デフォルトの名無しさん (アウアウウー Sa9f-f5lq)
2021/12/19(日) 10:44:47.17ID:n0pWJPWXa どこに何がは命名の問題もあるんじゃないかな
classも変数も先頭、末尾にそれが何か分かるように名前つけてるから名前順にソートされてればすぐわかる
classも変数も先頭、末尾にそれが何か分かるように名前つけてるから名前順にソートされてればすぐわかる
1000デフォルトの名無しさん (ワッチョイ aa89-YeYq)
2021/12/19(日) 10:53:09.81ID:UEQjoSys0 >>998
機能ごとにProjectを作るんだよ。
機能ごとにProjectを作るんだよ。
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 1004日 15時間 55分 34秒
新しいスレッドを立ててください。
life time: 1004日 15時間 55分 34秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 中国側が首相答弁の撤回要求、日本側拒否★6 [夜のけいちゃん★]
- 【速報】中国、水産物輸入停止と通達 日本政府に [おっさん友の会★]
- 「厚かましい挑発的発言だ」中国国連大使が高市首相発言に強く反発 日本の常任理事国入りに明確に反対 [ぐれ★]
- 中国の局長は「両手をポケット」で対峙 宣伝戦で国民に示す ★5 [蚤の市★]
- 債券・円・株「トリプル安」に…長期金利1.755%まで上昇、円は対ユーロで史上最安値 ★3 [蚤の市★]
- 自民、経済対策で子ども1人に2万円給付へ 児童手当に上乗せ 所要額は約4000億円 [ぐれ★]
- 【速報】中国、水産物輸入停止 [527893826]
- 【緊急】高市早苗 月内辞任か [695089791]
- 【高市悲報】官房長官「局長がペコペコしてる画像が拡散しているが日本は承知しとらん😡中国に申し入れした!」🤔 [359965264]
- 【悲報】高市早苗さん、たった一人で日本を崩壊へ導く [714769305]
- 僕たちが子供の頃に通い詰めた本屋、ゲームショップ、レンタルCD・ビデオ屋、思い出とともにこの国から消え去ってしまう… [452836546]
- 【速緊急報】中国🇨🇳、水産物を輸入停止にwwwwwwwwwwwwwwwwwwww
