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


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

【外注・協力会社専用】 NGにしている会社 



1 名前:仕様書無しさん mailto:sage [2006/08/06(日) 03:12:25 ]
自分のNGリストにエントリーしている会社ってある?
ここだけは嫌だっ!ってやつ。

638 名前:仕様書無しさん [2008/08/21(木) 22:33:01 ]
for(i = 0; i < 100; i++){
x[i] = hoge;
}

すればいいのに、
x[0] = hoge;
x[1] = hoge;

x[99] = hoge;
と書くバカを送り込んできた某社はNGです。

639 名前:仕様書無しさん mailto:sage [2008/08/21(木) 23:08:15 ]
>>638
それ、場合によっては正解だったりするから。

変なチップだったり、CPU処理能力が不足していたりすると、
そいいうコーディングをしなきゃいけない事もある。
(要素0〜63への代入を並べて書きましたよ、ええ。)

困ったのは、それ見た新人が鵜呑みにしちまった事。
『修正』する前に他のプロジェクトに回されたが… >638のトコに行った訳じゃないよな?

640 名前:仕様書無しさん mailto:sage [2008/08/22(金) 00:28:38 ]
まあfor文よりループ展開された方が速いのだが、
事情もなし、チューニングの段階でもないのに>>638書いたら…

641 名前:仕様書無しさん mailto:sage [2008/08/22(金) 00:59:32 ]
ステップ数が単価なんだ。とにかく長いソースを書け。

そういう事を言う営業が時々います。

642 名前:仕様書無しさん [2008/08/22(金) 20:53:42 ]
コード的にそうなるとしても、せめてマクロ化しろ

643 名前:仕様書無しさん [2008/08/22(金) 21:24:37 ]
情熱的五輪

644 名前:仕様書無しさん mailto:sage [2008/08/22(金) 22:25:12 ]
ステップ数が単価でC++なら
\挿入しまくるがなw

645 名前:仕様書無しさん mailto:sage [2008/08/22(金) 23:55:26 ]
>>638
5個位までなら、バカの方法が正解だけどな。
さすがに100個は。

646 名前:仕様書無しさん mailto:sage [2008/08/22(金) 23:59:38 ]
昔、マシンの速度が遅いときはやったけどな〜。自前ループ展開。
今じゃ、GCCでもやってくれるご時世だ。



647 名前:仕様書無しさん mailto:sage [2008/08/23(土) 00:01:08 ]
>>645
5個でも… う〜ん 3個以上ならバカは禁止にしたい 個人的な価値観だけど。

648 名前:仕様書無しさん mailto:sage [2008/08/23(土) 00:59:31 ]
SELECT COUNT(*)を知らず、実際に取得したレコード数で判断する処理。

スキルシート上ではOracle経験5年らしいw

649 名前:仕様書無しさん mailto:sage [2008/08/23(土) 02:20:18 ]
>>648
レコード数が高々数百ならば、バッファに全部読み込んだ方が速かったりする。
(countする間に読込が完了)
PL/SQLでの話だが。

# 数万件のレコードが相手の場合は、そもそもカウントしなかったり……
# カウントしなくても済む方法を捻り出す、が正確な言い方か。

650 名前:仕様書無しさん mailto:sage [2008/08/23(土) 17:14:06 ]
>>649
レコード数は高々150万件ぐらいですw
メモリ全部使っても読み込みきれません。鯖が再起動します。
要件が件数取得のみなので、読み込む必要がありません。
データ転送量の観点からも、COUNT結果だけ送ったほうが資源にも優しいと思うけどね。


651 名前:仕様書無しさん mailto:sage [2008/08/23(土) 20:20:03 ]
>>650
|要件が件数取得のみなので、読み込む必要がありません。
>648 の書き方が悪い。

『SELECT COUNT(*)を知らず、実際に取得したレコード数で判断する処理。』
 ↓
