SOLID break class

1

Ho una classe legacy XMLReaderWriter che penso dovrei suddividere in due classi in modo che non interrompa l'SRP. Sfortunatamente la classe è già in produzione e devo mantenere la retrocompatibilità. Quale sarebbe il modo migliore per farlo? Qualsiasi schema di progettazione pertinente che dovrei usare?

    
posta user66734 23.12.2018 - 18:32
fonte

2 risposte

9

Mi piacerebbe sapere quali problemi questa classe ti sta effettivamente causando. Il "Principio della singola responsabilità" è uno dei più incompresi e molto tempo è stato sprecato placandolo.

In altre parole, "violare il singolo principio di responsabilità" da solo non è un motivo per passare un periodo di tempo. Aspetta che ti causi problemi reali.

    
risposta data 23.12.2018 - 18:58
fonte
8

Senza codice non possiamo convalidare la violazione, o dare risposte specifiche, ma partendo dal presupposto che le tue esigenze siano corrette, ti suggerirei di creare le tue classi XMLReader e XMLWriter compatibili con SRP e di aggiornare l'attuale XMLReaderWriter semplicemente una facciata, esternalizzando tutta la sua logica alle tue 2 nuove classi.

    
risposta data 23.12.2018 - 18:48
fonte

Leggi altre domande sui tag