Quindi sono nuovo per progettare modelli e C ++ 11, ma ho studiato entrambi un po '. Sto lavorando allo sviluppo di un'applicazione C ++ per elaborare alcuni dati, e speravo che qualcuno con più esperienza potesse dirmi se sono sulla strada giusta.
Quindi l'applicazione avrà una grande matrice di dati 2-D. Poi c'è qualche pre-elaborazione prima di passare i dati a un oggetto che elaborerà i dati. Infine, i risultati dell'elaborazione devono essere post-elaborati per impostare diversi tipi di grafici e informazioni di riepilogo.
Quindi, studiando gli schemi di progettazione, ho visto che usare il modello di comando o il modello di strategia poteva essere una buona idea. Ma allo stesso tempo, sembra che dovrei usare il Composito come un modo per legare insieme la preelaborazione, l'elaborazione e l'elaborazione dei post. Ma ero preoccupato che legare insieme 3 oggetti in un composito potesse creare un oggetto molto grande, il che significa che violerei le regole sul tipo di separazione delle preoccupazioni.
Il motivo per cui voglio utilizzare un modello di progettazione è perché voglio un modo flessibile per aggiungere all'elaborazione nuovi tipi di preelaborazione, elaborazione e catene di post-elaborazione. Quindi se oggi produco una serie di grafici dall'analisi, domani potrebbe esserci un nuovo grafico che qualcuno vuole. Avrei quindi bisogno di un modo per aggiungere nuovi tipi di richieste o catene di elaborazione, senza entrare e rompere gli oggetti esistenti, il che vanifica lo scopo del design OOP.
Qualsiasi suggerimento sul design sarebbe apprezzato.
Modifica Nota, questa domanda è distinta da: Scelta del modello di progettazione corretto
Le domande di riferimento sono domande generali sugli approcci di progettazione del software. Le domande che pongo richiedono una specifica raccomandazione di progettazione basata su una serie di requisiti.