「せばな」は言わない

綱の上を歩いたり、壁を登ったりする田舎のプログラマーのおはなし

【不定期連載】BOSSと僕 #whileの3重ループ【3行目】

これは、真と偽の狭間にある日常の一コマ
※体験談ですがものすごく脚色してますのであしからず

登場人物
僕(TK)・・・筆者
BOSS・・・僕のボス

BOSS「TK君には現在、社内で稼働しているツールの改修を担当してもらうことになる」

僕の最初の仕事だった。VBで書かれたツールのリファクタリングだ。

TK「承知しました。」

僕は快諾した。このツールには問題があった。
オブジェクト指向が適用されておらず、冗長な箇所がいくつもあること。
何年も前から機能を継ぎ足していることで重複した機能が存在すること。
インターフェースが統一されていないこと。

BOSS「一つずつでいいから、リファクタリングをお願い」

僕はDB周りはさっぱりなので、オブジェクト指向の勉強と兼ねてまずはコードの解析からスタートした。
そこで目にしてしまったのだ…忘れもしないwhileの3重ループを。
厳密には下記のようにカオスなものだ。

while
{
  while
  {
    while
    {
      while{}
      while{}
    }
  }
}

僕「ヒェッ…」

僕はすぐさまBOSSに事の次第を報告する。

BOSS「TK君、だから私は中身を見たくなかったんだよ…」
大きなため息をつきながらBOSSは呟く。
件のツールはBOSSが開発したものではなく、別に開発者がいる。

TK「できるかぎりやってみます…」
僕も力なく返答する。

BOSS「何かあれば相談して。力になるから」

TK「はい…」
こうして壮絶なリファクタリングが幕を開けたのだった。

後日。BOSSから下記の書籍が差し入れられた。

オブジェクト指向でなぜつくるのか 第2版

オブジェクト指向でなぜつくるのか 第2版