グラフを表すデータベースに永続化されたドメインモデルがあります。グラフは、ブランチを介して接続されたノード(NodeTypeA、NodeTypeBなど)で構成されます。2つの一般的な要素(ノードとブランチにはプロパティがあります)。グラフが計算エンジンに送信されます。計算を実行するには、エンジンを次のように初期化する必要があります(簡略化された擬似コード)。
Engine Engine = new Engine() ;
Object ID1 = Engine.AddNodeTypeA(TypeA.Property1, TypeA.Property2, …, TypeA.Propertyn);
Object ID2 = Engine.AddNodeTypeB(TypeB.Property1, TypeB.Property2, …, TypeB.Propertyn);
Engine.AddBranch(ID1,ID2);
最後に、計算は次のように実行されます。
Engine.DoSomeComputation();
優れた設計原則を使用して上記を達成するのに役立つ、関連する設計パターンがそこにあるかどうか疑問に思っています。これが理にかなっていることを願っています。フィードバックをいただければ幸いです。