[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 02/23 23:29 / Filesize : 185 KB / Number-of Response : 948
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

この会社辞めようと思ったソースコード#18



1 名前:仕様書無しさん [2007/08/14(火) 23:48:45 ]
この会社辞めようと思ったソースコード。
プログラマとして幻滅するソースコード。
プログラマを悩ませるソースコード。
をつらつらと綴っていって頂戴。

ちなみにここは質問スレじゃないので
技術的な質問がしたいならム板 pc11.2ch.net/tech/ に逝って。

前スレ
この会社辞めようと思ったソースコード#17
pc11.2ch.net/test/read.cgi/prog/1183700531/

251 名前:仕様書無しさん mailto:sage [2007/08/30(木) 21:45:59 ]
だってvalが好きなんだもん!ほっといてくれよ!

252 名前:仕様書無しさん mailto:sage [2007/08/30(木) 23:21:36 ]
>>250
何言語か分からんけど、察するに、
アウトパラメータなのに、直前にインスタンスをわざわざ作ってる。
ってあたりが嫌なのだと見た。
そして成功したら多分、valには既に HogeDict["a"]が入っているので、
if内 val = HogeDict["a"]が不要。

憶測ですがあってる?

253 名前:仕様書無しさん mailto:sage [2007/08/30(木) 23:32:09 ]
bufなアナタはC/C++派。
tmpなアナタはVB派。
foo/barなアナタはPerl派。
ローマ字なアナタはCOBOL派。


254 名前:仕様書無しさん mailto:sage [2007/08/31(金) 10:51:54 ]
>>253
ローマ字以外当てはまる私は何派でしょう?

255 名前:仕様書無しさん mailto:sage [2007/08/31(金) 12:01:46 ]
ごった煮派

256 名前:仕様書無しさん mailto:sage [2007/08/31(金) 13:07:48 ]
カオス派

257 名前:仕様書無しさん mailto:sage [2007/08/31(金) 13:21:29 ]
ファンタジーと呼ばれるものをするよ派

258 名前:仕様書無しさん mailto:sage [2007/08/31(金) 13:48:10 ]
ビューティを紡ぎ奏でるよ派

259 名前:仕様書無しさん mailto:sage [2007/08/31(金) 20:36:27 ]
>>257-258
狼へ帰れw



260 名前:仕様書無しさん [2007/08/31(金) 23:41:31 ]
懐かしいなw

で、結局するの?

261 名前:仕様書無しさん mailto:sage [2007/08/31(金) 23:54:04 ]
$url="doc_root";
$url="doc_root"."img/game";
$url="doc_root"."img/game"."/m";
$url="index.php";
header(Location : $url);

262 名前:仕様書無しさん mailto:sage [2007/09/01(土) 00:13:34 ]
まて下から2行目は書き損じじゃないんだな? 本当にこの通りなんだな?

263 名前:仕様書無しさん mailto:sage [2007/09/01(土) 02:51:55 ]
>>246

「だって印刷したときに履歴が追えないじゃないか。」
(cvsやsvn=ソース共有ツールという認識っぽい)

中には、納品物が揃って初めてコミットなんてプロジェクトも…
そうしないとCVSのリビジョン番号が揃わないからだってさ。


264 名前:仕様書無しさん mailto:sage [2007/09/01(土) 03:20:27 ]
>>263
うちはもっと緩いから良いのかも知れないけど、
時々CVSとかにコメント無しでコミットする人を見ると
粉炉したくなる...

と言うか、氏ね と思わないこともない。


実行もしないし、思わないんだけどね!


265 名前:仕様書無しさん mailto:sage [2007/09/01(土) 03:47:51 ]
>>263
なるほどリビジョンをタグがわりに使うわけか。
新しい。

266 名前:仕様書無しさん mailto:sage [2007/09/01(土) 04:08:48 ]
あーでも次のリリースは
どうせリビジョンそろわないじゃん。

267 名前:仕様書無しさん mailto:sage [2007/09/01(土) 10:49:24 ]
どっかにスペースでも入れて、本質的に変わらんモンをcommitしなおしたりすんじゃねーの?

268 名前:仕様書無しさん mailto:sage [2007/09/01(土) 11:36:05 ]
インデント調整とか本質は変わらんでも、意味がある修正もあるがな

269 名前:仕様書無しさん mailto:sage [2007/09/01(土) 12:29:01 ]
リビジョンが1つ上がることに、空行のスペースが1個ずつ増えるんだよ



270 名前:仕様書無しさん mailto:sage [2007/09/01(土) 13:44:05 ]
>>269
どっかのメールソフトみたいだな。
「           Re:Re:Re:Re:Re:Re:」

271 名前:仕様書無しさん mailto:sage [2007/09/01(土) 20:04:09 ]
「印刷したとき」のために
プログラムとして必要なく、可読性を下げるコードを残すのか┐(´・∀・`;)┌

272 名前:仕様書無しさん mailto:sage [2007/09/04(火) 02:41:20 ]
関数のヘッダーコメントに
「関数内で呼び出してる関数(標準関数とかは除く)の名前と機能を書け」
って指示がプログラム完成後に出た。
俺以外の人が書いたソースは1関数500行以上とかなんで
それぐらいたいしたことないね、みたいな感じなんだけど
ある程度真面目に関数分割した俺はすごくガッカリ
俺だけ量多すぎて手伝ってもらうことになったんだけど
「なんでこんな手間のかかる書き方するんだよ。
センスないんじゃないの?」
って言われた。手伝ってもらってる手前、反論もできなかった
まさか自分が書いたソースコードがきっかけで会社辞めようと思うことなるとは

273 名前:仕様書無しさん mailto:sage [2007/09/04(火) 02:58:15 ]
かわいそす

274 名前:仕様書無しさん mailto:sage [2007/09/04(火) 03:00:10 ]
>>272
>1関数500行
これ後で読む人もかわうそす

275 名前:仕様書無しさん mailto:sage [2007/09/04(火) 05:50:13 ]
>>272
その指示の意図が全く解らん
上司も1関数500行タイプで嫌がらせされたとしか...

276 名前:仕様書無しさん mailto:sage [2007/09/04(火) 07:59:50 ]
>>275
1関数500行だから、何やっているのかわからなくて
レビューできなかったんじゃないか?

277 名前:仕様書無しさん mailto:sage [2007/09/04(火) 09:39:35 ]
長文読んでいただきありがとうございます

指示の大元は客
1関数500行を苦にするのは俺ぐらいで他の人は全員平気
なんで

>>274
かわいそうなのは俺ぐらい
新人もこういう書き方がプロなんだと思って育つ

>>275
意図は多分なし
少なくとも俺個人攻撃はなさそう

>>276
レビューなんかしない職場
仮にレビューなんかやったら
「お前のソースはあちこちに処理が飛ぶから読みにくい」
って俺が吊るし上げ食らうだろうけど

278 名前:仕様書無しさん mailto:sage [2007/09/04(火) 09:49:48 ]
職場を変えるか変わるかどっちかにしなきゃ。

まぁとりあえず頑張れ。

279 名前:仕様書無しさん mailto:sage [2007/09/04(火) 09:54:37 ]
頑張っては駄目だ



280 名前:仕様書無しさん mailto:sage [2007/09/04(火) 10:00:11 ]
だいたい完成後にコメントとはいえソースの変更を易々と受け入れるようなところは話にならない

281 名前:仕様書無しさん mailto:sage [2007/09/04(火) 10:17:12 ]
その話にならない会社が多いから話になる訳で・・・

282 名前:仕様書無しさん mailto:sage [2007/09/04(火) 12:55:04 ]
コメントの条件が
「そのコメントを見て同等の関数をかけること」
なら、>>272 が圧倒的有利なんだけど、
そういう理想論は残念ながら(業務の世界では)現実には即していないからな……。

500行の関数とかだと、関数名から動作の推定は厳しいだろうし
コメントも内容を全然表していないだろうしな…。


283 名前:仕様書無しさん mailto:sage [2007/09/04(火) 13:23:35 ]
#define IF if(
#define THEN ){
#define ELSE } else {
#define ELIF } else if (
#define FI ;}
#define BEGIN {
#define END }
#define SWITCH switch(
#define IN ){
#define ENDSW }
#define FOR for(
#define WHILE while(
#define DO ){
#define OD ;}
#define REP do_lbr
#define PER }while(
#define DONE );
#define LOOP for(;;){
#define POOL }

284 名前:仕様書無しさん mailto:sage [2007/09/04(火) 13:27:47 ]
ワラタ

285 名前:仕様書無しさん mailto:sage [2007/09/04(火) 14:16:59 ]
むりくり違う言語にしようとしてるのかwww

286 名前:仕様書無しさん mailto:sage [2007/09/04(火) 16:46:02 ]
Steve Bourne キタコレ

287 名前:仕様書無しさん mailto:sage [2007/09/04(火) 17:10:52 ]
>>283
ベル研究所の人ですか?

288 名前:283 mailto:sage [2007/09/04(火) 17:32:23 ]
ちっ、ばれちまったか。

289 名前:仕様書無しさん mailto:sage [2007/09/04(火) 17:45:03 ]
これか〜。
www.kaimei.org/note/book_out/expert_c.html

Algolなんだね。みんな物知りだな。



290 名前:仕様書無しさん mailto:sage [2007/09/04(火) 17:49:23 ]
ん?もしかして、このプリプロセッサ使って
sh書いたの?うわー。

291 名前:仕様書無しさん mailto:sage [2007/09/04(火) 20:28:15 ]
>>283
こんな感じでC言語モドキのソースが大量生産されている職場とか普通にあるから困るw

292 名前:仕様書無しさん mailto:sage [2007/09/04(火) 23:50:57 ]
懐かしいな、このホンどこいっちゃったかな。

293 名前:仕様書無しさん mailto:sage [2007/09/05(水) 00:04:42 ]
#define MOD(M, N) (M-(int)(M/N)*N)
#define RAND(N) MOD(rand(), N)

#if 0
#define randn RAND
#else // MODが直るまでこっちを使え
int randn(int n)
{
  int x;
  do { x = RAND(n); } while (x >= n);
  return x;
}
#endif

294 名前:仕様書無しさん mailto:sage [2007/09/05(水) 01:15:00 ]
>>293
直るまでといっても、randnの中でMODが使われてる気配。

295 名前:仕様書無しさん mailto:sage [2007/09/05(水) 03:40:21 ]
#defineの引数がかっこで囲まれてないから
優先順位が低い演算子がきたら項が分断されて、あぼん。

296 名前:仕様書無しさん mailto:sage [2007/09/05(水) 12:31:57 ]
MODなんて自作する必要あるん?
%じゃだめなんだろうか

297 名前:仕様書無しさん mailto:sage [2007/09/05(水) 12:44:26 ]
だめなんですよ。

298 名前:仕様書無しさん mailto:sage [2007/09/05(水) 12:47:03 ]
シェフのこだわりである。

299 名前:仕様書無しさん mailto:sage [2007/09/05(水) 12:47:07 ]
なぜに?



300 名前:仕様書無しさん mailto:sage [2007/09/05(水) 14:54:02 ]
レポーターはそう尋ねた。

301 名前:仕様書無しさん mailto:sage [2007/09/05(水) 16:18:42 ]
なぜに?ってベル研究所の人にも
いってやりたいよなw

302 名前:仕様書無しさん mailto:sage [2007/09/05(水) 21:50:48 ]
>>296
小数以下が欲しいんじゃない?

303 名前:仕様書無しさん mailto:sage [2007/09/05(水) 21:59:58 ]
modで少数以下?

304 名前:仕様書無しさん mailto:sage [2007/09/05(水) 22:26:33 ]
MODで小数って新しい概念だなぁ

305 名前:仕様書無しさん mailto:sage [2007/09/05(水) 22:37:13 ]
少数の何が新しいのかわからん俺に詳しく。
3.5 mod 2 = 1.5 とか普通だろ?

306 名前:仕様書無しさん mailto:sage [2007/09/05(水) 22:52:39 ]
>>305
VB6だと0が返ってくるんだぜ

307 名前:仕様書無しさん mailto:sage [2007/09/05(水) 23:08:57 ]
>305

それを小数以下というのか・・・


何だかなぁ(。-_-。)

308 名前:仕様書無しさん mailto:sage [2007/09/05(水) 23:14:51 ]
java で試したら、 3.5 % 2 == 1.5 だったよ。

309 名前:仕様書無しさん mailto:sage [2007/09/05(水) 23:59:46 ]
とはいえ、近似値である小数の剰余って使いにくそう



310 名前:仕様書無しさん mailto:sage [2007/09/06(木) 00:32:45 ]
mod本来の意味から外れててなんだか気持ち悪いです

311 名前:仕様書無しさん mailto:sage [2007/09/06(木) 00:57:26 ]
>>307
説明よろ

312 名前:仕様書無しさん mailto:sage [2007/09/06(木) 05:49:43 ]
小数点以下ならfmodでいいんじゃ?

313 名前:仕様書無しさん mailto:sage [2007/09/06(木) 07:58:19 ]
>>311
素直に「間違えました」って言えよw

314 名前:仕様書無しさん mailto:sage [2007/09/06(木) 12:31:20 ]
会社を辞めたいとは思わなかったが…

ある案件の障害対応で、カバレッジを通そうとした時、用意されたテストケースで
どうしても通らないところがあって、実際には業務的に通らないと判明した時、泣きたくなった。

更に、もう1個の修正対象ソースはそのソースのコピペな上に、今度はテストケースがコピペ。
おまけに、今度は通らなかったロジックを通す必要がある。
不審に思って以前にテストした担当者に聞いてみたら、
丸々のコピペだからかたっぽはテストしていないと判明orz

ええ、泣きながらテストケース作り直して全部通しましたとも。

あん時、顔は笑っていたけど、目に殺意が入っていたかも・・・

315 名前:仕様書無しさん mailto:sage [2007/09/06(木) 15:47:36 ]
>>313

316 名前:仕様書無しさん mailto:sage [2007/09/06(木) 19:53:05 ]
>>314
丸ごとコピペって。
鉄拳制裁したれ。

317 名前:仕様書無しさん mailto:sage [2007/09/06(木) 20:25:19 ]
>>316
そんなんで鉄拳制裁していた手がいくつあっても足りないな、うちの会社の場合。orz

318 名前:仕様書無しさん mailto:sage [2007/09/06(木) 20:35:46 ]
クロスカウンター方式を提案します。
一定期間ごとに実施すれば各期間で必要な手は最大でも一つでとても経済的です。
導入されてはいかがですか?

319 名前:仕様書無しさん mailto:sage [2007/09/06(木) 22:03:32 ]

テストケース

〜〜であることを確認する   ○  ←レッツコピペ!!
〜〜
〜〜
〜〜
〜〜



320 名前:仕様書無しさん mailto:sage [2007/09/06(木) 22:53:39 ]
○×は面倒だからどうしてもコピペになっちゃうな
まだOKNGのほうがいい

321 名前:仕様書無しさん mailto:sage [2007/09/06(木) 23:33:28 ]
システム全体がフランケンシュタインを髣髴とさせるコピペばかりのソース
もちろんドキュメント一式も上記怪物の生まれ変わりのよう

現在も増改築の真っ最中

322 名前:仕様書無しさん mailto:sage [2007/09/07(金) 00:27:31 ]
で、ある日突然崩壊する。

323 名前:仕様書無しさん mailto:sage [2007/09/07(金) 01:01:11 ]
if (a == 0) hoge(); みたいなコードがあったら、

条件:a == 0 → 結果:hoge()をコールする

のように、コードそのまんまのテストケースを書くように指示されていたので、
言われたままに書いていたけど、バグの数も基準があって、バグが0だとまずいといわれた。
こんなテスト仕様書で、どうやってバグをだすんだよ。




324 名前:仕様書無しさん mailto:sage [2007/09/07(金) 01:13:51 ]
俺が昔やった方法を教えてやろう。
つ テスト仕様書にバグを含める

バグの発生率が2〜5%程度にならないと、充分に試験ができていない、と見なす某大手

325 名前:仕様書無しさん mailto:sage [2007/09/07(金) 01:19:45 ]
>>324
>>323は、テスト仕様書も、コードと突き合わせながらレビューをして、それでOKをもらう必要があるので、
そのワザは使えません。
仕切ってる人が、単体テストの意味を取り違えてるとしか思えない…

326 名前:仕様書無しさん mailto:sage [2007/09/07(金) 01:55:36 ]
そういう事なら、その仕切ってる人がバグだな

327 名前:仕様書無しさん mailto:sage [2007/09/07(金) 01:58:40 ]
>>325
出来上がった成果物を信用していないというか、
ソースコード自体を信じてないみたいなテスト仕様書だな

328 名前:仕様書無しさん mailto:sage [2007/09/07(金) 02:11:23 ]
ソースコードをじゃなくてコンパイラとか言語そのものを信じてないんだと思うよ。
>>323じゃないけど
hoge = "test";
で「hoge変数に test という文字列が格納されていること」
みたいな試験項目を見たことあるから分かる

329 名前:仕様書無しさん mailto:sage [2007/09/07(金) 05:44:10 ]
ちょっとつきあった某社:「コンパイラを信じてなにかあったらどうするんだ?」って、
未だにASMオンリー。 しかもそれがルネサスとかじゃなく、LSIC80でさえも。
親分がJRじゃなければとっくにつぶれてるぞ。



330 名前:仕様書無しさん mailto:sage [2007/09/07(金) 07:10:26 ]
そこまで言うなら、
「アセンブラを信じてどうするんだ?ハンドアセンブルだろ....」

って言い返せよ。

331 名前:仕様書無しさん mailto:sage [2007/09/07(金) 07:52:49 ]
多分最適化でおかしくなっちゃうコードでも書いてるんだろ

332 名前:仕様書無しさん [2007/09/07(金) 07:53:07 ]
「機械を信じてどうするんだ!手で計算しろ!」

333 名前:仕様書無しさん [2007/09/07(金) 08:15:09 ]
ICなんか信用ならん
タイガーを使え!

334 名前:仕様書無しさん mailto:sage [2007/09/07(金) 08:56:36 ]
他人なんか信用するな!
頼れるのは己の力のみ!

335 名前:仕様書無しさん mailto:sage [2007/09/07(金) 11:16:24 ]
そこ、開発成果のリリースまでどれくらいかかってるんだろ?>>329

RADを要求される案件が多いので、VBやC#にどっぷりの漏れ。
ASMでどれほどのRADができるのか知りたい。

336 名前:仕様書無しさん [2007/09/07(金) 11:27:54 ]
どんな開発環境で作ってもプログラムは最終的に機械語になるわけで、
既存の開発環境でできる事は機械語と1対1対応できるアセンブラにできない事はない

337 名前:仕様書無しさん mailto:sage [2007/09/07(金) 11:32:23 ]
マ板でコスト無視な発言はイタイですよ

338 名前:仕様書無しさん mailto:sage [2007/09/07(金) 20:57:07 ]
どの板でもネタにマジレスは痛いんだぜ

339 名前:仕様書無しさん mailto:sage [2007/09/07(金) 21:03:23 ]
>>335
そんな馬鹿丸出しのことを言っているのは上の方だけで、現場では普通に
Cで開発、上には -S したアセンブリソースしか見せない、みたいな予感。



340 名前:仕様書無しさん mailto:sage [2007/09/07(金) 21:24:07 ]
>>327
そもそもそのソースが本当に仕様を満たしてるかどうかがわからんのに
なんでソースを中心にテストを作るのか

341 名前:仕様書無しさん mailto:sage [2007/09/07(金) 21:52:59 ]
きっと辞めたくなる会社の上司だな

342 名前:仕様書無しさん mailto:sage [2007/09/08(土) 01:57:07 ]
>323
どーしよーもない場合は
「テストケースを想定して、そこで見つかるようにわざとバグらせておく」
もうちょっと前向きな意図で、「ベバッグ」と称してそういうことをすることがある、らしい。201の鉄則本にあった。

この場合は……hoge();の前に;でも入れておくかな。

343 名前:仕様書無しさん mailto:sage [2007/09/08(土) 02:46:38 ]
それはコンパイル通らんような気が

344 名前:仕様書無しさん mailto:sage [2007/09/08(土) 02:57:35 ]
テストを別の人がする時には、テストする人をテストするバグを混ぜることもあるよね
境界条件の以下と未満を置きかえるような、まともにテストすれば必ず見つけられる簡単なバグ

ただ、バグを入れたことを忘れる俺のバグが問題なんだよな

345 名前:仕様書無しさん mailto:sage [2007/09/08(土) 02:59:37 ]
>>343

346 名前:仕様書無しさん mailto:sage [2007/09/08(土) 03:10:31 ]
>>344
故意バグ一覧.xls
作ろうぜ

347 名前:仕様書無しさん mailto:sage [2007/09/08(土) 03:22:41 ]
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| この 故意バグ一覧.xlsとはなにかね?

   ̄ ̄ ̄|/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ∧_∧       / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ( ・ハ・) ∧ ∧ <  あ・・・いや・・・・
 (  ⊃ )  (゚Д゚;)  \_______
 ̄ ̄ ̄ ̄ ̄ (つ_つ__
 ̄ ̄ ̄日∇ ̄\|>>346 |\
       ̄   =======  \

348 名前:仕様書無しさん mailto:sage [2007/09/08(土) 03:55:38 ]
仕様の正に要の部分がバグってる(別の案件のテスト中に見つけた)のに、
1年以上も、バグのまま動いてるプログラムがある。
テスト実績はすべてOKで残っている。
実質、業務では使っていない項目ということで、放置したままだ。。

349 名前:仕様書無しさん mailto:sage [2007/09/08(土) 04:03:25 ]
でもバグ一覧は作っておいたほうがいいな
報告済みかそうでないか分かるだけでも安心感が増す



350 名前:仕様書無しさん mailto:sage [2007/09/08(土) 07:17:40 ]
>>349
作るな!

バグ・トラッキング・システムを使え!

351 名前:仕様書無しさん mailto:sage [2007/09/08(土) 09:21:30 ]
おれ、バグ見つけるのも再現させるのも、そしてそれを直すのも得意なんだけど、
何故かみんなから嫌われてる...orz






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<185KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef