Supponiamo di avere un oggetto personalizzato, Studente :
public class Student{
public int _id;
public String name;
public int age;
public float score;
}
E una classe, Window , che è usata per mostrare le informazioni di uno Studente :
public class Window{
public void showInfo(Student student);
}
Sembra abbastanza normale, ma ho trovato Window non è abbastanza facile da testare individualmente, perché ha bisogno di un vero oggetto Student per chiamare la funzione. Così provo a modificare showInfo in modo che non accetti direttamente un oggetto Studente :
public void showInfo(int _id, String name, int age, float score);
in modo che sia più facile testare Window singolarmente:
showInfo(123, "abc", 45, 6.7);
Ma ho trovato che la versione modificata ha altri problemi:
-
Modifica studente (ad es. nuove proprietà nuove) richiede la modifica della firma del metodo di showInfo
-
Se lo studente aveva molte proprietà, la firma del metodo di Student sarebbe molto lunga.
Quindi, usando oggetti personalizzati come parametro o accettate ogni proprietà negli oggetti come parametro, quale è più manutenibile?