■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/
■コードを貼る場合はこちら
http://ideone.com/
■前スレ
C#, C♯, C#相談室 Part94
http://mevius.2ch.net/test/read.cgi/tech/1492843013/
■次スレは>>970が建てる事
建てられない場合は他を指定する事。
C#, C♯, C#相談室 Part95
■ このスレッドは過去ログ倉庫に格納されています
2017/10/17(火) 04:02:10.51ID:/jJUZ/t7
605デフォルトの名無しさん
2018/03/31(土) 21:12:12.52ID:FNt76Udy 1行でも意図が明確化するならメソッドにする
C++とかやってきた人なら当たり前の感覚なんだけどね
C++とかやってきた人なら当たり前の感覚なんだけどね
606デフォルトの名無しさん
2018/03/31(土) 21:20:51.16ID:FNt76Udy Expression Bodyのプロパティやメソッドがなぜ導入されたのか
1行のプロパティやメソッドはそれだけ使用頻度が高いってこと
1行のプロパティやメソッドはそれだけ使用頻度が高いってこと
607デフォルトの名無しさん
2018/03/31(土) 21:50:23.14ID:lRCajebl バカが書くオブジェクト指向()を舐めるなよ?
あいつら『かめはめ波()』の機能を
か()
め()
は()
め()
波()
にするレベルでバカだからな
あいつら『かめはめ波()』の機能を
か()
め()
は()
め()
波()
にするレベルでバカだからな
608デフォルトの名無しさん
2018/03/31(土) 21:55:29.44ID:+WsDcfNX 意味を理解しておらず側だけ真似するからそうなる
猿は木の実でも取ってろ
猿は木の実でも取ってろ
609デフォルトの名無しさん
2018/03/31(土) 21:57:45.44ID:g9lQ5N9X 独立している機能なら一行でも良いが
一連の塊で動いてる機能を再利用性の欠片もないパーツに切り分ける奴は頭が悪い
しかもその切り分けた関数で他の関数を実行してたらそれはもうただの難読化だ
一連の塊で動いてる機能を再利用性の欠片もないパーツに切り分ける奴は頭が悪い
しかもその切り分けた関数で他の関数を実行してたらそれはもうただの難読化だ
610デフォルトの名無しさん
2018/03/31(土) 23:47:58.41ID:U08lgUq5 >>607-609
バカw
バカw
611デフォルトの名無しさん
2018/04/01(日) 07:17:31.62ID:su2Mei6j >>609
再利用性だけで分けるのは典型的な素人
再利用性だけで分けるのは典型的な素人
612デフォルトの名無しさん
2018/04/01(日) 07:24:17.48ID:su2Mei6j >>606
これが答えだよ
Microsoftや達人プログラマ達は1行メソッドの価値を理解して言語仕様まで変えてしまった
それほどまでに重要なものってことだ
一方で雑魚プログラマのお前らは価値を理解できずにぐちぐちと文句を言う
程度の低さを伺えるね
これが答えだよ
Microsoftや達人プログラマ達は1行メソッドの価値を理解して言語仕様まで変えてしまった
それほどまでに重要なものってことだ
一方で雑魚プログラマのお前らは価値を理解できずにぐちぐちと文句を言う
程度の低さを伺えるね
613デフォルトの名無しさん
2018/04/01(日) 08:28:43.58ID:G1/6VWB7 コメント代わりに関数使う>>611みたいなのが害悪なんだよな
614デフォルトの名無しさん
2018/04/01(日) 08:32:44.17ID:IPSX8M4/ プログラム構造が見渡せる行数になれば、ソレ以上の細分化は無意味なんだけどね
メソッドの分割は中身を理解しやすくするのが最大の目的で、それを阻害するほど分割したら意味がない
メソッドの分割は中身を理解しやすくするのが最大の目的で、それを阻害するほど分割したら意味がない
615デフォルトの名無しさん
2018/04/01(日) 08:45:42.44ID:x6ZL87kc 俺もコメント代わりに分けまくる派
純粋関数で責任が明確なら可読性は上がるよ
純粋関数で責任が明確なら可読性は上がるよ
616デフォルトの名無しさん
2018/04/01(日) 08:59:28.91ID:s6sGDINL 一目見たら分かる処理をオレオレ命名で飛び地化
お一人様開発なら良いがチームでやんなよ
お一人様開発なら良いがチームでやんなよ
617デフォルトの名無しさん
2018/04/01(日) 09:02:43.00ID:QRam8GQ6 void MoveAX(unsigned short val);
618デフォルトの名無しさん
2018/04/01(日) 09:11:29.06ID:su2Mei6j >>613
コードで表現できるものをコメントで書くバカが本物の害悪だよ
コードで表現できるものをコメントで書くバカが本物の害悪だよ
619デフォルトの名無しさん
2018/04/01(日) 09:16:10.30ID:P1fWuhY2620デフォルトの名無しさん
2018/04/01(日) 09:17:34.95ID:G1/6VWB7 >>618
コードで表現出来てることをわざわざ関数名で伝えようとするバカが何だって?
コードで表現出来てることをわざわざ関数名で伝えようとするバカが何だって?
621デフォルトの名無しさん
2018/04/01(日) 09:25:16.65ID:P1fWuhY2622デフォルトの名無しさん
2018/04/01(日) 09:28:59.77ID:s6sGDINL 三行で書かれてるコードならその場でその三行を修正するだけで済むが、
それを三つの関数に分けるとわざわざ別の行までスクロールして修正する作業が三回発生する
どちらが効率的で生産性が高いのか普通なら考えるまでもなく分かることだが、自意識過剰なバカには分からないのかも知れない
何せ自分のことを『達人』とか思い込んでるレベルのバカだし
それを三つの関数に分けるとわざわざ別の行までスクロールして修正する作業が三回発生する
どちらが効率的で生産性が高いのか普通なら考えるまでもなく分かることだが、自意識過剰なバカには分からないのかも知れない
何せ自分のことを『達人』とか思い込んでるレベルのバカだし
623デフォルトの名無しさん
2018/04/01(日) 09:33:48.86ID:su2Mei6j >>620
コードで表現していることを関数名で抽象化するんだよ
抽象化はプログラミングをする上で最上級に重要な概念だけどどうもIQが凡人以下だと理解できないらしい
物事を理解するにはその内容に応じた知能がどうしても必要になる
凡人が数学者や物理学者に成れない
難しい概念がわからないという感覚は人としてどうしようもないものなんだ
だからこのスレにも抽象化がわからない人が居てもおかしくはない
コードで表現していることを関数名で抽象化するんだよ
抽象化はプログラミングをする上で最上級に重要な概念だけどどうもIQが凡人以下だと理解できないらしい
物事を理解するにはその内容に応じた知能がどうしても必要になる
凡人が数学者や物理学者に成れない
難しい概念がわからないという感覚は人としてどうしようもないものなんだ
だからこのスレにも抽象化がわからない人が居てもおかしくはない
624デフォルトの名無しさん
2018/04/01(日) 09:36:24.52ID:fxgoPYx5625デフォルトの名無しさん
2018/04/01(日) 09:38:21.16ID:su2Mei6j >>622
そのコードがなんのためにあるのかということを考える作業が3回も発生する
そのコードを変えて他に影響がないか確かめる作業が3回も発生する
同じことを他の場所でしていないか確かめる作業が3回も発生する
酷い無駄だ
そのコードがなんのためにあるのかということを考える作業が3回も発生する
そのコードを変えて他に影響がないか確かめる作業が3回も発生する
同じことを他の場所でしていないか確かめる作業が3回も発生する
酷い無駄だ
626デフォルトの名無しさん
2018/04/01(日) 09:39:10.89ID:fxgoPYx5 関数化で抽象化はされる
抽象化された関数で何をやってるか詳しく関数名に入れると無意味なことになることもある
むずかしいよね
抽象化された関数で何をやってるか詳しく関数名に入れると無意味なことになることもある
むずかしいよね
627デフォルトの名無しさん
2018/04/01(日) 09:40:28.60ID:s6sGDINL bool IsEmpty() => this.Length == 0;
このレベルの実装であれば何も文句はないが、大半はそうじゃないのが現実
このレベルの実装であれば何も文句はないが、大半はそうじゃないのが現実
628デフォルトの名無しさん
2018/04/01(日) 09:40:36.80ID:x6ZL87kc 適切な直行化ができてれば、一連の処理の流れに関わる多数の関数を一緒に修正するなんてことはそうあるものではない
その程度のスキルレベルなら分け過ぎはよくないのは同意する
その程度のスキルレベルなら分け過ぎはよくないのは同意する
629デフォルトの名無しさん
2018/04/01(日) 09:42:35.89ID:fxgoPYx5 もともと一行関数だったものが徐々に成長していくこともある
でも呼び出し元のコードは変わらない
ロジックが変わってないからね
これは大変素晴らしいことだと思う
でも呼び出し元のコードは変わらない
ロジックが変わってないからね
これは大変素晴らしいことだと思う
630デフォルトの名無しさん
2018/04/01(日) 09:46:33.53ID:x6ZL87kc 十分に責任の明確化ができている関数は中身を見る必要が無くなる
不要になって消すことはあっても中身を弄ることはめったにない
この名前でこの引数を受け取るならこの結果が返るのが当然、と思えるのが正しい関数だ
不要になって消すことはあっても中身を弄ることはめったにない
この名前でこの引数を受け取るならこの結果が返るのが当然、と思えるのが正しい関数だ
631デフォルトの名無しさん
2018/04/01(日) 09:48:36.16ID:G1/6VWB7632デフォルトの名無しさん
2018/04/01(日) 09:52:46.42ID:qsRAuR+m633デフォルトの名無しさん
2018/04/01(日) 09:54:39.84ID:fxgoPYx5 コードを書いてる時点で将来をすべて予見できるような素晴らしい環境にいるならいいけど
大体はそんなことはない
仕様を考えたのが他人であろうと自分であろうと
大体はそんなことはない
仕様を考えたのが他人であろうと自分であろうと
634デフォルトの名無しさん
2018/04/01(日) 10:25:24.90ID:EnMpGyAP635デフォルトの名無しさん
2018/04/01(日) 10:45:43.34ID:EnMpGyAP636デフォルトの名無しさん
2018/04/01(日) 11:56:21.61ID:T3P5Wj+0 巨大整数とか仕様にカスリもしない未来を妄想して複雑化して「これがシンプルなんだよ!」と強弁するとかアホの典型だな
グループ開発の経験もない無職かよ
グループ開発の経験もない無職かよ
637デフォルトの名無しさん
2018/04/01(日) 12:03:50.05ID:EnMpGyAP >>636
一例に過剰反応バカキター
一例に過剰反応バカキター
638デフォルトの名無しさん
2018/04/01(日) 12:12:43.78ID:qPjZABJK 最初から無駄に俺様カスタマイズしたがるのはこじらせたC++erによくあるYAGNIだね
そして、Incrementの例のように基礎的な部分には異常に拘るくせに普通のアプリケーションコード部分は巨大なメソッドを生産する奴が多い
その割にはポインタ演算は大好きで、配列操作になるとウッキウキしてクソ低レベルなアスタリスクと++だらけのコードを垂れ流す
そういう連中だよ
そして、Incrementの例のように基礎的な部分には異常に拘るくせに普通のアプリケーションコード部分は巨大なメソッドを生産する奴が多い
その割にはポインタ演算は大好きで、配列操作になるとウッキウキしてクソ低レベルなアスタリスクと++だらけのコードを垂れ流す
そういう連中だよ
639デフォルトの名無しさん
2018/04/01(日) 12:36:30.52ID:d99K3tnG 昨日からNG大繁盛だわ
640デフォルトの名無しさん
2018/04/01(日) 12:42:38.07ID:5IsFylKp ふらっとも伸びているようだし承認欲求に飢えているアホどもが暴れているのか
641デフォルトの名無しさん
2018/04/01(日) 12:53:48.82ID:EnMpGyAP642デフォルトの名無しさん
2018/04/01(日) 12:59:36.34ID:Q3bP29mI >>641「巨大整数にも対応してるオレ様のフレームワークを使えー!」
643デフォルトの名無しさん
2018/04/01(日) 13:07:10.47ID:wUP/Qru9 どんな面白い問題で盛り上がってるのかと思ったらしょうもな。
(1) 道具が多すぎる道具箱は使いづらい
からと言って
(2) 短すぎるメソッドは「無駄な道具」である
などと言えるわけがない。
そうである場合もない場合もあるに決まってる。
こんなくだらない話でよく盛り上がれるな
(1) 道具が多すぎる道具箱は使いづらい
からと言って
(2) 短すぎるメソッドは「無駄な道具」である
などと言えるわけがない。
そうである場合もない場合もあるに決まってる。
こんなくだらない話でよく盛り上がれるな
644デフォルトの名無しさん
2018/04/01(日) 13:16:23.13ID:Q3bP29mI645デフォルトの名無しさん
2018/04/01(日) 13:24:59.02ID:EnMpGyAP646デフォルトの名無しさん
2018/04/01(日) 13:28:56.88ID:IPSX8M4/ 一つ言えるのは、一行コードをセンスが無いやつが書くとゴミクズになるってことだな
まあ何行でもゴミと言えるかもしれんが、一行のゴミはメンテする時腹が立つ
まあ何行でもゴミと言えるかもしれんが、一行のゴミはメンテする時腹が立つ
647デフォルトの名無しさん
2018/04/01(日) 13:30:25.54ID:EnMpGyAP 1行メソッドの利点を理解できないアホが逆ギレしてるだけのパターンもあるということは忘れないで
648デフォルトの名無しさん
2018/04/01(日) 14:14:15.06ID:tywMjCxA649デフォルトの名無しさん
2018/04/01(日) 14:20:30.29ID:G1/6VWB7 >>645はstrategyも理解してないアホの子だから許してあげて
ただのラッパーを戦略と勘違いしてるなんて、きっと今年の春から働き始める新人だから
ただのラッパーを戦略と勘違いしてるなんて、きっと今年の春から働き始める新人だから
650デフォルトの名無しさん
2018/04/01(日) 14:28:00.99ID:tywMjCxA 上司「なんでこのインクリメントを関数に分けてんの?」
新人「様々な型に対応する為のストラテジです!巨大整数などにも対応できます!」
何というか無能な働き者って言葉がしっくり来るな
たぶんこいつは誰からも理解されずに五月病患って数ヶ月で退職するわ
新人「様々な型に対応する為のストラテジです!巨大整数などにも対応できます!」
何というか無能な働き者って言葉がしっくり来るな
たぶんこいつは誰からも理解されずに五月病患って数ヶ月で退職するわ
651デフォルトの名無しさん
2018/04/01(日) 14:39:00.26ID:yKN9r4eJ インクリメントの(多相じゃなくて正しい意味での)ストラテジって何だろうね
++とInterlocked.Incrementを切り替えるとか?
エイプリルフールネタにもならんな
++とInterlocked.Incrementを切り替えるとか?
エイプリルフールネタにもならんな
652デフォルトの名無しさん
2018/04/01(日) 14:39:37.29ID:gIH0xNQX >>640
春休み
春休み
653デフォルトの名無しさん
2018/04/01(日) 14:47:04.79ID:Huwl0iS3 ここには初心者スレに行ったほうがいいような連中しか居ないようだな
654デフォルトの名無しさん
2018/04/01(日) 15:13:55.41ID:WEVo4Vkx ゆとり世代はなんでも揃ってるところからスタートだから楽でいいよな
iteratorの実装なんて考えたことすらないんだろう
羨ましいよ
iteratorの実装なんて考えたことすらないんだろう
羨ましいよ
655デフォルトの名無しさん
2018/04/01(日) 15:50:22.39ID:3GY4sGoy 老害
656デフォルトの名無しさん
2018/04/01(日) 17:15:29.85ID:4YlUj4T1657デフォルトの名無しさん
2018/04/01(日) 17:31:26.23ID:8TyNtssw 仕様上ありえない予測
それを人は 妄想 と呼ぶのだ
それを人は 妄想 と呼ぶのだ
658デフォルトの名無しさん
2018/04/01(日) 17:45:28.27ID:Ek+Kt6QK 巨大整数対応を勝手に仕様上あり得ないことにしている点
「○○にも対応できるように」の○○に巨大整数を入れるのはあくまで一例であり他にも山ほどあり得る点
この辺りが問題かな
言われた通りの物を納品すればいい所謂IT土方系の環境なら問題にならないんだろうけど
「○○にも対応できるように」の○○に巨大整数を入れるのはあくまで一例であり他にも山ほどあり得る点
この辺りが問題かな
言われた通りの物を納品すればいい所謂IT土方系の環境なら問題にならないんだろうけど
659デフォルトの名無しさん
2018/04/01(日) 17:47:21.74ID:Aa3HndXz660659
2018/04/01(日) 17:49:35.48ID:Aa3HndXz すまん訂正
パラメータ多相じゃなくてアドホック多相だな
パラメータ多相じゃなくてアドホック多相だな
661デフォルトの名無しさん
2018/04/01(日) 17:49:42.89ID:Ca3RLpqD この手のっていつも「自分の前提」の元に議論初めてかみ合わないんだから止めとけよ
ネタが下らないことだし、そんなことにこだわるしかやることないのかよ
ネタが下らないことだし、そんなことにこだわるしかやることないのかよ
662デフォルトの名無しさん
2018/04/01(日) 17:53:38.19ID:8TyNtssw int型をBigInt型に切り替える必要が生じたとして、
型宣言から書き直さないといけないのにインクリメントを分離しておいて何が効率化できたというのかと
そもそもオブジェクト指向に則ればその型自体にインクリメントを備えるだろっていう
現実に設計したこともない新人が本の知識で言ってるだけだなこりゃ
型宣言から書き直さないといけないのにインクリメントを分離しておいて何が効率化できたというのかと
そもそもオブジェクト指向に則ればその型自体にインクリメントを備えるだろっていう
現実に設計したこともない新人が本の知識で言ってるだけだなこりゃ
663デフォルトの名無しさん
2018/04/01(日) 18:21:49.73ID:8TyNtssw 正しい設計
INum num = new Num()
// INum num = new BigNum() ←クラス名を変えるだけ
num++ ←機能は型で規格化されてるので変更無用
間違った設計
Num num = new Num()
// BigNum num = new BigNum() ←型から変える必要がある
Increment(ref num) ←何これ?
void Increment(ref Num n) 処理
void Increment(ref BigNum n) 処理
↑型の数だけオーバーロードする必要がある
INum num = new Num()
// INum num = new BigNum() ←クラス名を変えるだけ
num++ ←機能は型で規格化されてるので変更無用
間違った設計
Num num = new Num()
// BigNum num = new BigNum() ←型から変える必要がある
Increment(ref num) ←何これ?
void Increment(ref Num n) 処理
void Increment(ref BigNum n) 処理
↑型の数だけオーバーロードする必要がある
664デフォルトの名無しさん
2018/04/01(日) 18:47:25.76ID:IPSX8M4/ どーでもいいことかもしれんが、セミコロンがないのが凄く気になる
665デフォルトの名無しさん
2018/04/01(日) 19:40:56.03ID:WEVo4Vkx >>660
はぁ? どう見てもストラテジだろカス
void func<T>(T mi, T mx, FuncObj<T> increment) {
for(T i = mi; ! i.Equals(mx); increment.Exec(i)) {
//
}
}
class BigIntIncrent : FuncObj<BigInt> {
public Exec(ref BigInt x) {
x = x.Add(1);
}
}
はぁ? どう見てもストラテジだろカス
void func<T>(T mi, T mx, FuncObj<T> increment) {
for(T i = mi; ! i.Equals(mx); increment.Exec(i)) {
//
}
}
class BigIntIncrent : FuncObj<BigInt> {
public Exec(ref BigInt x) {
x = x.Add(1);
}
}
666デフォルトの名無しさん
2018/04/01(日) 19:44:56.66ID:WEVo4Vkx667デフォルトの名無しさん
2018/04/01(日) 20:02:44.23ID:c1epJvM3 >>665
惜しい。一旦クールダウンしてよく考えよう。
同じ入力(コンテキスト)に対して複数のStrategyを定義し、状況によって使い分けるのがStrategyパターンだ。
一方incrementの場合、実装は入力の型に応じて一意に決まるだろ?「同じ入力」に対して複数の実装があるわけじゃない。
そういう、引数の型に応じて静的に実装を選択するのを一般に「多相」という。
特に、君のコードは関数型言語で型クラスと呼ばれるものに近い。ググってみると勉強になるよ。
惜しい。一旦クールダウンしてよく考えよう。
同じ入力(コンテキスト)に対して複数のStrategyを定義し、状況によって使い分けるのがStrategyパターンだ。
一方incrementの場合、実装は入力の型に応じて一意に決まるだろ?「同じ入力」に対して複数の実装があるわけじゃない。
そういう、引数の型に応じて静的に実装を選択するのを一般に「多相」という。
特に、君のコードは関数型言語で型クラスと呼ばれるものに近い。ググってみると勉強になるよ。
668デフォルトの名無しさん
2018/04/01(日) 20:08:31.72ID:WEVo4Vkx >>667
1つ飛ばしでイテレートしたい場合とか同じ型でも幾らでもバリエーションは考えられるわけだがわかんねえだろうな用意されたもの使うだけのゆとりには
1つ飛ばしでイテレートしたい場合とか同じ型でも幾らでもバリエーションは考えられるわけだがわかんねえだろうな用意されたもの使うだけのゆとりには
669デフォルトの名無しさん
2018/04/01(日) 20:10:41.80ID:PinoCRrg670デフォルトの名無しさん
2018/04/01(日) 20:13:25.61ID:WEVo4Vkx671デフォルトの名無しさん
2018/04/01(日) 20:20:07.28ID:PinoCRrg >>670
funcって何?
funcObjって何?
miって何?
mxって何?
Execって何?どういう機能?
BigIntでAdd?コレクションなん?
パッと見ただけでこれだけ疑問が湧くんだが、
プログラマ百人に聞いたら百人が死ねって返すレベルのクソだぞこれ
命名だけでバレる実力なら無理して書くなよ
funcって何?
funcObjって何?
miって何?
mxって何?
Execって何?どういう機能?
BigIntでAdd?コレクションなん?
パッと見ただけでこれだけ疑問が湧くんだが、
プログラマ百人に聞いたら百人が死ねって返すレベルのクソだぞこれ
命名だけでバレる実力なら無理して書くなよ
672デフォルトの名無しさん
2018/04/01(日) 20:22:40.27ID:c1epJvM3673デフォルトの名無しさん
2018/04/01(日) 20:25:32.72ID:WEVo4Vkx 文脈読めない、中心になってる話題を理解して枝葉末節を気にしない、っての実践するにもある程度の知能が必要なんだろうなー
そういうの苦手な人ってミーティングの時とか相当鬱陶しがられてると思うから注意したほうがいいよ
そういうの苦手な人ってミーティングの時とか相当鬱陶しがられてると思うから注意したほうがいいよ
674デフォルトの名無しさん
2018/04/01(日) 20:28:38.03ID:G1/6VWB7 >>665
これforでローカルに代入してるが値型のつもりなのか?
これforでローカルに代入してるが値型のつもりなのか?
675デフォルトの名無しさん
2018/04/01(日) 20:30:19.04ID:Aa3HndXz676デフォルトの名無しさん
2018/04/01(日) 20:35:04.55ID:WEVo4Vkx677デフォルトの名無しさん
2018/04/01(日) 20:40:22.21ID:WEVo4Vkx >>672
ジェネリックかどうかは関係ない話だろ
この例も仮にスクリプト言語だったら型引数は無くても動作する
たまたま型の指定が必要な言語を例に使ったからジェネリックになっているだけ
しかしそのエッセンス自体は何も変わってない
まずはそこを理解しよう
ジェネリックかどうかは関係ない話だろ
この例も仮にスクリプト言語だったら型引数は無くても動作する
たまたま型の指定が必要な言語を例に使ったからジェネリックになっているだけ
しかしそのエッセンス自体は何も変わってない
まずはそこを理解しよう
678デフォルトの名無しさん
2018/04/01(日) 20:54:39.80ID:G1/6VWB7679デフォルトの名無しさん
2018/04/01(日) 20:55:42.47ID:WEVo4Vkx680デフォルトの名無しさん
2018/04/01(日) 20:59:08.51ID:WEVo4Vkx681デフォルトの名無しさん
2018/04/01(日) 21:00:23.18ID:GxluVQTa682デフォルトの名無しさん
2018/04/01(日) 21:03:04.23ID:G1/6VWB7683デフォルトの名無しさん
2018/04/01(日) 21:04:15.87ID:WEVo4Vkx >>682
君は論外なのでまた今度な
君は論外なのでまた今度な
684デフォルトの名無しさん
2018/04/01(日) 21:11:29.38ID:G1/6VWB7 そもそも関数の細分化は可読性を損ねるって話なのに、
抽象的で省略しまくりの名前付けてる時点でな
設計に口出すのは十年早いと思うわ
抽象的で省略しまくりの名前付けてる時点でな
設計に口出すのは十年早いと思うわ
685デフォルトの名無しさん
2018/04/01(日) 21:17:25.87ID:GxluVQTa どうでも良いが>>665をよく見るとこいつrefの使い方すら知らないど素人くさいな
値次第でループバグ起こす構造だしこんなコード実務で仕込まれたら俺ならテロ認定する
値次第でループバグ起こす構造だしこんなコード実務で仕込まれたら俺ならテロ認定する
686デフォルトの名無しさん
2018/04/01(日) 21:22:05.92ID:WEVo4Vkx687デフォルトの名無しさん
2018/04/01(日) 21:24:13.70ID:GxluVQTa 本気で書いたコード貶されたら
「あれは手抜きだからw」と言い出す
まあリアルにいるよな
「あれは手抜きだからw」と言い出す
まあリアルにいるよな
688デフォルトの名無しさん
2018/04/01(日) 22:24:04.17ID:HDWO3ua8 ミーティングとか言い出して露骨に話題を避けようとしてるの笑える
689デフォルトの名無しさん
2018/04/02(月) 09:41:43.90ID:OHYuqcPP 皆Do()にすればええんや
690デフォルトの名無しさん
2018/04/04(水) 16:05:17.38ID:h/TS8w43 stringが参照型ってことはさ
string str;
void Reset() => str = "";
とするより
string str;
string None = "";
void Reset() => str = None;
と生成済みのテキストを使い回した方が効率良いの?
string str;
void Reset() => str = "";
とするより
string str;
string None = "";
void Reset() => str = None;
と生成済みのテキストを使い回した方が効率良いの?
691デフォルトの名無しさん
2018/04/04(水) 16:35:31.54ID:huLwCiLW String.Empty
692デフォルトの名無しさん
2018/04/04(水) 18:12:04.75ID:v0eOpRGB str =null;
ってやってたは・・・
ってやってたは・・・
693デフォルトの名無しさん
2018/04/04(水) 18:30:15.85ID:K+0BZuJc >>692
null代入するのはC#8.0で警告対象
null代入するのはC#8.0で警告対象
694デフォルトの名無しさん
2018/04/04(水) 20:17:49.55ID:dY0QYfwJ >>690 変わらないと思われ
string Func0(){return "test";}
string Func1(){return "test";}
string Func2(){return "te"+"st";}
string Func3(){return "TEST".ToLower();}
string a=Func1(), b=Func2();
Console.WriteLine(Object.ReferenceEquals(a,b));
string Func0(){return "test";}
string Func1(){return "test";}
string Func2(){return "te"+"st";}
string Func3(){return "TEST".ToLower();}
string a=Func1(), b=Func2();
Console.WriteLine(Object.ReferenceEquals(a,b));
695デフォルトの名無しさん
2018/04/04(水) 21:03:49.28ID:jN80m2St >>694が何を言いたいのかまるで理解できない
696デフォルトの名無しさん
2018/04/04(水) 22:46:17.62ID:v0eOpRGB697デフォルトの名無しさん
2018/04/04(水) 22:48:58.58ID:qPaa0JsU >>690
これILはどっちも一緒の結果にならないのかね
これILはどっちも一緒の結果にならないのかね
698デフォルトの名無しさん
2018/04/04(水) 22:59:51.77ID:T8BktjHU >>696
またvs2013使ってんの?
またvs2013使ってんの?
699デフォルトの名無しさん
2018/04/04(水) 23:47:32.40ID:v0eOpRGB700デフォルトの名無しさん
2018/04/05(木) 03:02:50.85ID:cEKXRYXO C#ってどんどん惨くなってねーか。業務じゃもう使えないだろ。
701デフォルトの名無しさん
2018/04/05(木) 08:16:57.82ID:G4evJUNh アメリカではソフトウェアの内製化やクラウド化により、
ソフトウェアは自己責任でどんどんリリースできるようになってるの
自己責任ならデグレ出したらこっそり直してすぐにリリースしちゃえばいいの
SI型ビジネスとは違い、過剰にリスクを避ける必要がない
VSやC#もそういう変化に適応して開発やリリースのポリシーが変わってしまった
もうジャップランドのSIでは使えないよ
ソフトウェアは自己責任でどんどんリリースできるようになってるの
自己責任ならデグレ出したらこっそり直してすぐにリリースしちゃえばいいの
SI型ビジネスとは違い、過剰にリスクを避ける必要がない
VSやC#もそういう変化に適応して開発やリリースのポリシーが変わってしまった
もうジャップランドのSIでは使えないよ
702デフォルトの名無しさん
2018/04/05(木) 09:34:30.77ID:ywrxikBc ジャップ式業務かぁ…
703デフォルトの名無しさん
2018/04/05(木) 14:08:48.47ID:d442a5v8 >>700
おじいちゃんには無理かな
おじいちゃんには無理かな
704デフォルトの名無しさん
2018/04/05(木) 14:24:27.07ID:nTjyMSuJ >>700
具体的にどこがそうなのか教えて
具体的にどこがそうなのか教えて
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【音楽】Perfume・あ~ちゃんの結婚相手「一般男性」は吉田カバンの社長・吉田幸裕氏(41) 高身長で山本耕史似 [Ailuropoda melanoleuca★]
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★4 [ぐれ★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- アンケート調査で「高市発言は問題なし」 93.5%wwwwwwwwwwwwwwwwwwwwwwwww [279254606]
- 生活保護の受給額ってなんでこんなに安いの?
- お前らは“スカイマイルタワー”建設計画を知っているか?
- これ誰か分かるか?
- 支払い詰まってインターネット止まった
- 万引きJC「すいません許してください!何でもしますから!」←どうする?
