Inizialmente volevamo implementare un modello di strategia con diverse implementazioni dei metodi in un'interfaccia di comunicazione. Questi verranno rilevati in fase di esecuzione in base agli input dell'utente.
Come risulta, abbiamo Classi astratte che implementano 3 - 5 metodi comuni e solo un metodo disponibile per un'implementazione variabile , ovvero la Strategia.
Aggiornamento: con molte classi astratte intendo che ci sono 6 diverse funzionalità di alto livello, cioè 6 pacchetti, e ognuno ha la sua interfaccia + AbstractImpl + (serie di Actual Impl).
Questo è un cattivo design in qualche modo?
Qualsiasi punto di vista negativo in termini di estensibilità successiva: mi sto preparando per una revisione del codice / design con gli anziani.