『条件に一致するレコードの件数のみを出力する処理で、
 SELECT COUNT(*)を知らず、実際に取得したレコード数を出力した奴』

上記のように書けば、不勉強なPGである事が判ったのに。

# レコード件数だけ取得する処理ってあんまりした事無い。
# たいてい、金額とか種別なんかと組になってる。
# なんで、count処理するSQLと取得するSQLを
# 別々に2回発行するより、1回で取得した方が有利なケースが多い。


>650 メモリ全部使っても読み込みきれません。鯖が再起動します。
 ???
 テーブルのレコード全部取ってくるコード書いたのか?だとしたら、単なる馬鹿だな。


通常のプログラムが大量に資源要求した程度で落ちるサーバって見た事ないけど。
サーバより先に、問題のプロセスが強制遮断されるだろ?

652 名前:仕様書無しさん mailto:sage [2008/08/23(土) 21:24:38 ]
存在だけが問題の場合はCOUNT(*)をとらないで
EXISTSで実行とっちゃったほうが速かった気がした。

まあ、でも検索結果を10件ごとに分けてページ表示〜
とかはCOUNT(*)しなきゃならんわな。

653 名前:仕様書無しさん mailto:sage [2008/08/23(土) 22:20:02 ]
>>通常のプログラムが大量に資源要求した程度で落ちるサーバって見た事ないけど。

何系のマか知らないけど、経験不足なだけ。


654 名前:仕様書無しさん mailto:sage [2008/08/24(日) 01:53:54 ]
>>653
では、実例よろしく。

655 名前:仕様書無しさん mailto:sage [2008/08/24(日) 02:15:48 ]
>>652
|存在だけが問題の場合
 カーソルオープンしてフェッチかけた方が負荷が低い。
 で、レコードの主キーだけメモリに一括読み込みする。

こうするとSQLの発行が1回で済む。
(ややこしいSQLの場合、2回も発行しているとレスポンスが間に合わないってのもある。)
 先にcountとった方が楽なのは確かだが、バッチ処理でしかやらない。

・ページ表示の場合、「前ページに移動」とか「指定ページに移動」なんて要求されるケースが多いので
 先にインデックスを作っとかないと処理が面倒。

・全件の一覧表示を要求された時は往生した。
 結局、前日の夜間バッチで静的htmlを作り、そのページに飛ばすことで逃げたけど。

656 名前:仕様書無しさん mailto:sage [2008/08/24(日) 08:04:50 ]
>>652
SQLの入門書で勉強しなおしたらどうだ?
最初の10件を取り出すのにcount(*)する馬鹿がどこにいる?



657 名前:655 mailto:sage [2008/08/24(日) 08:31:28 ]
>>656
「現在表示中のページ番号/総ページ数」 の形で表示するとか、
ページ番号の一覧を表示するとか、
総件数が判らないと出しようが無いと思うけど。

658 名前:仕様書無しさん mailto:sage [2008/08/24(日) 08:33:38 ]
>>657
そうかい?>>652には総ページ数の話なんて全然出てきていないよ。

659 名前:仕様書無しさん mailto:sage [2008/08/24(日) 08:54:45 ]
>>658
>652
|まあ、でも検索結果を10件ごとに分けてページ表示〜
こういうとき、総ページ数を表示しなくていいと言ってくれる客は少ない。
その少ない客も、やっぱり表示してくれ、と言ってくるのが大半。

googleやアマゾンの検索結果表示が流行りだから仕方がない。

660 名前:仕様書無しさん mailto:sage [2008/08/24(日) 09:57:50 ]
>>656
SQL ServerだったらTOP使えば良いけどね。

661 名前:652 mailto:sage [2008/08/24(日) 11:48:05 ]
>>658
ああ、書き忘れていて悪いな。
もちろん>>659の言うように NN-NN件目を表示 / 全体でNN件パターンだよ。

