クソコードとは何か

レス数が1000を超えています。これ以上書き込みはできません。
2021/01/30(土) 17:33:05.78ID:BjNTZWUI
このスレはクソコードとは何かを考えるスレです。

・親クラスが子クラスに依存する処理を持つコード
例...社員クラスを継承した正社員クラスと派遣社員クラスがあり、社員クラスが正社員クラスの知識を持つ状況

・staticにするべきではないモデルにまでstaticにする人
例...社員クラスのメソッドを全てstaticにしたり、社員クラスにシングルトンパターンに相応するものを適用する人

等、クソコードを見た時に「あっ、これクソコードだ」って認識する根拠を挙げていきましょう。
932デフォルトの名無しさん
垢版 |
2021/03/12(金) 17:34:39.00ID:7Crflr6r
削除するなとは言ってない。ガンガン削除してもいいが、残ったコード内でこう作った意図がわからなくなるくらいなら、システムの作り直しの時点で変えるべきた。

元のデッドコードの話自体は初心者の話だし、コードの書き換えに躊躇がなく、バグだらけにするのは外国人に多いわけで、有名な製品をアップデートするとおかしくなる最大の理由。
2021/03/12(金) 17:41:07.46ID:EKGXILxS
外国人のフリして逃げる
934デフォルトの名無しさん
垢版 |
2021/03/12(金) 18:44:33.92ID:Jts8n3aI
クソコードとは俺が書いたコード
935デフォルトの名無しさん
垢版 |
2021/03/12(金) 18:52:31.32ID:0g8W4jPs
またまたご謙遜を。
936デフォルトの名無しさん
垢版 |
2021/03/12(金) 19:22:54.23ID:7Crflr6r
オープンソースはかなりの確率でクソコード
937デフォルトの名無しさん
垢版 |
2021/03/12(金) 19:44:02.10ID:HsBsGhC6
YAGNI (You Ain’t Gonna Need It) 直訳は「そんなモン要らんって!」
YAGNIの原則は「機能は実際に必要となるまでは追加しないのがよい」とすること。後で使うだろうという
予測の元に作っても、実際に使われるのはほんの一部。ソフトウェア実装において「予期しない変更」は常
についてまわり、できるだけ設計をシンプルにするべき。現実の問題に集中して余計なモノを足さない。
それがヤーグニ。
https://www.jabba.cloud/20180119204314/
938デフォルトの名無しさん
垢版 |
2021/03/12(金) 19:56:22.98ID:b9Kr93A5
業務システムにはあてはまらない。
939デフォルトの名無しさん
垢版 |
2021/03/12(金) 19:58:56.77ID:b9Kr93A5
>>937
仕様変更を想定しないといけないとわかっていながら、そのときの仕様で最適化するのは、その方が周囲から理解をえやすいから。
2021/03/12(金) 20:31:43.28ID:47v6/wL7
おまえヤベェわ
さすがクソプログラマースレ
941デフォルトの名無しさん
垢版 |
2021/03/12(金) 21:37:32.87ID:b9Kr93A5
外国人の言うことをありがたがっているようでは話にならない。
942デフォルトの名無しさん
垢版 |
2021/03/12(金) 21:37:59.65ID:HsBsGhC6
>クソコードとは何か

スマホ アプリの6割未利用!不要なアプリの大量保有はバッテリー消耗の一因。不要アプリは定期的に削除を。
https://prtimes.jp/main/html/rd/p/000000049.000005362.html

Androidスマホのキャリアアプリが1GB以上データ通信!?削除・無効化できるアプリ一覧
https://sp1.jp/career-appli/
943デフォルトの名無しさん
垢版 |
2021/03/13(土) 09:00:19.17ID:rQmPEF49
詫びソースコードコメント 1件

アイミョン
[KS108-054]
テーマ:冒険者の広場・DQXショップ2020/02/17 16:22
今月になってから急にシステム障害が多発しており、運営としては説明責任を果たすべきと考えます。

