Ho un modello di dominio, persistente in un database, che rappresenta un grafico. Un grafico è costituito da nodi (ad esempio NodeTypeA, NodeTypeB) connessi tramite diramazioni. I due elementi generici (nodi e rami avranno proprietà). Un grafico verrà inviato a un motore di calcolo. Per eseguire calcoli, il motore deve essere inizializzato in questo modo (pseudo codice semplificato):
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);
Finalmente il calcolo è eseguito in questo modo:
Engine.DoSomeComputation();
Mi stavo solo chiedendo se ci sono modelli di design rilevanti là fuori, che aiutano a ottenere quanto sopra usando buoni principi di progettazione. Spero che abbia senso. Qualsiasi feedback sarebbe molto apprezzato.