俺の過去見たところだと、一覧取得のSQLは10個ぐらいテーブルが結びついていて
内部でウィンドウ関数やらが大量に飛び交っているおぞましい代物。
ログインユーザごとに微妙に取得条件が変わる。カスタムで条件も指定可能。
それをチューンアップしろとか言われたので、適当に変更したが、やっぱり限界がある…。
もちろんSQL以外の変更は不可という条件だ。
(一覧項目に紐づく○×レポートが過去に一度も△じゃなくて、実は最初の□で云々
 の用件が大量の一覧照会だった)

662 名前:仕様書無しさん mailto:sage [2008/08/24(日) 13:07:33 ]
日新システムズってどうよ

663 名前:仕様書無しさん mailto:sage [2008/08/24(日) 13:18:29 ]
if文では絶対にelse文を使わないとダメだと思ってる奴がいて困る。
elseの中に主処理が書かれ、再度if文が来るとまたネストしてelseの中に主処理を書く。
関数の終わりころには5階層ぐらい潜ったところにいる。
あるクラス内の関数全ての最後が
    }
   }
  }
 }
}
とかなってるのを見て、怒りを通り越して笑いが止まらなかった。

664 名前:仕様書無しさん mailto:sage [2008/08/24(日) 13:31:13 ]
>663
無知の知ったか、お疲れ。

665 名前:仕様書無しさん mailto:sage [2008/08/24(日) 13:31:34 ]
>>663
短絡評価(ショートサーキット)を理解していない
VB出身者か単なる無知に多い。

俺も昨日そういうソースに手を入れた…。
テスト後だからいじるわけにもいかず…。死ねええええええ

666 名前:仕様書無しさん mailto:sage [2008/08/24(日) 13:52:28 ]
>>663
某社のコーディング規約がそんな感じだったよ。
醜くなるならif文内はサブルチン化するのさ。



667 名前:仕様書無しさん mailto:sage [2008/08/24(日) 15:30:20 ]
hoge = 何らかの処理1;
if(hoge == 異常終了){
 //処理終了
 return false;
} else {
 //処理継続
 hoge = 何らかの処理2;
 if(hoge == 異常終了){
  //処理終了
  return false;
 } else {
  //処理継続
  hoge = 何らかの処理3;
  if(hoge == 異常終了){
   //処理終了
   return false;
  } else {
   //処理正常終了
  }
 }
}

668 名前:仕様書無しさん mailto:sage [2008/08/24(日) 15:47:43 ]
>>667

boolean result = FALSE;
do{
 hoge = 何らかの処理1;
 if(hoge == 異常終了){
  break;
 }
 hoge = 何らかの処理2;
 if(hoge == 異常終了){
  break;
 }
 hoge = 何らかの処理3;
 if(hoge == 異常終了){
  break;
 }
 result = TRUE;
}while(0);
return result;


669 名前:仕様書無しさん mailto:sage [2008/08/24(日) 17:51:24 ]
>>668
それ書いたら、
ねちねちねちねちねちねちねちねちねち、
文句をつけられた。
以前も同様の事があり、相手をするのがアホらしいので、以下の様に書き直した。

if ( funcA() && funcB() && funcC() ) return true;
return false;

これだけの為に単体テスト&結合テスト一式で約2日の遅れ。

一番呆れたのは、
修正報告書類に『担当の○×様がコードの記述方法が気に入らないとの(以下略)』と、
身も蓋もない事を書いて出したら、そのまま通ったこと。

 書類読まずに上に出している事が良く判った。
(あとで事務方に確認したら、しっかり当人の「担当者印」が押されてた… )

670 名前:仕様書無しさん mailto:sage [2008/08/24(日) 18:00:16 ]
>>669
死せよ

return funcA() && funcB() && funcC();

671 名前:仕様書無しさん mailto:sage [2008/08/24(日) 19:25:24 ]
じゃあ、これだったらどう直す?

