Crea un'architettura monolitica in qualcosa di modulare

0

Attualmente la mia architettura è un blocco monolitico che gestisce un compito davvero specifico. Ora ha bisogno di essere generalizzato.

In questo momento gestisce una richiesta e tutti i processi (1 o molti) ad essa associati. C'è una classe Request e una classe Process e poiché serve un compito specifico questo modello era OK.

In questo momento ho bisogno di dividere entrambe le classi per ottenere la modularità. Ad esempio, la classe Request deve essere divisa. Quindi avrò ancora una classe Request , che contiene le informazioni di richiesta generale e molti RequestDetailsForServiceOne , RequestDetailsForServiceTwo e così via, che contengono informazioni dettagliate relativamente a un tipo specifico di richiesta. Ugualmente per Process .

La domanda adesso è: come associare Request class con RequestDetailsForServiceOne (in fase di esecuzione)?

Avevo pensato a Dependency Injection, ma RequestDetailsForServiceOne e RequestDetailsForServiceTwo non condividono alcun comportamento comune, (le classi memorizzano solo alcune proprietà), in questo modo mi guiderò a codificare un IRequestDetailsForService completamente vuoto. Mi sembra un odore di codice.

Sarebbe un'idea migliore in questo caso usa, (all'interno Request / Process class) un dizionario di proprietà e evita completamente le classi RequestDetailsForService* ? Non mi piace molto la perdita di controllo dei caratteri che in questo modo mi riporta indietro. Quale sarebbe una soluzione ideale?

    
posta BAD_SEED 09.04.2014 - 12:48
fonte

0 risposte

Leggi altre domande sui tag