C#, C♯, C#相談室 P ..
[2ch|▼Menu]
469:デフォルトの名無しさん
18/02/25 22:44:37.57 /V/K592r.net
わろたw

470:デフォルトの名無しさん
18/02/27 17:48:42.95 13IE3Bsp.net
C#と.NET Frameworkの標準ライブラリだけでFAX処理ってできます?

471:デフォルトの名無しさん
18/02/27 17:52:02.30 APwKcPC3.net
>>459
+COM
URLリンク(www.atmarkit.co.jp)

472:デフォルトの名無しさん
18/02/27 18:01:04.49 13IE3Bsp.net
>>460
ありがとうございます

473:デフォルトの名無しさん
18/02/27 18:30:04.39 u9k8VAiO.net
Twilioみたいなサービス使っといたほうが楽なんじゃないの
URLリンク(www.twilio.com)

474:デフォルトの名無しさん
18/02/28 13:36:35.51 jFR7B9Xf.net
外部ネットワークに繋がる環境で動かす前提とは限らないしなぁ

475:デフォルトの名無しさん
18/03/01 18:12:32.03 InHAxY2J.net
FAXどころかプリンタすらC#使ってやるのは不安になるなあ
趣味レベルでちょっとしたツール作る分には楽でいいんだけど

476:デフォルトの名無しさん
18/03/01 18:30:12.23 TkS26rJb.net
ソースコード読めば、C#ってこんなもんかって安心できるぞ

477:デフォルトの名無しさん
18/03/01 18:44:52.54 InHAxY2J.net
>>465
何のソースコードを読むんだよ
WinAPIやCOM使ってできることならなんでもOKって知っていればどうでもいい


478:



479:デフォルトの名無しさん
18/03/01 19:41:20.70 9vmNr5/a.net
>>465
おれのコードみたらチビるぞ

480:デフォルトの名無しさん
18/03/01 21:48:54.49 U+1QZYaU.net
>>466
何のソースってC#のライブラリのソースだよ
>WinAPIやCOM使ってできることならなんでもOKって知っていればどうでもいい
だったらなんで不安になるんだ?

481:デフォルトの名無しさん
18/03/01 23:24:48.75 3FYR9rwV.net
芥川龍之介の念波、我が身に降臨せり
「何か僕の将来に対する唯ぼんやりとした不安である」

482:デフォルトの名無しさん
18/03/01 23:36:13.06 q/FX+WiY.net
>>469
不安とか言ってないでさっさと邪宗門の続き書いて

483:デフォルトの名無しさん
18/03/05 13:23:13.01 l4Ar7Pba.net
この板には羅生門に登場するような地獄の住人・魑魅魍魎が跋扈してるな

484:デフォルトの名無しさん
18/03/07 22:06:45.02 Pj1Iykvq.net
仕事の多いプログラミング言語のリスト
URLリンク(www.publickey1.jp)
C# 意外と頑張ってた

485:デフォルトの名無しさん
18/03/11 17:31:40.59 YfOd2t8w.net
LINQのWhereで
匿名関数に渡されるエンティティを他のメソッドに渡したりするとOneToManyを使う条件が動かない
これに気付かず小一時間無駄にした
エンティティの代わりにIQueryableを渡すことにした
こっちの方が書きやすいし条件を再利用出来る

486:デフォルトの名無しさん
18/03/11 17:32:53.26 YfOd2t8w.net
LINQというか
Entity Framework Coreのデータベースにクエリーする時のLINQ

487:デフォルトの名無しさん
18/03/11 20:22:34.72 H7ZYGUBL.net
C#だと、C++同じように書いてもずっと遅くなることがある。
それにメモリを多く食う傾向も。GCはどのタイミングではいるか分からないから、
スクロールの途中で入った場合は、まるでPC-8801のBASICで書いたプログラム
のように素人っぽいアプリになる。C++が使える人が使うのは推奨しない。

488:デフォルトの名無しさん
18/03/11 20:39:40.90 QedwXA9H.net
GCは強制起動出来るよ

489:デフォルトの名無しさん
18/03/11 21:06:45.00 dxsKvpqu.net
C#はC++と違って速さではなく信頼性に重きを置いてるから仕方ないね
インスタンスはともかくアンマネージリソースは明示的に破棄するとか
ファイナライザ任せにしない等の言語に合わせた組み方をする他ない

490:デフォルトの名無しさん
18/03/11 21:37:01.15 3mhDegoW.net
C++経験者でC#のパフォーマンスが落ちたり不安定になる人は、そもそもC++自体のスキルが低いと思う
関数ポインタとか仮想関数とかちゃんと使えないんじゃないかな

491:デフォルトの名無しさん
18/03/12 00:27:58.41 BncytV2T.net
>>478
unsafe突入コストはどうにもならん。そんなことも分からないのはC#を碌に使ってないから。

492:デフォルトの名無しさん
18/03/12 01:14:18.76 reAzDpON.net
>>475
ちょっと工夫すれば避けられる場合も多いし、C++に戻りたくは無いなぁ。
どうにもならない場合はスピードが必要な部分だけC++にするけど。

493:デフォルトの名無しさん
18/03/12 01:30:27.94 f8Jdq3W8.net
>>479
unsafeはオーバーヘッド無いぞ
アンマネージコードとごっちゃになってるのかな?
C#を碌に使ってる人の言うことは違うね

494:デフォルトの名無しさん
18/03/12 01:37:18.32 P6b6g7+Q.net
C#のunsafeは使い勝手が悪いから使わないな
デバイス制御とかでポインタが必要ならC++でDLL化して、C#側はDllImportするだけだし
C++をちゃんと分かっている人なら大抵参照渡しで済ませるから、ポインタ使う必要ないよね
あとはWindowsAPIのDLLをそのままC#側に


495:Importする手もある C++の関数コールバックもC#側のdelegateで問題なく使える



496:デフォルトの名無しさん
18/03/12 01:37:30.03 uT1SaU/h.net
unsafeは不当に忌避されすぎだと思う
IntPtrとかいう実質void*を駆使したコードなんて、unsafeよりよっぽど危険だわ
ちょうど479のように、unsafeコード=アンマネージコードという誤解も未だに根強いし

497:デフォルトの名無しさん
18/03/12 01:42:33.80 BncytV2T.net
>>481
意味すら分からないレベルか。馬鹿は黙ってたほうがいい。

498:デフォルトの名無しさん
18/03/12 01:49:12.81 BncytV2T.net
>>483
unsafe突入コスト → unsafeコード=アンマネージコード
おまえもか。脳みそに蛆でも沸いてるかと思うレベルの理解力。ほんと馬鹿は黙ってたほうがいい。