hoge = 何らかの処理1;
if(hoge == 異常終了){
 //処理終了
 処理1異常終了メッセージ出力;
 return false;
} else {
 //処理継続
 hoge = 何らかの処理2;
 if(hoge == 異常終了){
  //処理終了
  処理2異常終了メッセージ出力;
  return false;
 } else {
  //処理継続
  hoge = 何らかの処理3;
  if(hoge == 異常終了){
   //処理終了
   処理3異常終了メッセージ出力;
   return false;
  } else {
   //処理正常終了
  }
 }
}


672 名前:仕様書無しさん mailto:sage [2008/08/24(日) 19:37:50 ]
組み込み系だと、下手にループとかすると不味いんだよな。
コンパイル後の事を考えながら組まなきゃいけないってのがあるんでね。

まあ、もまえらの話が組み込み系の話かどうかは知らんが。


673 名前:仕様書無しさん mailto:sage [2008/08/25(月) 01:30:26 ]
関数戻りがboolだけじゃないのが癌だよな。

674 名前:仕様書無しさん mailto:sage [2008/08/26(火) 00:35:30 ]
ARMとかやると、boolも charだったり、unsigned intたったり…。
まあ、世の中いろいろな環境があるよな。

675 名前:仕様書無しさん mailto:sage [2008/08/26(火) 03:01:49 ]
そうじゃなくって
1と0だけじゃなくって3とか4とか500とか、
戻り値でエラーの詳細を返す仕様とかあるって事。

676 名前:仕様書無しさん mailto:sage [2008/08/26(火) 21:39:23 ]
え?じゃあどうやってエラーの詳細を出すの?



677 名前:仕様書無しさん mailto:sage [2008/08/26(火) 23:47:35 ]
>676
まあ、古典的な手法だと ERROR変数とか、近代的な方法だと例外の種類でとか。
探せば結構ほかにもあるよ。

678 名前:仕様書無しさん mailto:sage [2008/08/27(水) 00:03:58 ]
>>677
業務系だとログに詳細情報を吐いて、エラーリターンするだけだな。
あとはログを監視しているソフト(日立や富士通の有名ソフト)が回復処理を開始してくれる。

679 名前:仕様書無しさん [2008/08/28(木) 20:33:47 ]
業務系ドカタ凱旋屋はNGにしています。

680 名前:仕様書無しさん mailto:sage [2008/08/28(木) 22:14:13 ]
エラー処理は、エラーコードとエラーメッセージでFA?

681 名前:仕様書無しさん mailto:sage [2008/08/30(土) 19:00:10 ]
文字型を返却し、空文字なら正常、文字列だったら異常って関数が多い。

682 名前:仕様書無しさん mailto:sage [2008/08/30(土) 19:04:50 ]
lastError()

683 名前:仕様書無しさん mailto:sage [2008/09/02(火) 01:55:22 ]
>>671

 hoge = 何らかの処理1;
 if(hoge == 異常終了){
  //処理終了
  処理1異常終了メッセージ出力;
  return false;
 }
 
 //処理継続
 piyo = 何らかの処理2;
 if(piyo == 異常終了){
  //処理終了
  処理2異常終了メッセージ出力;
  return false;
 }

 //処理継続
 fuga = 何らかの処理3;
 if(fuga == 異常終了){
  //処理終了
  処理3異常終了メッセージ出力;
  return false;
 }
 
 //処理正常終了
 return true;
}

684 名前:仕様書無しさん [2008/09/02(火) 01:57:53 ]
スレと関係ないマども!ウザ!

685 名前:683 mailto:sage [2008/09/02(火) 02:06:03 ]
メモリの制限がトコトンまで厳しかったら全部hogeで済ますけどな……。

関数の1部分、ごく狭い範囲だけ見れば意味が分かる、と言うほうが
後日改修する奴には読みやすいかなー、と言う事でそうしていた。
上からずっとhoge意識しながら読むよりは、hogeココマデ、piyoココマデ、fugaココマデ、
ってぶった切ったほうが読むとき楽っしょ。

