- 1 名前:仕様書無しさん [2007/08/14(火) 23:48:45 ]
- この会社辞めようと思ったソースコード。
プログラマとして幻滅するソースコード。 プログラマを悩ませるソースコード。 をつらつらと綴っていって頂戴。 ちなみにここは質問スレじゃないので 技術的な質問がしたいならム板 pc11.2ch.net/tech/ に逝って。 前スレ この会社辞めようと思ったソースコード#17 pc11.2ch.net/test/read.cgi/prog/1183700531/
- 503 名前:仕様書無しさん mailto:sage [2007/09/23(日) 18:48:23 ]
- コードの方をわけ分からなくすれば解決だぜ!
// ストリームを開く。 public T0000 F0000() { ...; }
- 504 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:25:43 ]
- >>503
天才
- 505 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:28:41 ]
- >>503
本気であるので困る // 検索結果を取得する public D001_0012 F001_0012(I001_001 arg0) { } 当然、Excelの管理台帳(笑)で管理される
- 506 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:30:52 ]
- これはひどい・・・
- 507 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:37:47 ]
- ちなみにサーバーサイドJavaだったんだが、表示するJSPも G001_002U.jspとかだぜ。
あわせてG001_002U.jsがそれぞれセットになっているからカオスすぐる で、Gなんだが良く解らないから聞いてみたんだ。 「画面のGだろ、そんなことも解らないのか?」と怒られた(´・ω・`)
- 508 名前:507 mailto:sage [2007/09/23(日) 19:43:19 ]
- 思い出せばもっと色々あったぞ。
・変数は全て文字列(当然DBも) ・親会社のバグだらけの怪しいフレームワーク強制 で、オチだったんだが、中国へのオフショア(笑)で夜逃げされた。
- 509 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:44:07 ]
- なんというコボル脳…。
- 510 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:44:49 ]
- 画面のGとか凄すぎるフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフ
- 511 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:51:09 ]
- printf("HelloWorld!!フフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフ\n");
- 512 名前:507 mailto:sage [2007/09/23(日) 19:51:11 ]
- もっと晒すぜ、ヒャホー
データ構造定義(笑)はこんな感じ データ構造定義ID D001_0012 項目ID 長さ (中略) 備考 D001_0012_001 18 (中略) 商品ID(9桁)
- 513 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:53:02 ]
- まぁアレだろ。Fだろ。
- 514 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:55:53 ]
- Gって言ったらゴキブ
ぅゎぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
- 515 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:56:44 ]
- >>513
残念。 N系
- 516 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:57:23 ]
- 誤: printf("HelloWorld!!フフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフ\n");
正: printf("HelloWorld!!\n");フフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフフ
- 517 名前:仕様書無しさん mailto:sage [2007/09/23(日) 19:58:23 ]
- 寿司食いたいフフフフフフフ
- 518 名前:仕様書無しさん mailto:sage [2007/09/23(日) 20:04:09 ]
- printf(buf);
buf内に%sが入って死亡・・・・・・
- 519 名前:仕様書無しさん mailto:sage [2007/09/23(日) 20:13:51 ]
- 祭りに乗り遅れた・・・
- 520 名前:仕様書無しさん mailto:sage [2007/09/23(日) 20:18:52 ]
- // ずっと俺のターン
while (1) printf'("フ");
- 521 名前:仕様書無しさん mailto:sage [2007/09/23(日) 20:34:35 ]
- ガリでも食ってろフフフフフフフ
- 522 名前:仕様書無しさん mailto:sage [2007/09/24(月) 02:20:45 ]
- G001_001???ってのは、
画面IDをそのまま名前にしてるんなら保守はしやすいのかもしれん。 もちろん画面IDがきっちり管理できてるのが前提だけど。
- 523 名前:仕様書無しさん mailto:sage [2007/09/24(月) 02:33:26 ]
- >>522
おまえは設計するなよ!約束だぞ!
- 524 名前:仕様書無しさん mailto:sage [2007/09/24(月) 02:40:18 ]
- ID項目それぞれに対する説明の文書なりpdfがあるんじゃないの
それなら分かる
- 525 名前:仕様書無しさん mailto:sage [2007/09/24(月) 06:57:17 ]
- >>524
わかりやすい命名になってればその文書自体不要になるか、 大幅に簡略化できる。 なまじ素直な性格だと、 「業界の先輩たちが長いことやってることだから、なにかよいことがあるんだろう」 って思っちゃうんだよなあ… 昔々、ディレクトリというものが無く、 データ領域につける名前に大文字と数字6文字とか8文字とかしか 使えなかった時代の習慣を引きずってるだけなんだが。
- 526 名前:仕様書無しさん mailto:sage [2007/09/24(月) 07:19:10 ]
- コボルのコメントってどう書くんだっけ。さすがに38年も書いてないと忘れた。
- 527 名前:仕様書無しさん mailto:sage [2007/09/24(月) 07:42:33 ]
- *
- 528 名前:仕様書無しさん mailto:sage [2007/09/24(月) 09:31:28 ]
- きたねえ穴だな
- 529 名前:仕様書無しさん mailto:sage [2007/09/24(月) 11:29:14 ]
- >>522
氏ね せめて、ItemList_02.jsp とかある程度はまとめた上での連番にするべきだろ
- 530 名前:仕様書無しさん mailto:sage [2007/09/24(月) 11:31:49 ]
- >526
行番号の直後の桁にアスタリスク
- 531 名前:仕様書無しさん mailto:sae [2007/09/24(月) 11:57:25 ]
- >>530
きたねえ穴だな
- 532 名前:仕様書無しさん [2007/09/24(月) 12:07:51 ]
- >>530
きたねえ穴だな // じつは入れたいと思っている気持ちの裏返しの発言
- 533 名前:仕様書無しさん mailto:sage [2007/09/24(月) 12:48:06 ]
- // キーボードの状態を取得する
bool getKeyboardStatus() { //キーボードの状態がおかしい if (status_ == RESPONSE_ERROR) { // 投げる throwKeyboard(); } return status_; } みたいな名前と処理が一致しない関数が 山ほどあって気が抜けない (´Д`;)
- 534 名前:仕様書無しさん mailto:sage [2007/09/24(月) 12:49:29 ]
- >>533の返り値は気にしないで・・・。
- 535 名前:仕様書無しさん [2007/09/24(月) 13:17:56 ]
- while (1)
{ int nRet; nRet = 仕事(); if (nRet == ERROR) { int nMood = Get今の気持ち(); if (nMood == BUTIKIRE) { throwMouse(); throwKeyboard(); beatNeighbor(); quitJob(); break(); } } }
- 536 名前:仕様書無しさん mailto:sage [2007/09/24(月) 13:47:47 ]
- while(辞めない) {
while (1) { int nRet; nRet = 仕事(); if (nRet == ERROR) { int nMood = Get今の気持ち(); if (nMood == BUTIKIRE) { throwMouse(); throwKeyboard(); beatNeighbor(); quitJob(); break(); } } } }
- 537 名前:仕様書無しさん [2007/09/24(月) 14:02:06 ]
- >>536
\ ∩─ー、 \/ ● 、_ `ヽ / \( ● ● |つ | X_入__ノ ミ 俺は釣られないクマ ・・・ 、 (_/ ノ \___ノ゙ / 丶' ⌒ヽ::: / ヽ / /::: / /へ ヘ/ /::: / \ ヾミ /|::: (__/| \___ノ/:::
- 538 名前:526 mailto:sage [2007/09/24(月) 17:28:31 ]
- >>530 ありがとです。
- 539 名前:仕様書無しさん mailto:sage [2007/09/24(月) 17:30:27 ]
- プログラミングが上達するコツ
pc11.2ch.net/test/read.cgi/tech/1190555031/
- 540 名前:仕様書無しさん mailto:sage [2007/09/24(月) 19:11:26 ]
- int mind;
mind = kokoro() while (1) { mind -= 1; if (mind < 0) { takeMedicine(); goHospital(); if (mind < 0) { quitJob; break(); } } }
- 541 名前:仕様書無しさん [2007/09/24(月) 20:42:13 ]
- >>540
これバグってるだろww 仕事してないのになんで mind-=1 なんだよ。 仕事しろ仕事w
- 542 名前:仕様書無しさん [2007/09/24(月) 20:50:48 ]
- >>540
Jobインターフェースが実装されてません。 java.neet.helloworkパッケージからインポートして実装してください
- 543 名前:仕様書無しさん mailto:sage [2007/09/24(月) 21:02:35 ]
- NoSuchMethod : kokoro()
- 544 名前:仕様書無しさん mailto:sage [2007/09/24(月) 21:14:18 ]
- 今システムテストしてるソース群みてびっくりしたよ、
ぜんぜんエラーハンドリングしてないの 最近の奴らは戻り値とか関係なしか?
- 545 名前:仕様書無しさん mailto:sage [2007/09/24(月) 21:21:29 ]
- 俺は自分がデバッグする時楽するために
必ず戻り値のチェック入れてる
- 546 名前:仕様書無しさん mailto:sage [2007/09/24(月) 21:21:51 ]
- レスをスルー
例外もスルー
- 547 名前:仕様書無しさん mailto:sage [2007/09/24(月) 21:54:30 ]
- 「この子画面処理中に異常が発生したらどうすべきか」全く書いてないから実装してあげませんw
- 548 名前:仕様書無しさん mailto:sage [2007/09/24(月) 22:34:12 ]
- レスをスロー
例外もスロー
- 549 名前:仕様書無しさん mailto:sage [2007/09/24(月) 23:26:52 ]
- まぁ、なんでもかんでもCatchすりゃいいって考えるのは厨だね。
本来どっかでバグがあってこけることでそのバグを見つけるかもしれないってのに Catchして適当な処理したら、何年たっても見つからない可能性がある。
- 550 名前:仕様書無しさん mailto:sage [2007/09/24(月) 23:27:57 ]
- catch 厨
- 551 名前:仕様書無しさん [2007/09/25(火) 00:14:56 ]
- >>549
戻り値を監視しながら処理を進めるのが普通だと思ってたが 転職先ではエラー処理は書かないのが基本だった… 郷に入れ歯
- 552 名前:仕様書無しさん mailto:sage [2007/09/25(火) 00:21:51 ]
- C系だとアサーションは入れるけど
結局リリース時には素通りだったりするよね
- 553 名前:仕様書無しさん mailto:sage [2007/09/25(火) 00:22:00 ]
- >>551
お前が正しい。
- 554 名前:仕様書無しさん mailto:sage [2007/09/25(火) 01:44:59 ]
- >>552
だったりと言うかリリースならアサーションはスルーされて当然じゃ?
- 555 名前:仕様書無しさん mailto:sage [2007/09/25(火) 01:46:41 ]
- >>554
開発・テスト時に異常にならなければそれでOKじゃね?とエラー処理入れないままなパターン。
- 556 名前:仕様書無しさん mailto:sage [2007/09/25(火) 02:02:11 ]
- たまに実行時エラーにアサーション入れたりする奴がいるから困る。
つか、リリースモードでリリースする、 っていう確約が何も無いのにアサーション入れたりする奴がいるけど、 全くもって正気かどうか疑いたくなる。
- 557 名前:仕様書無しさん [2007/09/25(火) 02:37:16 ]
- >>556
リリース版で最終テストしてリリースするっていうのは、 ものすごく基本的な話なんじゃないのか? 世の中には、 『デバック版でしか動かないからそのままリリース』 という輩も居るらしいが…
- 558 名前:仕様書無しさん mailto:sage [2007/09/25(火) 04:05:27 ]
- msvcrtd.dll(デバッグ版Cランタイム)は再配布禁止…らしいな。
- 559 名前:仕様書無しさん mailto:sage [2007/09/25(火) 11:05:02 ]
- FILE1 とか RET2 とか…ソレは何のファイルなのか、どんな戻り値なのか。
辞めようとまでは思わないけどさ。
- 560 名前:仕様書無しさん [2007/09/25(火) 14:13:53 ]
- ABAPで例外を拾おうとあくせくした日々が懐かしい。
そもそもまともに例外を拾う気の無いツールでそんなことするのは無駄だった。
- 561 名前:仕様書無しさん mailto:sage [2007/09/25(火) 17:23:02 ]
- スレ無いから聞いてみるけど、"QAC"ってどうなの?
そこそこ使えるようだが俺的には hoge==TRUE を問題として検出しないツールはあまり信用できない。 (ほかにも=と==の間違い疑惑を指摘しなかったりとか) で、うちの会社アホみたいにこのツールの出力結果を信奉している。 相当投資したみたいだから盲信したくなるのはわからないこともないがね。
- 562 名前:仕様書無しさん [2007/09/25(火) 17:36:06 ]
- TRUE==hogeを俺は認めないぞ
可読性が著しく低下する。 そんなソースは書いたことがないぞ。
- 563 名前:仕様書無しさん mailto:sage [2007/09/25(火) 18:11:03 ]
- TRUE==hogeってことは…TRUE値と、他の真の値を区別したい場合だよな、きっと?
- 564 名前:仕様書無しさん mailto:sage [2007/09/25(火) 18:28:11 ]
- もしも真実がホゲだったなら...どうする!?
- 565 名前:仕様書無しさん mailto:sage [2007/09/25(火) 19:03:55 ]
- QACを参考に修正したことなど一度も無いな。
開発内テストが終わった後にかけるので意味が無い。 というかこれユーザインタフェースが終わってる。 使いづらいったらありゃしない。
- 566 名前:仕様書無しさん mailto:sage [2007/09/25(火) 21:14:29 ]
- ・副作用がある
・定数として評価できる
- 567 名前:仕様書無しさん mailto:sage [2007/09/25(火) 21:45:14 ]
- 「hoge==TRUE」よか「=と==の間違い疑惑」のほうが重要じゃね?
後者に引っかからなくていいから前者に引っかかって欲しいの? 変数同士になっても有効なのは後者じゃ? ま、どっちでもええか
- 568 名前:仕様書無しさん mailto:sage [2007/09/25(火) 22:23:30 ]
- >>561
たぶん検出のための設定があると思うぞ。
- 569 名前:仕様書無しさん mailto:sage [2007/09/25(火) 22:40:20 ]
- bool check(hoge){
bool TRUE; if (hoge >= 0 && hoge <= 100){ TRUE = true; } else { TRUE = false; } return TRUE; }
- 570 名前:仕様書無しさん mailto:sage [2007/09/25(火) 22:41:03 ]
- うわすっげえむずむずするコード
- 571 名前:仕様書無しさん mailto:sage [2007/09/25(火) 22:46:42 ]
- >>569
きもちわりぃw 定数左派の人って範囲チェックのときはどうかくの? ( 0 < hoge && 100 > hoge )ってなるのかな? ==の時だけ定数左?
- 572 名前:仕様書無しさん mailto:sage [2007/09/25(火) 22:56:49 ]
- >>571のいる会社は大変だな
- 573 名前:仕様書無しさん mailto:sage [2007/09/25(火) 22:59:25 ]
- for文書くときもやっぱ
for(int i=0;10>i;i++) みたいに書くんだろうか?
- 574 名前:仕様書無しさん mailto:sage [2007/09/25(火) 23:13:54 ]
- >>573
そういう人もいるよ。
- 575 名前:仕様書無しさん mailto:sage [2007/09/25(火) 23:13:57 ]
- gccで動かしててC99仕様で書いてる。
QACにかけるとエラーだらけ。。
- 576 名前:仕様書無しさん mailto:sage [2007/09/25(火) 23:19:08 ]
- C99はできる子。
- 577 名前:仕様書無しさん mailto:sage [2007/09/25(火) 23:28:36 ]
- >>572
周りに定数左派がいないもんで、ちょいと疑問に思っただけなんだ。
- 578 名前:仕様書無しさん mailto:sage [2007/09/26(水) 01:08:52 ]
- 気分で左右を入れ替える俺は駄目人間だぜ
- 579 名前:仕様書無しさん mailto:sage [2007/09/26(水) 01:20:07 ]
- 統一感が無いのはいかんな
- 580 名前:仕様書無しさん mailto:sage [2007/09/26(水) 05:33:49 ]
- i++ でも ++i でもいいときに
++i を使う人ってどれくらいいるかな
- 581 名前:仕様書無しさん mailto:sage [2007/09/26(水) 07:40:44 ]
- そもそも++i 自体使わなければならない場面はゼロに近いし・・・
わんらいなー気取りで可読性を低くしているのに気付かないだけ
- 582 名前:仕様書無しさん mailto:sage [2007/09/26(水) 08:31:40 ]
- 「間」なんかは数学では ( 0<x<100 ) とか書くでしょ。だからcでも ( 0<x && x<100 ) って書く。
- 583 名前:仕様書無しさん mailto:sage [2007/09/26(水) 08:35:28 ]
- iteratorを進めるときは使うなぁ、++i。
- 584 名前:仕様書無しさん mailto:sage [2007/09/26(水) 09:32:02 ]
- 普通の組み込み型等なら後置、イテレータだったりオーバーロードされテルものだったら前置
- 585 名前:仕様書無しさん mailto:sage [2007/09/26(水) 10:13:58 ]
- これはイテレータとか、区別するのも性能劣化も嫌だから、
どちらでも良いときは常に前置。
- 586 名前:仕様書無しさん mailto:sage [2007/09/26(水) 10:19:44 ]
- 同じく無駄な性能劣化は嫌だし、区別するのも面倒だから前置
最近の賢いコンパイラなら後置でも最適化で一時オブジェクトつくらずにやってくれるかもしれんが
- 587 名前:仕様書無しさん mailto:sage [2007/09/26(水) 10:21:11 ]
- >そもそも++i 自体使わなければならない場面はゼロに近いし・・・
for (int i = 0; i < N; ++i) なんて頻出じゃないのか? C#やJavaのforeach(相当)構文や、C++のgenericを使いまくるんなら別だが。 それでも数値インデックスが必要な場合は結構あると思うけど。
- 588 名前:仕様書無しさん mailto:sage [2007/09/26(水) 10:30:55 ]
- 性能劣化のは ++i より i++ が遅いってやつ?
- 589 名前:仕様書無しさん mailto:sage [2007/09/26(水) 10:45:49 ]
- i++ はもとの i を返すために operator++ 内で一時オブジェクトを作るからな
int 程度だったら無視しても構わない劣化に過ぎないだろうが、 オブジェクト(よく使うのは iterator)のコピーなんてさせたらどれだけ劣化するか。 それが最適な構文なら、富豪的プログラムの観点からは問題無いんだが i++ と ++i ってソースの可読性上は大した違いは無いから、 必要以上に自ら望んで劣化させる必要も無かろうと。 個人的には後置++ はあまり必要ないんだよな。 int j = i++; とか書かれると一瞬思考が止まる。 漏れのアホな頭ではどうにも評価順が自然に解釈できないらしい。
- 590 名前:仕様書無しさん mailto:sage [2007/09/26(水) 11:39:18 ]
- どうしても後置がいいっていうのは
array[ index++ ] = x; みたいなときだな
- 591 名前:仕様書無しさん mailto:sage [2007/09/26(水) 15:46:27 ]
- >>589
なるほど。 普段からjava使ってるから operator オーバライドの影響は頭から飛んでたわ。 ++i 派から i++ に矯正された身でやんす。
- 592 名前:仕様書無しさん mailto:sage [2007/09/26(水) 16:17:47 ]
- do {
} while( (++n)<(sizeof hoge) ) なんてよく書くから、けっこう使うな。
- 593 名前:仕様書無しさん mailto:sage [2007/09/26(水) 16:22:29 ]
- for文でやれ
- 594 名前:仕様書無しさん mailto:sage [2007/09/26(水) 17:10:37 ]
- forだと初期化のあとケツの判定に飛ぶのがイヤン。初期化のあとに1回判定が入る展開もあったり。
do whileだと静的にも動的にもキレイ。
- 595 名前:仕様書無しさん mailto:sage [2007/09/26(水) 23:39:18 ]
- なぜか俺の教育係だった人はfor文を嫌っていた。
俺が下についていたとき、ほとんどのループ処理をwhileで書いてた。 コメントを見ると”とりあえず”って言葉が多くて大丈夫かいな?って思ってた。
- 596 名前:仕様書無しさん mailto:sage [2007/09/26(水) 23:45:22 ]
- そういわれるとforって異質かなという気がしてくる。
( ; ; )セミコロンが気に入らんとか?w
- 597 名前:仕様書無しさん mailto:sage [2007/09/26(水) 23:51:42 ]
- >>595
「とりあえず」は俺もよく使う。 検索とかに使うキーワードというか、いわばタグ的に。 統合開発環境のブックマーク機能を使えという話もあるが 作業ファイルをクリーンすると飛んでしまうこともあるから、と言い張って 俺様専用的に使わせてもらってる。
- 598 名前:仕様書無しさん mailto:sage [2007/09/26(水) 23:54:47 ]
- 「せっかくだから」とか使おうかしら
- 599 名前:仕様書無しさん mailto:sage [2007/09/27(木) 00:11:19 ]
- 某IDEに毒されたか、VBでも「' TODO:」ってやっちまう最近の俺
- 600 名前:595 mailto:sage [2007/09/27(木) 00:33:01 ]
- >>596
いやーなんでだろうね。いまだにわかんない。 今は管理役(≠管理職)になってるからコード書かなくなったから、 一緒に仕事することもほとんどないし。 そうそう、if文とかwhile文の後ろが処理1つで済むとき(nNum++とか)は スコープは絶対につけないというこだわりも持ってた。 こんなことを新人の頃のコードレビューで何度指摘されたことか。。。
- 601 名前:仕様書無しさん mailto:sage [2007/09/27(木) 00:34:02 ]
- なるべくforよりforeachを使うぜ!
perlはお呼びでない?そんな……
- 602 名前:595 mailto:sage [2007/09/27(木) 00:43:30 ]
- >>597
"とりあえず"ってコメントは、今となっては俺も使っちゃうんだけど、 今一緒に仕事してる人から 「問題見つけたときに直す気なのかなって思うと指摘しづらいし、 勝手に直していいのかもわからないからやめて」 っていわれたよ。 うちは検索キーワードはプロジェクト始まるときに、 各機能ごとに決められてそれ以外使えなくなるよ。
- 603 名前:仕様書無しさん mailto:sage [2007/09/27(木) 01:22:17 ]
- "とりあえず"
"取り急ぎ" "おそらくこれでOK" "暫定"
|

|