499:デフォルトの名無しさん
18/03/12 02:24:49.22 FoqPWURs.net
頭おかしい御仁、こっちにも湧いてござるなw
無益だから相手にしない方がいいよ

500:デフォルトの名無しさん
18/03/12 02:45:03.01 lJzmIQcw.net
「unsafe突入」がオレオレ定義で具体的にどこかを示さず逃亡するに一票

501:デフォルトの名無しさん
18/03/12 02:47:16.72 BncytV2T.net
> unsafeはオーバーヘッド無いぞ
> unsafeコード=アンマネージコードという誤解
こんな馬鹿レスしたあとにくだらない煽りか。低スキルにもほどがあるな。>>486

502:デフォルトの名無しさん
18/03/12 02:49:20.10 BncytV2T.net
必死にID変えて連投してるからいつもの知ったか馬鹿だな。
相手にした俺が馬鹿だったわ。

503:デフォルトの名無しさん
18/03/12 03:14:21.90 P6b6g7+Q.net
C++で内部のメモリ構造を考えていない人がC#を使うと
パフォーマンス落ちて不安定なコードになりやすい、っていう話なのに
なんでC#でunsafe使う前提になっているんだろう?

504:デフォルトの名無しさん
18/03/12 04:04:12.03 d+06kn2K.net
>>487
正解だったな

505:デフォルトの名無しさん
18/03/12 07:51:54.36 rE/nU/YS.net
>>490
内部のメモリ構造てw
お前c++使えんやろ何の勘違いしとるんやw

506:デフォルトの名無しさん
18/03/12 08:10:00.64 GwE+AuLl.net
>>478
自分はC++の仮想関数も関数ポインタも難なく使ってる。そして、C#は自分では使った
事が無い。でも、他人が作った.Net製のアプリを見て余りの遅さに.Netが普及しては
困ると思った。Vectorに登録されてるアマチュアのC/C++のプログラムでも見たことがない
ような遅さの.Netのプログラムをハードウェアメーカーが付属品として付けて来る。プロ
なのに。

507:デフォルトの名無しさん
18/03/12 08:46:33.45 9PWcyUIz.net
そりゃ単に作った奴の所為じゃないか…プロなんて生業というだけで
プログラマーと呼べない連中など腐るほど居るし、門戸が広ければ蔓延るであろう
JITコンパイルとか境界チェックとかコードセキュリティとかオーバーヘッドは有るけどさ

508:デフォルトの名無しさん
18/03/12 08:57:44.74 plqQ8wmf.net
XNAでゲーム作ってキャラクター10万個くらい出してもほとんど処理落ちしなかったのに
まともにコード書いた普通のソフトでそうそう遅くなるとは思えん

509:デフォルトの名無しさん
18/03/12 09:06:37.07 GwE+AuLl.net
.Netは間に色々入るのでCPUキャッシュの効きが悪くなり、キャッシュの多いCPUでは
C++のNative Binaryの2.5倍程度の遅さで済んでもキャッシュの少ないCPUでは急激に
遅くなる可能性があるかも。キャッシュミスがあると、数千クロックのオーバーヘッドが
生じるので、C++の1000倍くらい遅くなる可能性がある。

510:デフォルトの名無しさん
18/03/12 14:28:01.77 xyn+f+Wo.net
仮設かよ

511:デフォルトの名無しさん
18/03/12 14:46:41.65 k3pgtcbk.net
ロクに使ったこともない人がドヤ顔で解説とかシビレル

512:デフォルトの名無しさん
18/03/12 19:14:04.76 HQXq1VOq.net
エビデンスよろしく
URLリンク(stat.ameba.jp)


513:mages/20180105/17/genten-nippon/2b/2b/j/o0640041414105871600.jpg



514:デフォルトの名無しさん
18/03/13 07:50:28.81 +XE+Afrc.net
[間違い(または嘘つき)記事発見]
以下のリンク先の速度比較で、C# では言語Nativeな配列を使っているのに、
C++では、std::unique_ptr<> を使ってしまっている。そもそも、C/C++は、
高級アセンブラみたいなものだから、書き方を間違わない限りは、C#より遅くなる
はずがない。