686 名前:仕様書無しさん [2008/09/02(火) 09:00:39 ]
トライーキャッチでいいじゃん



687 名前:仕様書無しさん mailto:sage [2008/09/02(火) 21:53:42 ]
組み込みだと使えない場合もあるのよね。

688 名前:仕様書無しさん mailto:sage [2008/09/10(水) 21:23:12 ]
ソランは酷すぎた

689 名前:仕様書無しさん mailto:sage [2008/09/11(木) 03:02:41 ]
>>688
kwsk

690 名前:仕様書無しさん mailto:sage [2008/09/16(火) 21:55:19 ]
ソランは非常識が多い

691 名前:仕様書無しさん mailto:sage [2008/09/19(金) 16:52:23 ]
アベシソフト

692 名前:仕様書無しさん mailto:sage [2008/09/19(金) 21:38:22 ]
やらわかいユベシが食いたくなった。

693 名前:仕様書無しさん mailto:sage [2008/09/19(金) 22:28:44 ]
ソランは俺もNGだ。あべしもな。
両社とも規模だけはでかい。

694 名前:仕様書無しさん [2008/09/20(土) 09:04:01 ]
もうNGとか逝ってらんないくらい仕事ねー。とか言いつつ不治痛の仕事はやらんけど(w

695 名前:仕様書無しさん mailto:sage [2008/09/21(日) 21:13:19 ]
あるフレームワークを理解している技術者をソランに派遣依頼。
来た技術者は全然理解していないどころか、何を考えてか進捗会議の場で、
派遣先であるウチに対して、フレームワークの開発元でやってる有料の研修を受けさせて欲しいと要望。
本当に非常識です。

696 名前:仕様書無しさん [2008/09/22(月) 07:18:42 ]
開発現場→フレームワークを理解している人がほしい

人身売買業者→フレームワークに興味がある人が欲しい

技術者→フレームワークは知らないけど、プロジェクト内で勉強する予定


この手のミスマッチはよくあること。この程度でブーブー逝ってるマネージャー、リーダーは
降格させたほうがいいよ。



697 名前:仕様書無しさん mailto:sage [2008/09/22(月) 07:41:58 ]
>695
技術者の面接はちゃんとしたんだろ?
だったら、要員マネジメントのミスじゃないか。

全部技術者におっかぶせるその体質、おまえの会社の仕事はしたくないなぁ。

698 名前:仕様書無しさん [2008/09/22(月) 07:44:43 ]
どうせデスマーチだろ(www

699 名前:仕様書無しさん [2008/09/22(月) 08:09:00 ]
フレームワークわかるよな?って面談時に聞いたのかよ?経歴書見たのかよ?
それで使えないんなら、それは派遣先のミスだべ。
最近なにかと理由付けて単金下げたり、プロジェクト追い出したりする会社多いからな。
ここもその手の会社に違いない。

700 名前:仕様書無しさん mailto:sage [2008/09/22(月) 20:53:50 ]
>>695
ソランならイントラマートだろ?
イントラマートなんて日々更新してるんだからバージョンが変わったら研修ぐらい受けさせて来い。
そんなことも知らないでエンジニア手配してるお前の方が非常識だよ。

701 名前:仕様書無しさん mailto:sage [2008/09/22(月) 21:22:06 ]
まあ、派遣先に研修費用求めるのはDQNだな。

それにしてもイントラマートは酷い。
正常系のテストすらしてない事が多い。
とある関数では、オーバーロードによっては100%異常終了するとかw
配列から任意の箇所の要素を削除してインデクス詰めてくれるモジュールがあるんだけど、
配列の順番めちゃくちゃにしてくれるし・・・


702 名前:仕様書無しさん mailto:sage [2008/09/22(月) 21:29:41 ]
同じform内で同じnameのhiddenが3箇所もあったときは笑いが止まらなかった。


703 名前:仕様書無しさん mailto:sage [2008/09/22(月) 22:07:18 ]
イントラマートの業務ロジックを
PL/SQLで実装してくれと言われた背景には
フロント側の都合があったのか…。

704 名前:仕様書無しさん mailto:sage [2008/09/22(月) 22:44:41 ]
イントラマートのことをフレームワークと呼ぶなんて八百万の神に失礼だ

705 名前:仕様書無しさん mailto:sage [2008/09/22(月) 23:06:13 ]
派遣で面接なんて違法な事できませんよ。

706 名前:仕様書無しさん mailto:sage [2008/09/22(月) 23:37:19 ]
えっ? 派遣で面接って違法なの?
面接がなかった事なんて無いぜ?



707 名前:仕様書無しさん mailto:sage [2008/09/23(火) 00:28:48 ]
面接はないんじゃね。挨拶だよあいさつ。

708 名前:仕様書無しさん mailto:sage [2008/09/23(火) 00:41:52 ]
最近面接で断られる事が多いって、女衒(!?)会社の営業がぼやいてたけどさ。
違法なの?

709 名前:仕様書無しさん mailto:sage [2008/09/23(火) 01:21:01 ]
>>708
違法だよw

710 名前:仕様書無しさん [2008/09/23(火) 07:56:33 ]
派遣で面談が原則禁止なのは「労働者派遣法による派遣」。
偽装請負は法律上派遣ではないので、何してもOK(程度によるけど)

711 名前:仕様書無しさん mailto:sage [2008/09/23(火) 13:39:58 ]
えぇえ?
堂々と労働者派遣事業者名乗ってる会社でも派遣先面接あるよ。
この業界違法だらけだね。

712 名前:仕様書無しさん [2008/09/23(火) 14:05:08 ]
>>711
それは労働者指定の罰則が「努力義務」になってるため。
要するに違反してもおとがめ無しなわけ。ヘンな条文だよなー。

713 名前:仕様書無しさん mailto:sage [2008/09/23(火) 14:08:35 ]
偽装請負自体違法ですw

714 名前:仕様書無しさん [2008/09/23(火) 15:06:05 ]
>>668
糞コード書くな。
こんなコード書く奴らばっかりなんだな、今は。

715 名前:仕様書無しさん mailto:sage [2008/09/23(火) 15:16:13 ]
>>710
偽装請負は、松下方式がクロ判定受けてから、
最低賃金以下しか払わないケースしか残っていないのでは?

716 名前:仕様書無しさん mailto:sage [2008/09/23(火) 15:25:54 ]
>714
どこら辺がクソコードだ? 説明してもらおうか。




717 名前:仕様書無しさん [2008/09/23(火) 15:48:52 ]
do{}while(0)なんて使うところが最低、コードとして美しくない。
ぱっと見、違和感をかんじるんだよ。

たぶん、英語とか勉強してないせいだと思うんだが、この手のコードはよく見る。
もちろん、注意はしないよ、動くからな。

718 名前:仕様書無しさん mailto:sage [2008/09/23(火) 15:57:50 ]
批判だけなら誰でも出来るよw
ラベルを使わないでもっとスマートに書いてみてよ。
技術で納得させてね。

719 名前:仕様書無しさん mailto:sage [2008/09/23(火) 16:07:28 ]
>717
いや、do whileは理由がなければ使わないコードだから、その理由を考えるべきなんじゃないか?

後、美しいコードというのは10年前の流行だけど、それ以降まったく進化していない人?

720 名前:仕様書無しさん mailto:sage [2008/09/23(火) 17:13:52 ]
>>717
エラーコレクトを正しく、なおかつネストが最小で、しかもCで書いてね。

721 名前:仕様書無しさん mailto:sage [2008/09/23(火) 19:50:22 ]
>たぶん、英語とか勉強してないせいだと思うんだが

これを読むと、>>717はhogeに違和感を感じてるんじゃないかな?

722 名前:仕様書無しさん mailto:sage [2008/09/23(火) 20:27:56 ]
>>668は"return は関数内1箇所、かつgoto禁止"かな?
どちらにせよ、>>667よりはマシに見えるけど。

723 名前:仕様書無しさん mailto:sage [2008/09/23(火) 20:41:43 ]
>>717「最近の奴らは英語力無さ杉!何でもかんでもhogeって宣言するな!」

724 名前:仕様書無しさん mailto:sage [2008/09/23(火) 20:57:26 ]
>>721
じゃあ、前半2行は独り言か?

725 名前:仕様書無しさん mailto:sage [2008/09/23(火) 21:04:16 ]
2chのカキコミもソースも明瞭にしてくれないと困るよまったく

726 名前:仕様書無しさん mailto:sage [2008/09/23(火) 21:25:23 ]
おまえら、returnは関数内で1カ所だけ、ってルールはなぜ発生したか知ってるのか?



727 名前:仕様書無しさん mailto:sage [2008/09/23(火) 21:51:46 ]
太古に、その方が処理を追いやすいとか宣伝しまくった奴がいたからだろ。
Z80の条件リターン文を使いまくってたヲレにとっては寝言に等しかったね。
(そういえば、ソレを吹いていた奴は無条件リターン文しか存在しないCPUを主に使ってたな)

あと、その影響かしらんが、
インライン関数内で複数のリターン文を書くと不正な結果を吐くCコンパイラもあったな。

728 名前:仕様書無しさん mailto:sage [2008/09/23(火) 22:59:48 ]
>>726
出口を1個にすれば、そこだけ見れば出口条件が分かるからさ。
出口が幾つもあった日にゃあ、その出口全部の条件を検査せにゃならんからな。

主に品質管理という工業製品の管理技術が導入された結果だよ。

729 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:37:30 ]
出口条件ってなんだ?
分岐がたくさんあっても出口が一つなら必要な検査の量が減るのか?

迷信だろ。

730 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:40:22 ]
>>729
関数の戻り値だよ。

