- 1 名前:仕様書無しさん [2007/08/14(火) 23:48:45 ]
- この会社辞めようと思ったソースコード。
プログラマとして幻滅するソースコード。 プログラマを悩ませるソースコード。 をつらつらと綴っていって頂戴。 ちなみにここは質問スレじゃないので 技術的な質問がしたいならム板 pc11.2ch.net/tech/ に逝って。 前スレ この会社辞めようと思ったソースコード#17 pc11.2ch.net/test/read.cgi/prog/1183700531/
- 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
- 352 名前:仕様書無しさん mailto:sage [2007/09/08(土) 10:01:40 ]
- 人には「自分とは異質なもの(自分に出来ないことをやっちゃう奴・
自分には理解できない話をする奴・自分の知らないことを知ってる奴) を嫌ったり排除したりする」傾向があるからな...しかも馬鹿な野郎ほどその傾向が強い。
- 353 名前:仕様書無しさん mailto:sage [2007/09/08(土) 10:07:29 ]
- その傾向に陥ってないか自問自答するのは容易じゃないよね.
- 354 名前:仕様書無しさん [2007/09/08(土) 10:11:13 ]
- 351じゃないけど、
バグ出しを続けた結果、そのシステムは作らなかったことになったことがあるな。 一つ直させると二つ壊れてくるというゴールドラッシュだったな。
- 355 名前:仕様書無しさん mailto:sage [2007/09/08(土) 10:13:50 ]
- 1つで2つならば少ないんじゃない?
少しでもいじるとシステムが動かなくなるのがデフォってのもあるわけで・・・
- 356 名前:仕様書無しさん mailto:sage [2007/09/08(土) 12:10:28 ]
- >>350
開発部署で用意されてるBTSに入れてるんだけどさ、見てくれないし全部スルーされちゃうんだよね
- 357 名前:仕様書無しさん mailto:sage [2007/09/08(土) 13:44:29 ]
- >>356
それはきっと バグ たっぷりで 際限が無い からだよ
- 358 名前:仕様書無しさん mailto:sage [2007/09/09(日) 00:46:34 ]
- >>350
でも結局報告するときは結局BTSからバグ一覧を作成することになる場合が多い希ガス。 csvとかで。
- 359 名前:仕様書無しさん mailto:sage [2007/09/09(日) 01:12:28 ]
- >>358
なるよな。。 なんか紙で出てこないと不安らしい。 我慢できる限界がエクセルの一覧表。 しょうがないから、BTSのxmlからcsv吐き出すスクリプト組んだよ。。 余計な仕事させやがって。
- 360 名前:仕様書無しさん mailto:sage [2007/09/09(日) 21:24:20 ]
- /*
if いふ else えるす while わほいる? do どー fopen ふぉーぷん fread ふれっど fwrite ふうらいと fclose ふくろーず */ なにこのカンペ……
- 361 名前:仕様書無しさん mailto:sage [2007/09/09(日) 21:34:42 ]
- >>360
答えが間違ってるカンペって・・・
- 362 名前:仕様書無しさん mailto:sage [2007/09/09(日) 21:44:18 ]
- 「わほいる?」に萌えた
語感がかわいい わほいる
- 363 名前:仕様書無しさん mailto:sage [2007/09/09(日) 21:52:48 ]
- 微笑ましいが・・・・他所でやって欲しいな
- 364 名前:仕様書無しさん mailto:sage [2007/09/09(日) 21:57:06 ]
- /* */
ってVC2005だと 行選択時の//の一括付加・削除のときに巻き込まれて /* → * になったりするから使いづらい ゲイツ死ね
- 365 名前:仕様書無しさん mailto:sage [2007/09/09(日) 22:11:42 ]
- /*横綱.c/*
#include <朝青龍.h>
- 366 名前:仕様書無しさん mailto:sage [2007/09/09(日) 23:04:45 ]
- >>360
do どー fclose ふくろーず (梟?) がチョット好き >>365 /* 横綱.c/* これコメントとして間違ってない? 下の行もコメントアウトしてるのか。
- 367 名前:仕様書無しさん mailto:sage [2007/09/09(日) 23:10:27 ]
- どう見ても間違ってますw
- 368 名前:仕様書無しさん mailto:sage [2007/09/09(日) 23:11:25 ]
- >>360
ふくろーずってバンドの名前みたいだなw
- 369 名前:仕様書無しさん mailto:sage [2007/09/09(日) 23:15:17 ]
- きっと甲本ヒロト。
- 370 名前:仕様書無しさん mailto:sage [2007/09/10(月) 08:52:15 ]
- ギリギリガガンガン
- 371 名前:仕様書無しさん mailto:sage [2007/09/10(月) 20:03:31 ]
- ソースというよりmakefileなんだけど、
依存関係が間違ってるとか、は当然のごとくあり。 今日見たのは、 CFLAGS= としてオプションも消しているのを見た。 コメント化してデフォルトを有効にすると、警告がでるわでるわ。 コンパイラを誤魔化すためにやってるんじゃないかと思った。 もともとバグのあるソースだし、表面的にでも動くように、見なかったことにしました。 (ほんとはバグも表面化してるけどw)
- 372 名前:仕様書無しさん mailto:sage [2007/09/10(月) 20:45:49 ]
- 今更だけど、なんで日本のソフトウェア業界ってこんなに壊滅的なの?
- 373 名前:仕様書無しさん mailto:sage [2007/09/10(月) 20:52:39 ]
- どこの国も変わらんと思うぞ。
派手さでいえば米国の方が上だし。
- 374 名前:仕様書無しさん mailto:sage [2007/09/10(月) 21:49:17 ]
- C言語で作ってあったプログラムで、makefileでヘッダの依存関係が無かったので
depend追加したら毎回全てのソースがコンパイルされるようになった。 なんでかな〜、と思って調べてみたら、依存関係のトップにあるヘッダが make時に毎回自動生成されてやがる。 こんなmake環境にした開発者、氏ね。
- 375 名前:仕様書無しさん mailto:sage [2007/09/11(火) 00:24:58 ]
- >>373
米国の場合は、それを埋め合わせるセンスがあるんじゃないかと思ってる。 着眼点や、機能のまとめかたやUIの作りなどのセンス。 これがスマートだと、バグが判明しても、使い続けざるを得ないという気になってしまう。
- 376 名前:仕様書無しさん mailto:sage [2007/09/11(火) 01:02:33 ]
- 使い物にならない奴が志望してくるのがいかん。
大学で切り落とせ。 アホに単位をやるな。
- 377 名前:仕様書無しさん mailto:sage [2007/09/11(火) 01:11:47 ]
- 未経験者をいきなり実戦投入するとひどいのが出来上がる。
俺自身「今ならもっと上手く書けるのに」「あの時これを知ってれば」って思い出すことがある。 そんな自分と比べても、酷すぎるのが今の職場...orz
- 378 名前:仕様書無しさん mailto:sage [2007/09/11(火) 01:36:06 ]
- >376
そこでFizzBuzzですよ
- 379 名前:仕様書無しさん mailto:sage [2007/09/11(火) 01:36:10 ]
- 新人が使えないのは仕方ないが
使えないベテランが沢山いる、不思議なこの業界
- 380 名前:仕様書無しさん mailto:sage [2007/09/11(火) 02:01:54 ]
- >379
「ベテラン」というのが履歴書に書かれた経験年数に基づく呼称でないのなら 確かに不思議だが
- 381 名前:仕様書無しさん mailto:sage [2007/09/11(火) 02:20:30 ]
- 使えない奴は派遣するってことで
- 382 名前:仕様書無しさん mailto:sage [2007/09/11(火) 03:57:18 ]
- >>374
正直makefileって規模でかいとよく分からなくなるのがデフォというか 新たな仕様にしてほしいぐらいだ
- 383 名前:仕様書無しさん mailto:sage [2007/09/11(火) 07:23:02 ]
- >>382
ant使え、
- 384 名前:仕様書無しさん mailto:sage [2007/09/11(火) 08:14:37 ]
- 今のパソコンなら速いから、全コンパイルのbatでもすぐ終わるでしょ。
俺はmakeとbatと両方用意して、「makeを知らない保守者はbatでいいよ」と書き添えてる。
- 385 名前:仕様書無しさん mailto:sage [2007/09/11(火) 08:15:57 ]
- 扱うファイルが、100個ぐらいとか、依存関係がシンプルなものだけなら、makefile もまだ手軽で良いけどね。
それ以上で makefile 使ってるプロジェクトに関わると眩暈がするな。 世の中、もうちょっとマシなものが、いくらでもあるのによりによって makefile かよって。
- 386 名前:仕様書無しさん mailto:sage [2007/09/11(火) 10:57:02 ]
- >>384
んなもん、規模や開発環境によるだろ うちのプロジェクトはフルコンかけると2時間くらいかかるぞ 重要なヘッダが更新されると、すぐにフル逝っちまう orz
- 387 名前:仕様書無しさん mailto:sage [2007/09/11(火) 12:20:57 ]
- ヘッダの切り分けがおかしいんだろ
- 388 名前:仕様書無しさん mailto:sage [2007/09/11(火) 14:25:27 ]
- フルコン2時間って携帯?
規模に対して環境が貧相な現場って他に浮かばないんだけど 昔、入った携帯の現場で warning が10000超えたのは笑ろた
- 389 名前:仕様書無しさん mailto:sage [2007/09/11(火) 18:31:45 ]
- 少ねえ少ねえ
- 390 名前:仕様書無しさん mailto:sage [2007/09/11(火) 21:10:04 ]
- コンパイルのバグか何かで、6万後半あたりでwarningの数が一旦0になったこともあったな。
- 391 名前:仕様書無しさん mailto:sage [2007/09/11(火) 21:13:54 ]
- 臨海値65535か 16bit unsigned
- 392 名前:仕様書無しさん mailto:sage [2007/09/11(火) 21:19:13 ]
- コンパイラをバグらせるとは・・・
コンパイラ「想定の範囲外です・・・」
- 393 名前:仕様書無しさん mailto:sage [2007/09/11(火) 21:19:35 ]
- 臨海値
- 394 名前:仕様書無しさん mailto:sage [2007/09/11(火) 21:20:05 ]
- むしろfloatで
- 395 名前:仕様書無しさん mailto:sage [2007/09/11(火) 21:38:24 ]
- 今はlong long があるじゃまいか!
- 396 名前:仕様書無しさん mailto:sage [2007/09/11(火) 21:48:18 ]
- 遊戯、もうやめて!
コンパイラの示す warning は既に臨海値よ!!
- 397 名前:仕様書無しさん mailto:sage [2007/09/11(火) 21:59:07 ]
- const TYPE const*const&;
- 398 名前:仕様書無しさん mailto:sage [2007/09/11(火) 22:33:15 ]
- /* index.html */
#html head() { style;style.css } body() { test. } #html
- 399 名前:仕様書無しさん mailto:sage [2007/09/11(火) 22:44:26 ]
- これは新しい言語
- 400 名前:仕様書無しさん mailto:sage [2007/09/12(水) 03:34:02 ]
- #define head nanntoka
#define style kanntoka #define css kanntoka #define body foo #define test bar #include "index.html"
- 401 名前:仕様書無しさん mailto:sage [2007/09/12(水) 09:09:54 ]
- #include "mychtml.h"
int main() { html( head(title("Test Page")), body("Hello, world !!!<BR>\n") ); }
- 402 名前:仕様書無しさん mailto:sage [2007/09/12(水) 22:56:12 ]
- Const Arr = "a,b,c,d"
function aaa() for i = lbound(split(arr,",")) to ubound(split(arr,",")) if split(arr,",")(i) = "a" then aaa = split(arr,",") end if next end function こんなん
- 403 名前:仕様書無しさん mailto:sage [2007/09/12(水) 23:09:30 ]
- >>402
splitやり過ぎってヤツですか。
- 404 名前:仕様書無しさん mailto:sage [2007/09/12(水) 23:15:26 ]
- ソースコードがスパゲッティ!でもそんなの関係ねぇ!
- 405 名前:仕様書無しさん mailto:sage [2007/09/12(水) 23:33:39 ]
- >>402
んんん!?なんだか見覚えがあるw
- 406 名前:仕様書無しさん mailto:sage [2007/09/12(水) 23:50:26 ]
- >>402
これは素晴らしい無駄関数ですね
- 407 名前:仕様書無しさん mailto:sage [2007/09/13(木) 00:26:45 ]
- これはあれだ、きっとsplit呼び出しの結果が全て同じだと判断して、
自動的に一回の呼び出しに纏めてくれる、素晴らしいコンパイラが存在するんだよ!
- 408 名前:仕様書無しさん mailto:sage [2007/09/13(木) 00:29:07 ]
- それでも最適化なら・・・最適化ならきっとなんとかしてくれる・・・!!
- 409 名前:仕様書無しさん mailto:sage [2007/09/13(木) 00:31:24 ]
- 探すと本当にあるから困る
- 410 名前:仕様書無しさん mailto:sage [2007/09/13(木) 00:33:19 ]
- 最適化? こんぱいる?
くっふふふ VBScriptというものは ひとたび構文木にさえ解析されてしまえば 二度とは 二度とは
- 411 名前:仕様書無しさん mailto:sage [2007/09/13(木) 00:56:55 ]
- スパゲティと申したか
- 412 名前:仕様書無しさん mailto:sage [2007/09/19(水) 19:03:16 ]
- #ifndef Hoge
typedef struct tag_Hoge { (略) } Hoge; #endif え〜っと。
- 413 名前:仕様書無しさん mailto:sage [2007/09/19(水) 19:52:58 ]
- ・・・きっとCは初めてなんだよ。
先週入門書を読み終わったばかりなんだ。 きっと、きっと・・・
- 414 名前:仕様書無しさん mailto:sage [2007/09/20(木) 00:24:54 ]
- ifndefが嫌いだ
なんでifnodefじゃねぇんだ ややこしいよ #if !definedのほうがマシだ。 どうせ多重防止とかだったらpragma onceで事足りるからいいけど
- 415 名前:仕様書無しさん mailto:sage [2007/09/20(木) 16:09:26 ]
- >>412
そのソースの意図がさっぱりわからない。 #define と typedef を混同したのだろうか…
- 416 名前:仕様書無しさん mailto:sage [2007/09/20(木) 18:13:33 ]
- >>414
リリース版を表すNDEBUGの方が… 標準に従うと、デバッグ版のみ有効にするのに #ifndef NDEBUG ... #endif と否定が2回来て嫌な感じだ 結局可読性とかで _DEBUG が使うんだけどな って脱線しすぎか。
- 417 名前:仕様書無しさん mailto:sage [2007/09/20(木) 18:42:13 ]
- NDEBUGは<assert.h>が見るんだっけか。
- 418 名前:仕様書無しさん mailto:sage [2007/09/20(木) 18:55:12 ]
- >>415
FAQ級の落とし穴らしい。 www.kouno.jp/home/c_faq/c10.html#15
- 419 名前:仕様書無しさん mailto:sage [2007/09/20(木) 19:52:18 ]
- そういうレベルが普通なのか?
- 420 名前:仕様書無しさん mailto:sage [2007/09/20(木) 23:51:55 ]
- >>415,418
??。何をやろうとしてるのかすらさっぱりわからんのだが・・。
- 421 名前:仕様書無しさん mailto:sage [2007/09/21(金) 00:14:14 ]
- >>420
たぶん>>415の言うとおり#defineとtypedefを混同してるんだと思う。 ・・・typedefを何回も呼ぶつもりなのか??? 後から呼んだ方が有効になるなら、実害はなさそうだけど・・・ と思って試してみたら、さすがに名前が衝突してるってエラーが出た。
- 422 名前:仕様書無しさん mailto:sage [2007/09/21(金) 00:19:15 ]
- 「Hoge」がまだ定義されてなければtag_Hoge型の構造体としてHogeを定義、ってことだろう
何をしたいと思ったかは分かっても何に使うはさっぱりわからんw
- 423 名前:仕様書無しさん mailto:sage [2007/09/21(金) 00:40:31 ]
- Hogeが定義済みだったときにどんな動作をするんだろうな
- 424 名前:仕様書無しさん mailto:sage [2007/09/21(金) 03:36:09 ]
- なるほど、こういうレベルが普通なんだな……
- 425 名前:仕様書無しさん [2007/09/21(金) 13:07:19 ]
- public String getErrorMessage() {
// TODO 自動生成されたメソッド・スタブ return null; }
- 426 名前:仕様書無しさん mailto:sage [2007/09/21(金) 13:13:55 ]
- Cで継承とかしようってことかな。
#include "FooExt.h" #ifndef FOO #define FOO typedef strcut foo{ method1, method2, }Foo; #endif で、FooExt.hとかで typedef strcut foo{ method1, method2, method3, }Foo; #define FOO とか。。 考え過ぎか?。
- 427 名前:仕様書無しさん mailto:sage [2007/09/21(金) 21:15:10 ]
- >>425
??? ・・・catchしたいのかなぁ・・・
- 428 名前:仕様書無しさん mailto:sage [2007/09/21(金) 22:00:54 ]
- >>425 が何を言いたいのかさっぱりわからない
これってIDE(eclipse,netbeans,etc)で自動生成されたメソッドでしょ? 納品されたソースにこんなのがあったら嫌だけど、開発中なら腐る程あるよ
- 429 名前:仕様書無しさん mailto:sage [2007/09/21(金) 22:20:59 ]
- private String errorMessage;
から自動生成されたのは分かるが戻り値がぬるぽ
- 430 名前:仕様書無しさん mailto:sage [2007/09/21(金) 23:33:24 ]
- もう辞めた会社のソースだけど、何年も運用を続けてきたシステムの仕様変更があるからと、
俺も参加することになったときに、一月に現行処理のバグを200くらい報告したことがある。 仕様変更自体よりバグとりの時間の方が長い位だった。 そのためだけに一月くらい時間をもらえたのが幸運だったけど。 あと今の現場。JSPのソースが全部スクリプトレット。全部 out.println とかで書いてありやがる。 ほとんどCGI気分だっ。
- 431 名前:仕様書無しさん mailto:sage [2007/09/21(金) 23:34:52 ]
- >>428
保守するコードを開いてみたらTODOだらけってのはよくある話。
- 432 名前:仕様書無しさん mailto:sage [2007/09/21(金) 23:56:00 ]
- 藤堂さんのおおいしょくばなんだね…
- 433 名前:仕様書無しさん mailto:sage [2007/09/23(日) 01:39:37 ]
- 手順書はsudoさんだらけだしな
- 434 名前:仕様書無しさん mailto:sage [2007/09/23(日) 02:07:31 ]
- 作業始めたら安藤さんのお世話になりっぱなしだ
- 435 名前:仕様書無しさん mailto:sage [2007/09/23(日) 02:28:45 ]
- うちには後藤さんが多いから困る
- 436 名前:仕様書無しさん mailto:sage [2007/09/23(日) 02:34:01 ]
- んなこたー知らねーよ
- 437 名前:仕様書無しさん mailto:sage [2007/09/23(日) 02:48:43 ]
- 三木だったり後藤だったりする
|

|