「C#がC++より高速になった?」:
URLリンク(qiita.com)
C#
static void setLargeArrayManaged1()
{
var aArray = new byte[kCountLai];
・・・
C++
void setLargeArray()
{
std::unique_ptr<byte[]> aArray(new byte[kCountLai]);
・・・
公平に比較したいなら、以下のようにすれば良いだけ。こっちの方がC#と
ソースレベルでも似ている。この著者は馬鹿としか言いようがない:
C++
void setLargeArray()
{
byte *aArray = new byte[kCountLai];
・・・
delete [] aArray;

515:デフォルトの名無しさん
18/03/13 12:49:47.67 0AKEomVw.net
LINQは便利だけど落とし穴も多い
でも便利過ぎて手放せない

516:デフォルトの名無しさん
18/03/13 13:44:03.70 +U2STTxk.net
Linqは裏側の動作までイメージ出来ないと簡単ゴミ作れちゃうのよねん

517:デフォルトの名無しさん
18/03/13 14:26:57.36 uXOwNEDw.net
LINQだけでググるとこれが出てきてしまう。
LinQ(リンク)は日本の福岡県福岡市を拠点に活動しているローカルアイドルグループ。
この項目では、女性アイドルのローカルグループ LinQについて説明しています。
統合言語クエリ LINQについては「統合言語クエリ」を、その他のLINQについては「リンク」をご覧ください。

518:デフォルトの名無しさん
18/03/15 01:43:05.50 YiCrPUAa.net
C#が遅くないとか言ってる奴に限ってアセンブラ経験がない。C#信者はVB厨とJava厨と同じレベル。

519:デフォルトの名無しさん
18/03/15 01:47:13.82 4jj+grnq.net
Comparing AWS Lambda performance of Node.js, Python, Java, C# and Go
URLリンク(read.acloud.guru)
C# 速いな

520:デフォルトの名無しさん
18/03/15 02:23:16.87 +SvmgWRO.net
設計思想が異なる対象まで遅いだの速いだの言語価値はそれだけかよ
ソースが同じなら処理も同じなんて考えるのが居たらdでもない事だ
C#やILのコンパイラに瑕疵があるのなら然るべき所へ報告すれば良い

521:デフォルトの名無しさん
18/03/15 03:03:25.25 UwWhGCcA.net
>>504
超高速なマシン語で開発しとけよガイジ

522:デフォルトの名無しさん
18/03/15 07:41:56.53 Q6W0fGhF.net
>>505
AWS Lambda使ったことないと誤解を生みそうな記事だなこれ
Lambdaのランタイムのオーバーヘッドを測ってるだけで、実質的なコードの実行時間はほとんど関係ないよこれ

523:デフォルトの名無しさん
18/03/17 01:17:02.15 NeV8ANw7.net
プログラムを書いていてちょっと迷ってると、VisualStudioがメソッド等について説明の吹き出しみたいなのを出してくれるけどさあ
あそこに出てくる説明の文章部分ってどうやって作るの?

524:デフォルトの名無しさん
18/03/17 01:18:52.24 qzfhHg+K.net
tooltipの事?

525:デフォルトの名無しさん
18/03/17 01:26:03.86 LbOoWZIr.net
>>509
xmlドキュメント?

526:デフォルトの名無しさん
18/03/17 01:44:41.89 VX3j/MIW.net
>>509
URLリンク(uf)


527:cpp.net/study/csharp/sp_xmldoc.html



528:デフォルトの名無しさん
18/03/17 12:57:36.02 AuL8ibAm.net
さすがにアセンブラ経験なしでここで相談に答える馬鹿はいないだろ。ILだってまともに読めないだろうし。

529:デフォルトの名無しさん
18/03/17 14:22:18.54 Y3xdMG3N.net
どうしたの?一昨日のことでまだ言いたいことあった?ガイジ

530:デフォルトの名無しさん
18/03/17 19:16:22.31 4XbNNMEi.net
>>509
メソッドの1つ手前の行でスラッシュ三回打ってワンと言え

531:デフォルトの名無しさん
18/03/17 22:52:59.91 OInIw7xo.net
>>509
シフト押しながら7を三回押したらでてくるやつの話?

532:デフォルトの名無しさん
18/03/17 23:09:46.68 l2pujlF8.net
>>509に対する回答が>>510>>515以外全く意味が分からない
>>515が正解だと思うけど、どっちにしてもスレ違いだし

533:デフォルトの名無しさん
18/03/18 00:06:39.69 Yx6XHCxq.net
1レスに3個以上安価入れるのは行儀が悪いってママに叱られなかった?

534:デフォルトの名無しさん
18/03/18 00:08:59.62 kMXsuFsK.net
3つ以上だと問題が起こる駄ブラウザでもあるん?

535:デフォルトの名無しさん
18/03/18 00:14:40.74 Yx6XHCxq.net
キチガイが安価多用するからキチガイっぼく見えるよというお話

536:デフォルトの名無しさん
18/03/18 00:15:49.92 ULS2GM0V.net
スレ違いのレス2つ以上書くなよ

537:デフォルトの名無しさん
18/03/18 00:19:02.80 Yx6XHCxq.net
なんだキチガイか

538:デフォルトの名無しさん
18/03/18 00:20:42.25 1gnxon3r.net
タグが増えると容量が増えてgzip圧縮に対応してへんブラウザやとしんどいねん
VBコンポーネント使ってるやつとかな

539:デフォルトの名無しさん
18/03/18 04:21:02.43 0739sMkh.net
>>523の説明を聞いて納得。
>>520は頭と性格が悪そうだと思った。

540:デフォルトの名無しさん
18/03/18 11:58:49.54 2li7pbtU.net
ReSharper入れると作業が捗るな。

541:デフォルトの名無しさん
18/03/18 13:01:57.77 DhSuPqdW.net
規模が大きくなるとただでさえVS重くなるのにReSharper有効にしてると耐えられないレベルになる
VSCodeのC#サポートがもうちょっと賢くなれば移行したい

542:デフォルトの名無しさん
18/03/18 18:17:47.26 bDhKVFUs.net
>>526
2017で軽くなるかもと期待したが、うpデートする度に重くなっていくような。
Sharp

543:デフォルトの名無しさん
18/03/18 18:26:43.73 KauCIn4D.net
x神の祟りかな

544:デフォルトの名無しさん
18/03/18 18:33:32.82 3rZawihe.net
>>527
大きなソリューションの読み込みはUpdateごとに確実に速くなってるけどね

545:デフォルトの名無しさん
18/03/20 19:30:26.84 rPhsTqGQ.net
forループとEnumerable.Rangeでループするのどっちが速いの?

546:デフォルトの名無しさん
18/03/20 19:58:41.25 WKMovADU.net
>>530
for

547:デフォルトの名無しさん
18/03/20 20:01:23.98 aOGzzC7a.net
理屈的にはmovenextとget_Currentの呼び出しコスト分遅いんだっけか?

548:デフォルトの名無しさん
18/03/25 17:37:06.67 Kz38QhUD.net
>>530
この理由で頑なにfor使っている人居るけど、100万回でms単位の差で選ぶとか阿呆としか思えない

549:デフォルトの名無しさん
18/03/25 18:00:33.42 CFRLNyhX.net
業務系c#開発でgitって使えるもん?
開発規模が社内だけなら面倒なだけな気がするんだけど、シェア考えると今からsvnは無い気もして

550:デフォルトの名無しさん
18/03/25 18:03:54.82 a4i6A50g.net
svnが選択肢になるわけないだろ

551:デフォルトの名無しさん
18/03/25 18:07:16.70 Kz38QhUD.net
GitHubなら賛否あるけど、Gitなら迷わず使えばよくね

552:デフォルトの名無しさん
18/03/25 18:51:32.94 5W/AOyKW.net
ギョーミーは50万年くらい遅


553:黷トそうでいいよな まだ旧人類やってても優秀な方にランキングされるようだぜ



554:デフォルトの名無しさん
18/03/25 19:19:43.57 Ol/c1EKt.net
業務系は下請けに出さないとgitサーバーも立てられないからな
世界的に有名な大企業でもまじでそんな感じ

555:デフォルトの名無しさん
18/03/25 19:45:22.41 B8f0LaKL.net
RCSお勧め

556:デフォルトの名無しさん
18/03/25 20:05:33.13 odk6l6pL.net
おれの会社svn使っててわろたぁぁぁぁ

557:デフォルトの名無しさん
18/03/25 20:43:54.92 i4WOJiDa.net
いまの若い子はSVNの使い方知らないからやめといたほうがいいよ
Gitにしか出来ないと思い込んでるから何も努力しなくなってるしな
Git一択だわ

558:デフォルトの名無しさん
18/03/26 00:42:43.54 /vsZTBgt.net
若い人は○○系の話って大抵若い人がそれを必要とする時点で絶滅しかかってるんだから知らなくて当たり前なんだよね
だからむしろ知ってた時に驚くのが普通なのになぜか知らないことに驚くというのが意味不明

559:デフォルトの名無しさん
18/03/26 09:43:42.51 8YZVU2Fa.net
中小業務系とか素人スタートが数年居ればベテラン扱い
gitどころかバージョン管理?なにそれおいしいの?状態

560:デフォルトの名無しさん
18/03/26 11:34:22.38 9jkESE5u.net
ってことは一々コピーを全部残してるのかな

561:デフォルトの名無しさん
18/03/26 12:31:10.66 4B0nX6es.net
ソルーションZIP固め
正直、個人プレーならこれが一番わかりやすくて安心

562:デフォルトの名無しさん
18/03/26 13:27:04.15 8YZVU2Fa.net
そんな連中にgit使わせようたぁ

563:デフォルトの名無しさん
18/03/26 18:14:54.05 8YtYtYXk.net
>>533
ゆとり馬鹿はほんと数学ができないんだな。

564:デフォルトの名無しさん
18/03/26 18:59:11.81 2N4AiZYB.net
>>547
お前義務教育も受けて無さそうだな

565:デフォルトの名無しさん
18/03/26 19:03:58.27 +hE5FNBB.net
ゴリラに義務教育はないだろw

566:デフォルトの名無しさん
18/03/26 19:10:15.04 8YtYtYXk.net
>>548
>、100万回でms単位の差で選ぶとか阿呆としか思えない
おまえも仕事したことない無職なんだろうけど、リアルな話、
こんな馬鹿が一人でも混じってたら糞コードを大量コミットしてデスマーチになってしまう。
年金システムにはこういう馬鹿が大量にいたんだよな。

567:デフォルトの名無しさん
18/03/26 19:13:50.06 2N4AiZYB.net
>>550
算数を数学とか言っているからバカにしたのに恥の上塗り

568:デフォルトの名無しさん
18/03/26 19:16:39.45 8YtYtYXk.net
>、100万回でms単位の差で選ぶとか阿呆としか思えない
日本のスマホゲームはポチポチゲームばかりらしい。
こういう馬鹿な考えのヤツばかりでリアルタイムの仕様を理解できるやつがほとんどいないんだろうな。
そんな馬鹿がasync/awaitで知った気になってテスト不能のアホコードを大量に書く。
昔から、馬鹿の尻拭い=同期のバグなんだよな。

569:デフォルトの名無しさん
18/03/26 19:18:04.23 8YtYtYXk.net
ID:2N4AiZYB ←低脳煽りばかりで技術的なレスは一切しない馬鹿。技術的なレスすると馬鹿がバレるからな。
> 100万回でms単位の差で選ぶとか阿呆としか思えない

570:デフォルトの名無しさん
18/03/26 19:31:21.32 FkhRj4gx.net
アホみたいなスマホゲーム作ってる会社こそ、優秀な人材が集まってるんだぞ
アホみたいに儲かるからな

571:デフォルトの名無しさん
18/03/26 19:35:54.71 /OtFOsnh.net
ループの中身よりガワ気にするプログラマいたらアホかと思うわ

572:デフォルトの名無しさん
18/03/26 19:45:10.16 jqdLEFhA.net
ループの中身もガワも大事
ガワが簡素ということは保守のしやすさに繋がるんだから、それなりのスペックのマシンで動かせる前提なら高速化のための最適化をガチガチにするより
オーバーヘッド大きいけど簡単に書ける方法を採るべき
その判断をせずいかなる場合も高速なのが正義というのは技術に酔ってるだけ

573:デフォルトの名無しさん
18/03/26 19:47:19.63 Sl5sXtlN.net
うぇっぷ。酔った

574:デフォルトの名無しさん
18/03/26 20:25:24.50 oo+qoL1t.net
速度だけならC#よりVB6のほうが早いわけで、C#には速度以外のものが求められていると思うんだわ
勿論早いに越したことはないが

575:デフォルトの名無しさん
18/03/26 20:40:40.23 Kmmzv96P.net
UWPはネイティブだからC#でも速い。

576:デフォルトの名無しさん
18/03/26 20:41:34.40 oDdvQRP9.net
何ふらっとみたいな話題やってんだよ
スレ間違えたかと思ったわ

577:デフォルトの名無しさん
18/03/26 20:52:55.98 pJYeIgRu.net
pythonとどっちがはやいの?

578:デフォルトの名無しさん
18/03/26 20:57:16.62 dvRuSlEv.net
>>558
え?!本当ですか?

579:デフォルトの名無しさん
18/03/26 20:59:12.56 Sl5sXtlN.net
>>558
MJD?

580:デフォルトの名無しさん
18/03/26 21:17:19.46 +hE5FNBB.net
ファ〜

581:デフォルトの名無しさん
18/03/26 22:59:08.42 kqauAijD.net
>>559
おまいのネイティブの定義を教えてくれ

582:デフォルトの名無しさん
18/03/26 23:58:46.84 7aEBjzBt.net
>>565
UWPはツールチェインに.NET Nativeが組み込まれているだけの話じゃね

583:デフォルトの名無しさん
18/03/27 00:24:37.94 8gmuwQWV.net
>>562
>>563
VB6はネイティブコンパイラだよ

584:デフォルトの名無しさん
18/03/27 01:27:10.71 GW1/xmrB.net
あんな質の悪いコードをネイティブなんて(蝶々蜻蛉も鳥の内)

585:デフォルトの名無しさん
18/03/30 23:05:49.35 AQTRuZFc.net
Console.WrteLine("{0}です", number);と
Console.WriteLine(number+"です");だとどっちがいい?
最初の方をよく使うんだけど

586:デフォルトの名無しさん
18/03/30 23:10:00.95 NFQ/XCwQ.net
「どっちがいい」の基準が分からん
string.Formatでも同じだが可変要素が多いときは上の方が分かりやすいとしか言えない

587:デフォルトの名無しさん
18/03/30 23:10:21.60 +KwMySjj.net
Console.WrteLine($"{number}です");

588:デフォルトの名無しさん
18/03/30 23:19:57.93 AQTRuZFc.net
某プログラミング言語勉強サイトで後者で打ってる模範があって見にくくてつい質問をしてしまった

589:デフォルトの名無しさん
18/03/30 23:20:52.58 s5wfWcqZ.net
>>571
{0}派だったけど今はこれしか使わないな

590:デフォルトの名無しさん
18/03/31 00:01:03.73 lBDPY53Y.net
>>571
な、なんじゃこりゃあ!!

591:デフォルトの名無しさん
18/03/31 00:03:06.14 wdgleLdA.net
>>569
下のほうが目の動きが自然

592:デフォルトの名無しさん
18/03/31 00:53:06.98 N7Tg3UOC.net
>>573
同じ変数を何箇所も使いたい場合は{数字}の方が便利

593:デフォルトの名無しさん
18/03/31 01:14:29.83 6wN5DSYc.net
国内のドカタワールドはC#2.0で早くも息切れしてきて3.0で脱落者が出始めて4.0以降はほとんど追従できてない酷い有様
string interpolationなんて抜群にドカタ向きだから、dobonあたりが取り上げて宣伝したら流行ると思うけどね

594:デフォルトの名無しさん
18/03/31 08:18:54.87 AhiWvdUc.net
string.formatって1.0の頃から存在した気がする

595:デフォルトの名無しさん
18/03/31 08:32:15.65 9aphfiP0.net
EFの文脈で$@"select * from Foos where {p}"って書くとちゃんとプレースホルダーに置き換えてくれるってので感心した

596:デフォルトの名無しさん
18/03/31 10:35:32.87 VKIypx1l.net
ほんとコロコロと書き方が変わってほんと糞言語になったな。

597:デフォルトの名無しさん
18/03/31 11:12:51.16 Jc8iX6Rx.net
C#7.0-7.1は6までちゃんとキャッチアップできてる現場なら自然に受け入れられるものだけど、C#7.2はヤバい
C++厨こじらせた奴がチームにいたらカオスになりそう
そして8.0ではついにnull非許容参照


598:型が導入され、年内には現在ある全ての既存C#コードに対して膨大な数の警告が出るようになる



599:デフォルトの名無しさん
18/03/31 12:26:40.13 9aphfiP0.net
最高じゃねえか
ついてこれないレガシー人材も放置されてるレガシーシステムも要らん

600:デフォルトの名無しさん
18/03/31 12:41:52.94 O8yBke8L.net
そもそもプログラミングは低脳がやっていい仕事じゃねーからな
この期に日本式の文系マと専門学校マは全員処分したらいい

601:デフォルトの名無しさん
18/03/31 12:44:53.69 1xZcLHDp.net
>>583
文系かどうか、専門学校出かどうかは、本質とは関係ないのではないか?
馬鹿なやつを特定して排除するならまだしも、経歴 **だけ** で判断するのはいかがなものか?

602:デフォルトの名無しさん
18/03/31 12:46:24.77 O8yBke8L.net
な、文系だろ?

603:デフォルトの名無しさん
18/03/31 12:49:40.91 iWayTg8I.net
レッテル貼りして思考停止して片付けるのは楽だよな
>>581
現状でもVSで推奨されないことに「メッセージ」は出るけど「警告」は出ないぞ
下位互換無くすのなら別の問題になるけどな

604:デフォルトの名無しさん
18/03/31 13:51:41.50 lBDPY53Y.net
>>581
ヌルポ許容しない理由はなんでしょうか?

605:デフォルトの名無しさん
18/03/31 14:00:03.82 VKIypx1l.net
そもそも納品物がヌルポでよく落ちるのは単体テストをしない、手抜きだからであって、
新機能を好んで使う馬鹿は、null非許容参照型を導入しようとテストをしないのは変わらないわけで、
むしろバグが隠蔽される。VBのOn Error Resume Nextのバグ隠蔽機能の再来。
varと同様、コード品質を落とすアホ機能である。

606:デフォルトの名無しさん
18/03/31 14:15:45.12 wdgleLdA.net
単体テスト
それは企業によって意味が全く異なるワードである

607:デフォルトの名無しさん
18/03/31 14:23:43.23 OaeapR1O.net
爺さんそろそろ引退した方がいいぞ

608:デフォルトの名無しさん
18/03/31 14:30:41.24 wdgleLdA.net
単体テスト
・関数単位のテスト
・アプリケーションをビルドして作成・修正した箇所を開発者本人が動作確認するテスト
大きくわけてこの2種類の解釈
xUnit世代は単体テストってアレだよねっていう共通認識があるかもしれないが
老舗企業でそんな意味で単体テストっていう言葉を使うと恥をかくぞ

609:デフォルトの名無しさん
18/03/31 14:35:37.85 wk3pjuZy.net
>>587
if (arg == null) throw new ArgumentNullException(nameof(arg));
とか
Assert.That(Hoge(), Is.Not.Null);
みたいな頭の悪いチェックやテストケースが不要になる

610:デフォルトの名無しさん
18/03/31 14:52:49.36 9VGsIMix.net
>>588
一般に、新しいものを使いたがるPGの方がスキルが高いので品質も生産性も高いよ
もちろん、メンバーの状況によっては縛りをかける判断が適切な場合もあるけど、
それはあくまでスキルの低いメンバーの生産性と品質の低下を避けるためだ
新しいものを使いたがる系の奴に古いものを強制しても、生産性と品質が大きく低下することはない

611:デフォルトの名無しさん
18/03/31 16:18:58.20 AhiWvdUc.net
しかし、linqだって10年モノ・・・新しい古いってレベルじゃねーよな

612:デフォルトの名無しさん
18/03/31 16:25:39.38 TBBYBavK.net
新しいフレームワークに飛び付く層はモチベーションの影響で生産力はあるかも知れないが、スキルが高いかというと微妙

613:デフォルトの名無しさん
18/03/31 17:11:47.69 wolthb3Z.net
varって気を付けないと000abdだと整数読み込みでするからstringで扱う時はstringでやるわ

614:デフォルトの名無しさん
18/03/31 17:29:38.76 F


615:Nt76Udy.net



616:デフォルトの名無しさん
18/03/31 18:44:14.32 /mYBOpTC.net
C#プログラマは全員、ライセンスで訴えられるリスクを負う。とても危険。

617:デフォルトの名無しさん
18/03/31 18:51:34.87 /Z8GsSJz.net
春だなあ

618:デフォルトの名無しさん
18/03/31 18:52:23.42 1xZcLHDp.net
>>598
詳しく

619:デフォルトの名無しさん
18/03/31 19:27:52.75 xFqugWHj.net
ユニットテストを意識するようになればメソッドやクラス構成マシになるのに、どうせ単体テストやるしと数百行のメソッド大量生産の俺社

620:デフォルトの名無しさん
18/03/31 19:38:17.35 wdgleLdA.net
メソッドは原理原則通り20行まで・・・ってのはやりすぎかもしれんけど
全ては関数にわけられるだけわける
1つの関数に2つ以上の機能があれば冗長だとは思う

621:デフォルトの名無しさん
18/03/31 20:01:38.03 FNt76Udy.net
関心事が1つであるべきだよ
機能数は複数あってもいい
例えば顧客オブジェクトを取得する/作成する/更新する/削除するための顧客リポジトリ
こいつの機能は4つだが関心事は顧客オブジェクトの永続化という1つだけ

622:デフォルトの名無しさん
18/03/31 20:41:54.64 fnj+62QA.net
>>602
でもやたら関数に分けまくるのもやり過ぎの悪例だからなぁ
一行メソッドのたらい回しとか可読性低すぎて引き継いだとき殺意が湧くし

623:デフォルトの名無しさん
18/03/31 21:12:12.52 FNt76Udy.net
1行でも意図が明確化するならメソッドにする
C++とかやってきた人なら当たり前の感覚なんだけどね

624:デフォルトの名無しさん
18/03/31 21:20:51.16 FNt76Udy.net
Expression Bodyのプロパティやメソッドがなぜ導入されたのか
1行のプロパティやメソッドはそれだけ使用頻度が高いってこと

625:デフォルトの名無しさん
18/03/31 21:50:23.14 lRCajebl.net
バカが書くオブジェクト指向()を舐めるなよ?
あいつら『かめはめ波()』の機能を
か()
め()
は()
め()
波()
にするレベルでバカだからな

626:デフォルトの名無しさん
18/03/31 21:55:29.44 +WsDcfNX.net
意味を理解しておらず側だけ真似するからそうなる
猿は木の実でも取ってろ

627:デフォルトの名無しさん
18/03/31 21:57:45.44 g9lQ5N9X.net
独立している機能なら一行でも良いが
一連の塊で動いてる機能を再利用性の欠片もないパーツに切り分ける奴は頭が悪い
しかもその切り分けた関数で他の関数を実行してたらそれはもうただの難読化だ

628:デフォルトの名無しさん
18/03/31 23:47:58.41 U08lgUq5.net
>>607-609
バカw

629:デフォルトの名無しさん
18/04/01 07:17:31.62 su2Mei6j.net
>>609
再利用性だけで分けるのは典型的な素人

630:デフォルトの名無しさん
18/04/01 07:24:17.48 su2Mei6j.net
>>606
これが答えだよ
Microsoftや達人プログラマ達は1行メソッドの価値を理解して言語仕様まで変えてしまった
それほどまでに重要なものってことだ
一方で雑魚プログラマのお前らは価値を理解できずにぐちぐちと文句を言う
程度の低さを伺えるね

631:デフォルトの名無しさん
18/04/01 08:28:43.58 G1/6VWB7.net
コメント代わりに関数使う>>611みたいなのが害悪なんだよな

632:デフォルトの名無しさん
18/04/01 08:32:44.17 IPSX8M4/.net
プログラム構造が見渡せる行数になれば、ソレ以上の細分化は無意味なんだけどね
メソッドの分割は中身を理解しやすくするのが最大の目的で、それを阻害するほど分割したら意味がない

633:デフォルトの名無しさん
18/04/01 08:45:42.44 x6ZL87kc.net
俺もコメント代わりに分けまくる派
純粋関数で責任が明確なら可読性は上がるよ

634:デフォルトの名無しさん
18/04/01 08:59:28.91 s6sGDINL.net
一目見たら分かる処理をオレオレ命名で飛び地化
お一人様開発


635:ネら良いがチームでやんなよ



636:デフォルトの名無しさん
18/04/01 09:02:43.00 QRam8GQ6.net
void MoveAX(unsigned short val);

637:デフォルトの名無しさん
18/04/01 09:11:29.06 su2Mei6j.net
>>613
コードで表現できるものをコメントで書くバカが本物の害悪だよ

638:デフォルトの名無しさん
18/04/01 09:16:10.30 P1fWuhY2.net
マーティン・ファウラーはいつも良いことを言うね
底辺PGでも少しは見習ったほうが良いぞ
URLリンク(martinfowler.com)

639:デフォルトの名無しさん
18/04/01 09:17:34.95 G1/6VWB7.net
>>618
コードで表現出来てることをわざわざ関数名で伝えようとするバカが何だって?

640:デフォルトの名無しさん
18/04/01 09:25:16.65 P1fWuhY2.net
>>614
中身を理解しやすくするのは実装の仕事
メソッド化する最大の目的は実装と意図を分離すること
僕が引用したリンク先でマーティン・ファウラーがわかりやすく説明してくれてるからぜひ読んで欲しい

641:デフォルトの名無しさん
18/04/01 09:28:59.77 s6sGDINL.net
三行で書かれてるコードならその場でその三行を修正するだけで済むが、
それを三つの関数に分けるとわざわざ別の行までスクロールして修正する作業が三回発生する
どちらが効率的で生産性が高いのか普通なら考えるまでもなく分かることだが、自意識過剰なバカには分からないのかも知れない
何せ自分のことを『達人』とか思い込んでるレベルのバカだし

642:デフォルトの名無しさん
18/04/01 09:33:48.86 su2Mei6j.net
>>620
コードで表現していることを関数名で抽象化するんだよ
抽象化はプログラミングをする上で最上級に重要な概念だけどどうもIQが凡人以下だと理解できないらしい
物事を理解するにはその内容に応じた知能がどうしても必要になる
凡人が数学者や物理学者に成れない
難しい概念がわからないという感覚は人としてどうしようもないものなんだ
だからこのスレにも抽象化がわからない人が居てもおかしくはない

643:デフォルトの名無しさん
18/04/01 09:36:24.52 fxgoPYx5.net
>>622
場合によるんじゃないかな?
その一行が何度も出てくるなら関数化したほうが修正が楽
何百回修正するか
一回修正するか

644:デフォルトの名無しさん
18/04/01 09:38:21.16 su2Mei6j.net
>>622
そのコードがなんのためにあるのかということを考える作業が3回も発生する
そのコードを変えて他に影響がないか確かめる作業が3回も発生する
同じことを他の場所でしていないか確かめる作業が3回も発生する
酷い無駄だ

645:デフォルトの名無しさん
18/04/01 09:39:10.89 fxgoPYx5.net
関数化で抽象化はされる
抽象化された関数で何をやってるか詳しく関数名に入れると無意味なことになることもある
むずかしいよね

646:デフォルトの名無しさん
18/04/01 09:40:28.60 s6sGDINL.net
bool IsEmpty() => this.Length == 0;
このレベルの実装であれば何も文句はないが、大半はそうじゃないのが現実

647:デフォルトの名無しさん
18/04/01 09:40:36.80 x6ZL87kc.net
適切な直行化ができてれば、一連の処理の流れに関わる多数の関数を一緒に修正するなんてことはそうあるものではない
その程度のスキルレベルなら分け過ぎはよくないのは同意する

648:デフォルトの名無しさん
18/04/01 09:42:35.89 fxgoPYx5.net
もともと一行関数だったものが徐々に成長していくこともある
でも呼び出し元のコードは変わらない
ロジックが変わってないからね
これは大変素晴らしいことだと思う

649:デフォルトの名無しさん
18/04/01 09:46:33.53 x6ZL87kc.net
十分に責任の明確化ができている関数は中身を見る必要が無くなる
不要になって消すことはあっても中身を弄ることはめったにない
この名前でこの引数を受け取るならこの結果が返るのが当然、と思えるのが正しい関数だ

650:デフォルトの名無しさん
18/04/01 09:48:36.16 G1/6VWB7.net
>>627をバカが真似した例
void Increment(ref int a) => a++



651: (※現実にあったコードです)



652:デフォルトの名無しさん
18/04/01 09:52:46.42 qsRAuR+m.net
>>631
そのレベルの現場ならCOBOLみたいにMOVE羅列してる方マシだね
世の中そういうところばかりではないから文句があるならさっさと転職しろ

653:デフォルトの名無しさん
18/04/01 09:54:39.84 fxgoPYx5.net
コードを書いてる時点で将来をすべて予見できるような素晴らしい環境にいるならいいけど
大体はそんなことはない
仕様を考えたのが他人であろうと自分であろうと

654:デフォルトの名無しさん
18/04/01 10:25:24.90 EnMpGyAP.net
>>631
範囲を扱うアルゴリズムに使わせる目的で使うイディオムだよ
こうしておけばプリミティブの数値も数値っぽい型(例えば巨大整数クラス)も同じように扱える
ようするにただのストラテジだな

655:デフォルトの名無しさん
18/04/01 10:45:43.34 EnMpGyAP.net
まあ正直C#で>>631は無意味とは言わないまでも違和感あるけどな
>>631もC#だけでなくc++とか経験してみるとこういう短い関数の真価を理解できるんじゃないかな

656:デフォルトの名無しさん
18/04/01 11:56:21.61 T3P5Wj+0.net
巨大整数とか仕様にカスリもしない未来を妄想して複雑化して「これがシンプルなんだよ!」と強弁するとかアホの典型だな
グループ開発の経験もない無職かよ

657:デフォルトの名無しさん
18/04/01 12:03:50.05 EnMpGyAP.net
>>636
一例に過剰反応バカキター

658:デフォルトの名無しさん
18/04/01 12:12:43.78 qPjZABJK.net
最初から無駄に俺様カスタマイズしたがるのはこじらせたC++erによくあるYAGNIだね
そして、Incrementの例のように基礎的な部分には異常に拘るくせに普通のアプリケーションコード部分は巨大なメソッドを生産する奴が多い
その割にはポインタ演算は大好きで、配列操作になるとウッキウキしてクソ低レベルなアスタリスクと++だらけのコードを垂れ流す
そういう連中だよ

659:デフォルトの名無しさん
18/04/01 12:36:30.52 d99K3tnG.net
昨日からNG大繁盛だわ

660:デフォルトの名無しさん
18/04/01 12:42:38.07 5IsFylKp.net
ふらっとも伸びているようだし承認欲求に飢えているアホどもが暴れているのか

661:デフォルトの名無しさん
18/04/01 12:53:48.82 EnMpGyAP.net
>>638
でもそれってお前の妄想じゃん
c++の仕事任されるほどスキルないっしょ?

662:デフォルトの名無しさん
18/04/01 12:59:36.34 Q3bP29mI.net
>>641「巨大整数にも対応してるオレ様のフレームワークを使えー!」

663:デフォルトの名無しさん
18/04/01 13:07:10.47 wUP/Qru9.net
どんな面白い問題で盛り上がってるのかと思ったらしょうもな。
(1) 道具が多すぎる道具箱は使いづらい
からと言って
(2) 短すぎるメソッドは「無駄な道具」である
などと言えるわけがない。
そうである場合もない場合もあるに決まってる。
こんなくだらない話でよく盛り上がれるな

664:デフォルトの名無しさん
18/04/01 13:16:23.13 Q3bP29mI.net
>>643
だから無駄な道具を乱造して散らかす奴が悪いんだろ?
いくら「これが正しい!」と喚いてもゴミ屋敷をスマートとは言えんわ

665:デフォルトの名無しさん
18/04/01 13:24:59.02 EnMpGyAP.net
なんかずれてんな
いやわざとか?
みんな「1行コードはクール」
みんな「いや害悪だ」
>>631「1行コードにはこんな意味不明な頭悪いコードが実在するんだぜぇ」
>>634「いやーそれはストラテジでしょ。普通のコードだよ」
あほ「巨大整数ガー!ゴミ屋敷ガー!」
途中から明後日の方向に向かってんだよ
一例に過剰反応バカが湧いてきたあたりからね

666:デフォルトの名無しさん
18/04/01 13:28:56.88 IPSX8M4/.net
一つ言えるのは、一行コードをセンスが無いやつが書くとゴミク


667:Yになるってことだな まあ何行でもゴミと言えるかもしれんが、一行のゴミはメンテする時腹が立つ



668:デフォルトの名無しさん
18/04/01 13:30:25.54 EnMpGyAP.net
1行メソッドの利点を理解できないアホが逆ギレしてるだけのパターンもあるということは忘れないで

669:デフォルトの名無しさん
18/04/01 14:14:15.06 tywMjCxA.net
一行のゴミにも何か利点はあるはずだと頑なに改めようとしない>>647なのであった
マジでゴミ屋敷の主だな

670:デフォルトの名無しさん
18/04/01 14:20:30.29 G1/6VWB7.net
>>645はstrategyも理解してないアホの子だから許してあげて
ただのラッパーを戦略と勘違いしてるなんて、きっと今年の春から働き始める新人だから

671:デフォルトの名無しさん
18/04/01 14:28:00.99 tywMjCxA.net
上司「なんでこのインクリメントを関数に分けてんの?」
新人「様々な型に対応する為のストラテジです!巨大整数などにも対応できます!」
何というか無能な働き者って言葉がしっくり来るな
たぶんこいつは誰からも理解されずに五月病患って数ヶ月で退職するわ

672:デフォルトの名無しさん
18/04/01 14:39:00.26 yKN9r4eJ.net
インクリメントの(多相じゃなくて正しい意味での)ストラテジって何だろうね
++とInterlocked.Incrementを切り替えるとか?
エイプリルフールネタにもならんな

673:デフォルトの名無しさん
18/04/01 14:39:37.29 gIH0xNQX.net
>>640
春休み

674:デフォルトの名無しさん
18/04/01 14:47:04.79 Huwl0iS3.net
ここには初心者スレに行ったほうがいいような連中しか居ないようだな

675:デフォルトの名無しさん
18/04/01 15:13:55.41 WEVo4Vkx.net
ゆとり世代はなんでも揃ってるところからスタートだから楽でいいよな
iteratorの実装なんて考えたことすらないんだろう
羨ましいよ

676:デフォルトの名無しさん
18/04/01 15:50:22.39 3GY4sGoy.net
老害

677:デフォルトの名無しさん
18/04/01 17:15:29.85 4YlUj4T1.net
>>650
何で巨大整数に対応する必要ない状況を前提としてるの?
対応すべきという状況を前提とした途端に真逆の結論になると思うけど

678:デフォルトの名無しさん
18/04/01 17:31:26.23 8TyNtssw.net
仕様上ありえない予測
それを人は 妄想 と呼ぶのだ

679:デフォルトの名無しさん
18/04/01 17:45:28.27 Ek+Kt6QK.net
巨大整数対応を勝手に仕様上あり得ないことにしている点
「○○にも対応できるように」の○○に巨大整数を入れるのはあくまで一例であり他にも山ほどあり得る点
この辺りが問題かな
言われた通りの物を納品すればいい所謂IT土方系の環境なら問題にならないんだろうけど

680:デフォルトの名無しさん
18/04/01 17:47:21.74 Aa3HndXz.net
>>656
対応すべきという状況を前提にしたとしても、>>650の新人がストラテジパターンを誤解している阿呆であるという結論は覆らない
>>631を型ごとに用意するのは一般にはパラメータ多相、あるいは単にオーバーロードと呼ぶんだよ

681:659
18/04/01 17:49:35.48 Aa3HndXz.net
すまん訂正
パラメータ多相じゃなくてアドホック多相だな

682:デフォルトの名無しさん
18/04/01 17:49:42.89 Ca3RLpqD.net
この手のっていつも「自分の前提」の元に議論初めてかみ合わないんだから止めとけよ
ネタが下らないことだし、そんなことにこだわるしかやることないのかよ

683:デフォルトの名無しさん
18/04/01 17:53:38.19 8TyNtssw.net
int型をBigInt型に切り替える必要が生じたとして、
型宣言から書き直さないといけないのにインクリメントを分離しておいて何が効率化できたというのかと



684:烽サもオブジェクト指向に則ればその型自体にインクリメントを備えるだろっていう 現実に設計したこともない新人が本の知識で言ってるだけだなこりゃ



685:デフォルトの名無しさん
18/04/01 18:21:49.73 8TyNtssw.net
正しい設計
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) 処理
↑型の数だけオーバーロードする必要がある

686:デフォルトの名無しさん
18/04/01 18:47:25.76 IPSX8M4/.net
どーでもいいことかもしれんが、セミコロンがないのが凄く気になる

687:デフォルトの名無しさん
18/04/01 19:40:56.03 WEVo4Vkx.net
>>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);
}
}

688:デフォルトの名無しさん
18/04/01 19:44:56.66 WEVo4Vkx.net
>>663
なんでBigIntのソースが手元にある前提なんだよ
まあ素人は標準のパッケージ以外を持ってきて使うなんて経験はないのかもしれんから間違えても仕方がないか
君素人っぽいし

689:デフォルトの名無しさん
18/04/01 20:02:44.23 c1epJvM3.net
>>665
惜しい。一旦クールダウンしてよく考えよう。
同じ入力(コンテキスト)に対して複数のStrategyを定義し、状況によって使い分けるのがStrategyパターンだ。
一方incrementの場合、実装は入力の型に応じて一意に決まるだろ?「同じ入力」に対して複数の実装があるわけじゃない。
そういう、引数の型に応じて静的に実装を選択するのを一般に「多相」という。
特に、君のコードは関数型言語で型クラスと呼ばれるものに近い。ググってみると勉強になるよ。

690:デフォルトの名無しさん
18/04/01 20:08:31.72 WEVo4Vkx.net
>>667
1つ飛ばしでイテレートしたい場合とか同じ型でも幾らでもバリエーションは考えられるわけだがわかんねえだろうな用意されたもの使うだけのゆとりには

691:デフォルトの名無しさん
18/04/01 20:10:41.80 PinoCRrg.net
>>665
なにこの頭悪すぎるゴミ
意図が読めない典型じゃん

692:デフォルトの名無しさん
18/04/01 20:13:25.61 WEVo4Vkx.net
>>669
あらゆる物事に対してそれを理解するために必要な知能の下限が存在する
これって1つの真理だと思うのよ

693:デフォルトの名無しさん
18/04/01 20:20:07.28 PinoCRrg.net
>>670
funcって何?
funcObjって何?
miって何?
mxって何?
Execって何?どういう機能?
BigIntでAdd?コレクションなん?
パッと見ただけでこれだけ疑問が湧くんだが、
プログラマ百人に聞いたら百人が死ねって返すレベルのクソだぞこれ
命名だけでバレる実力なら無理して書くなよ

694:デフォルトの名無しさん
18/04/01 20:22:40.27 c1epJvM3.net
>>668
そうだね。確かに君の言う通りだ。
じゃあ君はなぜ>>665でわざわざジェネリックを使ったのかな?
>>665を見た殆どの人は、型に応じて++の実装を切り替えたいのだろうと思うだろうね。それを君はストラテジだと言っている。
このままでは誤解してしまう人もいるだろうから指摘したんだよ。
君自身はもしかしたら本当は正しく理解してたのかもしれないけど、衆目に晒すにはあまりにも不適切なレスだ。

695:デフォルトの名無しさん
18/04/01 20:25:32.72 WEVo4Vkx.net
文脈読めない、中心になってる話題を理解して枝葉末節を気にしない、っての実践するにもある程度の知能が必要なんだろうなー
そういうの苦手な人ってミーティングの時とか相当鬱陶しがられてると思うから注意したほうがいいよ

696:デフォルトの名無しさん
18/04/01 20:28:38.03 G1/6VWB7.net
>>665
これforでローカルに代入してるが値型のつもりなのか?

697:デフォルトの名無しさん
18/04/01 20:30:19.04 Aa3HndXz.net
>>673
悪いけど、文脈を読んだら>>665のコードは100人中100人が型++を切り替えようとしてるのだろうと解釈すると思うぞw

698:デフォルトの名無しさん
18/04/01 20:35:04.55 WEVo4Vkx.net
>>675
ほらな
読めてない

699:デフォルトの名無しさん
18/04/01 20:40:22.21 WEVo4Vkx.net
>>672
ジェネリックかどうかは関係ない話だろ
この例も仮にスクリプト言語だったら型引数は無くても動作する
たまたま型の指定が必要な言語を例に使ったからジェネリックになっているだけ
しかしそのエッセンス自体は何も変わってない
まずはそこを理解しよう


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

285日前に更新/232 KB
担当:undef