おもしろソース

登場人物:
 「( ´∀`)」:おれ
 「(=゜ω゜)」 :ソースメンテナンス担当者


まずはコミットを発行するメソッドから

public void commitLoop( int intCount ){
  try{
    for( int intI=0; intI < intCount; intI++ ){
      _connection.commit();
    }
  } catch( SQLException sqle ){
    // 省略〜
  }
}

( ´∀`)<あれ?このループって何やってんの?
(=゜ω゜)<コミットをやっているようです。
     呼び出し元はすごいっすよ。
( ´∀`)<どれどれ。

  // 〜〜の変更を確実に反映させるため
  commitLoop( 10 );

(=゜ω゜)<これがいたるところにあるんです。
( Д )   ゜ ゜


コミットは1回で十分です。


続いて何やってるかよくわからんがおかしいソース。

  double dblWork01 = 0;
  double dblWork04 = 0;


  〜〜〜 中略 〜〜〜
  

  if( dblWork04 < 100 ){
    dblWork04 = 10;
  } else if( dblWork04 < 1000 ){
    dblWork04 = 100;
  } else if( dblWork04 < 10000 ){
    dblWork04 = 1000;
  } else if( dblWork04 < 100000 ){
    dblWork04 = 10000;
  } else if( dblWork04 < 1000000 ){
    dblWork04 = 100000;
  } else if( dblWork04 < 10000000 ){
    dblWork04 = 1000000;
  }

  long lngItem = dblWork01 / dblWork04;
  if( lngItem >= ( dblWork01 / dblWork04 ) ){
    lngRtn = lngItem;
  } else {
    lngRtn = lngItem + 1;
    〜〜〜 ちょっと略 〜〜〜
  }
  〜〜〜 略 〜〜〜

( ´∀`)<これはな〜に?
(=゜ω゜)<なんなんですかね?これ。
( ´∀`)<あっ!最後のは丸め誤差を無くそうと努力してる!?
(=゜ω゜)<それですよきっと


割り算時にしっかり四捨五入なり切り捨てなりをしてからキャストしなさい( ・ω・)oビシッ



( ´∀`)<んで?これ誰が直すの?
(=゜ω゜)<ここは無理です。アンタッチャブルです。
    動いているところは触らない方針だそうです。


ここで終わるような会社じゃなかった。そこ。
なんでも今回の改修依頼は「もともとバグが多くてそもそもまともに動いてない」
ということが運用中に多々言われたということなのでこっちに回ってきた経緯があるらしい。


(..゜Д゜)<ほなうごいてねーじゃねーかっ


依頼書と経緯が書類になってたのでみしてもろたら。
そりゃーすげーことがつらつらと。
要約すると「要望していた機能にバグが多く、そもそも動いていないので動くようにしてください。」
(..゜Д゜)<これで「納品」してたのかよ!!


げに恐ろしきはこれでも仕事としてまかり通る世の中があることである。
それもさておき。


最後にひとこと。
(..゜Д゜)<1メソッドが3000行近くあるってアホぢゃ
そりゃーそんなソースじゃバグも多いわ直らんわってのは推して知るべしですわな。