長年使っていて、機能もかなり大きくなったクラスを置き換える作業は、インターフェイスをそろえて内部を書き換えるか、インターフェイスも含めてモダン化させるかについてかなり迷います。
こんなとき、私は、インターフェイスをモダン化させて、それをラップするインターフェイスを別途用意して、古いインターフェイスからはラッパーを通して、新しい機能は直接、新しいインターフェイスを使うようにすることが多いです。
二度手間のようにも見えますが、ラッパーを作るのはほとんど手間にならないので、利用側のインターフェイスの書き換えを最小化できる点が良いと思っています。
目次