Sto costruendo un'applicazione c # serveride e sto cercando di farlo in un modo che possa essere facilmente mantenuto anche esteso se necessario.
Quindi quello che abbiamo sono 4 richieste diverse che devono essere fatte (SOAP, HTTPREQUEST e così via). Questi devono poi essere combinati con una serie di azioni diverse come Importazione / Esportazione / Aggiornamento.
Quello che penso è che ogni richiesta dovrebbe essere una strategia, proprio come la descrizione degli algoritmi di commutazione per il modello di strategia. Quindi voglio estendere la strategia con un decoratore, aggiungendo nuove funzionalità alla richiesta. È necessario contenere questo in una classe separata (SoapRequest_Import / HTTPRequest_Update) o come dovrei pensare? L'ultimo a contenere tutto in una classe sembra togliere la flessibilità?
Quindi, detto questo, sbaglio? Prima domanda, questo è fatto meglio con ciascuno dei modelli o va bene combinarli. Stavo pensando strategie per i diversi clienti e decoratori per i comandi (o funzionalità aggiunte). O sto solo esagerando con questo?
Infine come sembrerebbe codewise se li combinassi. Capisco che ho bisogno di almeno un'interfaccia per i decoratori. Ne ho bisogno anche per le strategie?