mociの日記: リファクタリング
オブジェクト指向に縁がないので、あまり真剣にeXtreme Programmingには当たっていません。XPにオブジェクト指向が必須というわけではないそうなので、ウェブで読める概念程度には興味を示しもするのですが、その程度なので、ストーリーに直接コメントするレベルにはないわけです……
しかし、そもそもリファクタリングとは、そういうものだったのでしょうか。
汎用機以来の伝統を引きずりまくっているうっとこのような職場では、工程って言ったら無条件にウォーターフォールと思われています。一度作った部分に不足だとか問題だとか、あるいはまた新たな必要が生じたとかして、もう一度手を入れなければならなくなる状況を「後戻り」と称して、極端に忌み嫌う風習があります。次の工程に移る前に死ぬほどレビューを重ねて、二度とその工程に後戻りすることのないようにして品質を確保しよう、というわけです。
でも、そのレビューに費やすコストと、後戻りして作り直した場合のコストをくらべた時、同じ品質を得るのに、必ずしも前者が善で後者が悪というわけではないでしょ、というのがXPなんだと思ってました。そしてまた、後者でも善な状況を成り立たせるのがXPなんだと思ってました。で、その結果名誉回復された「後戻り」のことを、リファクタリングというのだと思ってたんですけれども。
間違ってたんですかねえ……
修正や機能追加の必要が生じた時に、まずそれらがやり易いように書き換えた(=リファクタリング?)上で、修正なり機能追加なりする、という状況ならまだ理解できなくはないです。ですが、必要もないのに、機能はまったく変わらず、ただ書き換えるだけだというのなら、そりゃうっとこのような職場じゃ、絶対にありえないです。
リファクタリング More ログイン