Buongiorno!
Sto cercando di calcolare l'area di un parallelogramma e ho definito a tale scopo tre classi che riporto:
codice:
public class Parallelogramma {
private double base, altezza;
public Parallelogramma(double base, double altezza) {
this.base = base;
this.altezza = altezza;
}
public double area() {
return Geometry2DUtils.areaParallelogramma(base, altezza);
}
public double getBase() { return base; }
public double getAltezza() { return altezza; }
}
la classe Parallelogramma utilizza la classe Geometry2Dutils che definisco qui:
codice:
public class Geometry2DUtils {
public static final double PiGreco = 3.141592;
public static double areaParallelogramma(double base, double altezza) {
return base*altezza;
}
public static double areaCerchio(double r) {
return PiGreco * r * r;
}
}
Il problema che ho è nel metodo main seguente:
codice:
public class Main {
public static void main(String[] args) {
Parallelogramma p = new Parallelogramma(4.0, 8.0);
Parallelogramma p1 = new Parallelogramma(11.0, 18.0);
double pArea = p.area(); // assegna a pArea 4*8
double p1Area = p1.area(); // assegna a p1Area 11*18
}
}
lo stesso risultato si potrebbe ottenere anziché definire un oggetto Parallelogramma, utilizzare il metodo statico double spArea = Geometry2DUtils.areaParallelogramma(p.getBase(),p.getAltezza()).
La mia domanda è: a livello di design del software qual è la migliore soluzione?
Grazie e buona giornata
tulipan