私は、いくつかの異なるバージョンで出荷されるアプリケーションを作成しています (最初は、コード ベースの約 10 のバリエーションが存在し、維持する必要があります)。もちろん、コードの 98% 程度は異なるシステム間で同じであるため、コード ベースをそのままにしておくことは理にかなっています。
私の質問は - これを行うための好ましい方法は何ですか? たとえば、いくつかのバージョン (MyClassDifferent) で異なるクラス (MyClass) があり、そのクラスがいくつかの場所で参照されているとします。MyClassDifferent を参照するすべてのクラスを分割するのではなく、コンパイルしているアプリケーションのバージョンに応じてその参照を変更したいと考えています。プリプロセッサ マクロは便利ですが、コードを肥大化させます。また、概念実証の実装しか利用できないのでしょうか?
各アプリケーションの構成ファイルと組み合わせて、ファクトリ パターンのようなものを検討しています。誰にもヒントや指針はありますか?