現在、あるアプリケーションがあります。(多画面・多機能)
このアプリケーションに、機能を追加することになりました。
現在は、Aモード
追加するのはBモードって感じで、
画面インターフェイスはほとんど同じ、グリッド表示が違う。
印刷する帳票、作成する帳票が違う。
違うといっても、全く違うわけではなく、70%〜80%は、現状のソースを流用できます。
ここに、Bモードを組込みのですが、
変数に、現状の起動モードを代入して判断すると、
ソースで、
If mode = A then
else
end if
の文が、大量に発生して、バグの温床になりそうな気がします。
いまとなっては、IFで分岐するしかないのでしょうか?
良いプログラム設計があれば教えてください。
うーん,”流用”するにしても限界が存在します.
なんとなくストラテジーパターンが適用できそうな気がするけど,
精査してみないとなんとも言えない所なのではないでしょうか?