アプリケーションを設計するためのパターンを探しています。固定数のエンティティ クラスがあります。例: PostEntity、ArticleEntity、DocumentEntity。それらはすべて、抽象クラス「エンティティ」のサブクラスです。ここまではシンプルに見えます。今日、新しい要件がありました。エンティティ クラスの実装はシステムによって異なります。つまり、SystemA、SystemB、SystemC という複数のシステムが必要です。各システムは、独自の PostEntity、ArticleEntity、DocumentEntity クラスを実装する必要があります。
どのように合理的な方法でクラスを作成しますか?
簡単な方法は、システムごとにフォルダーを作成し、クラスを SystemAPostEntity、SystemAArticleEntity、SystemADocumentEntity のように配置することです。等々。次に、おそらく Factory メソッドを使用してオブジェクトを作成します。たとえば、「SystemA」の「PostEntity」のオブジェクトを取得するには、ファクトリはエンティティ タイプのスイッチ/ケースを使用し、このスイッチ/ケース内でシステムの別のスイッチ/ケースを使用する必要があります。この方法は私には正しくないようです。別のアイデアがあることを願っています。
ありがとう