Sto lavorando a un progetto basato sulla tecnologia Java EE. Per prima cosa vorrei dirti cosa voglio raggiungere, quindi cosa ho già provato.
Task:
Immagina due tipi di configurazioni, che vuoi scegliere e modificare / definire nell'applicazione JEE tramite le voci della GUI. Config A è per la comunicazione con Sistema A e Config B è per la comunicazione con Sistema B .
Config A ha alcune proprietà uguali a Config B , ma le proprietà stesse differiscono in qualche modo (esempio: enumerazioni). Inoltre Config A e B ognuno ha più proprietà che non hanno in comune. Ora, se l'utente dell'applicazione inserisce una configurazione (A o B), dovrebbe essere possibile accedere in modo semplice e generale a tutti i metodi / proprietà date delle configurazioni, senza chiedere sempre quale tipo di configurazione è stato selezionato. Come si può accedere in particolare alle proprietà / metodi che differiscono, in modo facile e non ridondante?
Impostazione corrente:
Poiché cerco di ridurre il codice ridondante, ho creato una classe astratta che definisce una configurazione generale, chiamiamola " GeneralConfiguration ".
Config A e B ogni estensione GeneralConfiguration . Per ogni proprietà "condivisa", GeneralConfiguration definisce un'interfaccia. Ogni interfaccia è implementata da diverse enumerazioni, che rappresentano le voci possibili per la configurazione generale a seconda del tipo di configurazione (A o B).
Penso che la mia configurazione non sia ottimale. Quindi cosa ne pensi, come gestire questo tipo di compito?