https://hiroba.dqx.jp/sc/news/category/3/

不具合を出した個所とその修正箇所の両方を「詫びソースコード」として開示するのです。
ソースコードも企業の重要な著作物ですが、だからこそ開示して詫びることが大切です。
それと同時にシステムの不具合がなぜ多発しているのかを、プレイヤーも一緒に考えるのです。
バンダイナムコゲームスの『ドラゴンボールZ ドッカンバトル』を見習うべきです。


https://i.imgur.com/s2RHkxT.png
944デフォルトの名無しさん
垢版 |
2021/03/13(土) 09:18:08.62ID:tBGlpruK
キチガイだなw
2021/03/13(土) 10:00:15.70ID:7EYMzEJd
スタッフの大人の対応w
946デフォルトの名無しさん
垢版 |
2021/03/14(日) 09:42:47.84ID:BsjTGNRz
ここに書かれた罵詈雑言と不要な議論の文字列
これがまさにクソコードだ
2021/03/14(日) 10:12:49.00ID:nT6f8vWc
>>921
2008以降になるとまともな和書殆ど無いよな、Amazonで見たら★2でわろた
英語なら20冊くらい引っかかって高評価だけど学術系出版社だから¥10000〜
俺もコンパイラマニュアルしか読んでないわ
948デフォルトの名無しさん
垢版 |
2021/03/14(日) 10:29:30.32ID:u05Cu7nI
クソコードの例

変数を取り違えて値を設定し、途中で本来の値を設定し直すコードが存在する。
2021/03/14(日) 11:56:43.59ID:NVyYwYtr
>>948
デッドコードの一種だね

値を取り違えて設定してることや
本来の値を設定し直してることが分かるようなら
たいしたクソではなさそう
2021/03/14(日) 12:25:06.62ID:mqW1umpN
フォートラン並みの配列演算記述ができるJuliaやPython/scipyが出てきたから、ガチる人以外はそっちに流れたんだろ
Matlabもフォートラン並みに高級だけどかなり高いし、プラットフォームが限られる
特にJuliaはCじゃなくフォートランの慣習に合わせてるし移行の敷居が低い
2021/03/14(日) 13:50:22.02ID:IL1Rx7pe
Matlab, R → Python → Julia

Matlab, Rは、もうダメ。
MIT は、Julia へ行ってる
952デフォルトの名無しさん
垢版 |
2021/03/14(日) 19:53:13.79ID:u05Cu7nI
>>949
10万行のコードを解析してわかったことだけどね。
2021/03/14(日) 21:04:29.30ID:FTgLqn2Y
>>11
constくそワロタ
2021/03/14(日) 22:59:16.59ID:SWD4O/qm
>>952
それがほんとなら根本の問題は別の所にあるよね

根本原因を究明できて再発防止策がとれたなら役に立ったクソコードということになる
2021/03/15(月) 07:24:19.90ID:AgY39MSU
>>953
なぜconstがダメなの?
2021/03/15(月) 08:19:07.60ID:unBa9C5h
覗いただけだけどテストコード不要論を唱えるプログラマがこの世に存在するとはな..
プログラマつっても世の中には色んな奴いるんだな
2021/03/15(月) 09:06:01.57ID:wTgsCYbG
>>955
JS知らないやつだからほっといてあげて
2021/03/15(月) 09:50:06.58ID:d7wExFeq
>>956
いやいらんでしょ
そのテストコードのテストはしなくてレビューでとか言ってる奴いたけど(笑)
結局それが正しいとはなぜ言えるのか?
959デフォルトの名無しさん
垢版 |
2021/03/15(月) 10:14:52.08ID:hBbAwZTG
テストコードがかなりのプログラムだとしらないやつがいるから仕方ない。
2021/03/15(月) 10:27:24.28ID:0wiZhmNk
>>958
正しいと言える必要なんてないからね
テストの基本
2021/03/15(月) 10:39:05.01ID:unBa9C5h
そもそもテストって想定どうりの動きをしてくれるかを確かめる為に書くんでしょ
テストコードなんて書く必要ないと思うならそれでいいし、テストなんて手動でいいと思ってる現場と規模感ならそれでいいんじゃない?
2021/03/15(月) 10:52:20.05ID:unBa9C5h
あとテストコードのテストって何?
テストコードを走らせて想定通りに動けば完了だよ
コードレビューはするでしょう
テストコードのテストコードを書けよという意味で言ったの?
2021/03/15(月) 11:44:06.79ID:bRJV5TtK
>>958
>>255に論理的に反論してみ
2021/03/15(月) 13:03:04.99ID:QmxS+DUu
>>961
テストは手動でいい・・・現場の方針でしかない
自動テストしないと再テストに時間がかかる・・・事実


