Ad esempio, supponiamo di avere una classe del genere:
public class ABC{
private Data data;
public ABC(Data data){
this.data=data;
}
public void ab(A a,B b){
//some codes needs to use data,a,b
}
public void bc(B c,B c){
//some codes needs to use data,b,c
}
}
quale ABC dipende da A, B, C. Ma ho scoperto che posso dividerlo in 2 classi:
public class AB{
private Data data;
public AB(Data data){
this.data=data;
}
public void ab(A a,B b){
//some codes needs to use data,a,b
}
}
public class BC{
private Data data;
public BC(Data data){
this.data=data;
}
public void bc(B c,B c){
//some codes needs to use data,b,c
}
}
che AB dipende solo da A, B e BC dipende solo da B, C
Ma penso che questo approccio potrebbe avere uno svantaggio: potrebbe comportare un numero eccessivo di classi. Quindi la mia domanda è, dovrei dividere una singola classe in più classi fino a quando ogni classe dipende solo dal numero minimo di altre classi?