出口が1つなら、1つの検査で済むと仮定して、
出口が3つなら、3つの検査が必要なんだぜ?


731 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:41:36 ]
しまいにゃ絶対に通らない出口があったり、評価以前にコードの品質が危うい。

732 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:41:40 ]
>>728
それ、寝言にしか聞こえんけど。
関数単位で、全ての分岐を通過するテストを実施する以上、
rtn文が1箇所だろうが複数だろうが、分岐の数は変わらない。
つまり、テストケースの数も同じ。


テストの手間ではなく、作成する書類の書式とか
関数の見た目を統一したいとか、
そういう『しょうもない』理由でしかない。

733 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:43:29 ]
戻り値だけじゃないよ。
その出口に至るまでの内部的な条件を全部含めた言い方だよ。
出口Aに至る条件、出口Bに至る条件…
全部を検査しないとならない。

734 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:44:48 ]
>>730
あほか?
関数の復帰値の種類と、return文の数には関係ないだろ。

735 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:44:55 ]
あと、出口が沢山あると、解放漏れしちゃうBUG生む奴いるから禁止な。

736 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:47:07 ]
>>735
その理由なら、納得できる。



737 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:49:09 ]
int f1(X* x)
{
    int result = 0;
    if (x.isXXX())
        result = x.getXXX();
    reuturn result;
}

int f2(X* x)
{
    if (x.isXXX())
        return x.getXXX();
    else
        return 0;
}

f1() のテストは x の状態にかかわらず1つでいいが、
f2() のテストは x の状態に応じて2つ必要だ。

こうですか!?わかりません><

っていうか死ねよジジィ。

738 名前:仕様書無しさん mailto:sage [2008/09/23(火) 23:49:56 ]
>>736
それが納得出来て、どうして検査項目が増える事の理由を納得できないの?
同じ事言ってるんだよ。






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

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

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