再テストに時間がかかるがテストは手動でやる・・・アホな現場の方針でしかない
というだけだよ
2021/03/15(月) 13:32:11.56ID:d7wExFeq
>>963
その程度のことデバッグすれば分かるやん
テストコードを書くだけ無駄
2021/03/15(月) 13:37:22.63ID:QmxS+DUu
>>965
一回のデバッグの時間はどれくらいですか?
2021/03/15(月) 13:50:21.56ID:QmxS+DUu
もう降参かな?テストをしないでデバッグだけしてると
時間が膨大にかかるからねw

なによりテストしてないってことだから
エンバグしたことがわからない
2021/03/15(月) 13:52:10.06ID:bRJV5TtK
>>965
例えば千項目毎回テストするの?
そんな項目数がないような小規模案件ならなくてもいいかもねw
まさかリグレッションテストは不要だっていう主張なのかな?
2021/03/15(月) 13:58:05.35ID:QmxS+DUu
>>968
落ち着け。>>964はデバッグすると言ってる
テストしないでデバッグだけするんだ

テストはしないからテスト時間は0なのだ
やつはテストしないで製品をリリースしてるんだよ!
そしてバグが見つかったときに製品をリコールしてるんだよ
やつは組み込み系開発者だからな
2021/03/15(月) 14:47:18.91ID:uytQvjo+
世の中いろんな人がいるんだねえ
2021/03/15(月) 16:09:37.60ID:C+0mdEfW
テストコード組むのが上手いヤツはクラッカーに向いてる
972デフォルトの名無しさん
垢版 |
2021/03/15(月) 19:12:39.86ID:m9WM8q4q
テストは甘えと、あわしろ氏が言ってたけどな。

間違えなければテストする必要が無い。
2021/03/15(月) 19:26:48.17ID:QmxS+DUu
間違えなければテストする必要が無い。
そしてテストしなければ間違えたことがわからないのだ

「バグは見つかりませんでした!」
974デフォルトの名無しさん
垢版 |
2021/03/15(月) 19:32:28.24ID:m9WM8q4q
テストするってことは間違える前提で書いてるんだろ?

甘えすぎだわ。
2021/03/15(月) 19:35:41.62ID:QmxS+DUu
マジそれ

事故る前提で車を乗ってるやつが多すぎ
2021/03/15(月) 20:08:51.50ID:+SM2oHa/
自動テストは適当で良い、どうせバグはない
2021/03/15(月) 20:10:26.44ID:+SM2oHa/
それよりも手動の総合テストを頑張ったが良い、自動テストはコーダの自己満でしかない、ユーザと向き合ってないコミュ症の底辺がやること
2021/03/15(月) 20:11:36.50ID:+SM2oHa/
俺たちはシステムをデザインしてるんだという大局感が大事
2021/03/15(月) 20:12:57.03ID:QmxS+DUu
>>977
手動の総合テストにどれだけ時間がかかりますか?
まだこの質問に答えてもらってませんよ?
2021/03/15(月) 20:13:22.23ID:+SM2oHa/
ロケット打ち上げて爆発させるのがシステム開発のイテレーションなんだよ
2021/03/15(月) 20:14:03.52ID:+SM2oHa/
>>979
スコープとかものによるんじゃないかな
2021/03/15(月) 20:15:04.67ID:+SM2oHa/
底辺コーダはスコープと聞いて変数しか思い浮かばんだろwww
2021/03/15(月) 20:16:13.61ID:QmxS+DUu
>>981
スコープによるなら
○○の場合は、これぐらいとか
答えられるだろw

お前の実際の話をすればいいんだよ
手動テストしてないのか?
2021/03/15(月) 20:17:04.89ID:+SM2oHa/
>>983
〇〇には何を入れればいいの?おん?
2021/03/15(月) 20:18:08.93ID:QmxS+DUu
>>984
自分でスコープによるといっただろ
何も思いついてないのにスコープって言ったんか?
986デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:19:31.02ID:+SM2oHa/
>>985
スコープがなんなのかわかってないようだねwww
987デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:20:15.36ID:+SM2oHa/
スコープをまず説明してみwwwきちんと説明できたらなぜ○○に入れられないか自ずとわかるから
988デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:20:30.62ID:+SM2oHa/
ほれほれはよせいよw
2021/03/15(月) 20:20:41.38ID:QmxS+DUu
981 名前:デフォルトの名無しさん[sage] 投稿日:2021/03/15(月) 20:14:03.52 ID:+SM2oHa/ [5/8]
>>979
スコープとかものによるんじゃないかな

↑「じゃあ○○(スコープ)の場合はこれぐらいと言ってください。」

986 返信:デフォルトの名無しさん[] 投稿日:2021/03/15(月) 20:19:31.02 ID:+SM2oHa/ [8/8]
>>985
スコープがなんなのかわかってないようだねwww

↑「わかってるお前が言ってください。」
990デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:20:52.69ID:+SM2oHa/
スコープの説明責任はあなたにありまぁす!
991デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:21:23.01ID:+SM2oHa/
>>989
あ、やっぱわかってないのな
2021/03/15(月) 20:21:23.96ID:QmxS+DUu
>>990
お前がスコープが何なのかわかってないのがはっきりしたなw
2021/03/15(月) 20:22:28.66ID:yk6Lta+7
答えられないならもうスコープについては答えなくていいよ

お前の実際の話をすればいいんだよ
実際の手動テストにどれくらいかかってるのか言え 
スコープはどれでもいい
994デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:22:52.58ID:+SM2oHa/
>>992
〇〇を言ってくださいと君は言ったわけだがスコープの定義によりそのようなことはできないと述べたよ
なぜできないかはスコープの定義から自明なんだけど、君はスコープを何だと思ってるのかな?おん?
2021/03/15(月) 20:23:33.49ID:sDtoJkVU
あと逃げるなよ?
実際の手動テストにどれくらいかかってるのか  
いうだけなんだから簡単だろ  
996デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:24:23.98ID:+SM2oHa/
>>993
君は答えなくてはいけないよ、スコープとはなにか!!(一喝)
997デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:24:28.31ID:sDtoJkVU
>>994
もうすでにスコープの話は不要と言いました。

実際の手動テストにどれくらい時間がかかってるんですか? 
998デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:24:50.46ID:sDtoJkVU
どうして実際の手動テストにどれくらい時間がかかってるか言えないんですか?
膨大な時間がかかってるからですよね
999デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:25:12.18ID:sDtoJkVU
手動テストは時間がかかることが証明された
反論あるならどーぞ(笑)
1000デフォルトの名無しさん
垢版 |
2021/03/15(月) 20:25:24.05ID:sDtoJkVU
まあどうせ逃げるんやろな
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 44日 2時間 52分 19秒
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況