Ho un modello di chiamata Drug
class Drug{
String drugId;
String name;
String strength;
}
questa interfaccia prende un drugId e restituisce il Modello di Droga
interface IProcessor{
getDrug(String drugId)
}
// flusso facile
class ProcessorA extends IProcessor{
protected Drug getDrug(String drugId){
//get Drug from source A
return Drug
}
}
// Dalla sorgente B, otterrò campi aggiuntivi. Non sono sicuro di come posso aggiungere i nuovi campi al modello della droga
class ProcessorB extends IProcessor{
protected Drug getDrug(String drugId){
//get Drug from source B
// Add few more fields specific to B
return Drug
}
}
1) Estendi il modello Drug (classe DrugB estende Drug) per ProcessorB e aggiungi i nuovi campi. In questo caso, potrei finire per digitare il DrugB. Va bene?
2) Aggiungi i campi comuni alla classe di farmaci e usalo. Questo va bene, ma il numero di campi per ciascun tipo di processore potrebbe aumentare.
C'è qualche schema a cui dovrei pensare. Si prega di consulenza.