Boa Noite,
Estou criando algumas classes com calculos matematicos para criar um aplicativo para android. Coisa simples apenas para iniciar na plataforma.
Acham que o código abaixo está muito “gambiarra”?
package com.incosd.mathpack;
@SuppressWarnings("unused")
public class Geometria {
private double catOp;
private double catAdj;
private double seno;
private double cos;
private double tan;
public double getCatOp() {
return catOp;
}
public void setCatOp(double catOp) {
this.catOp = catOp;
}
public double getCatAdj() {
return catAdj;
}
public void setCatAdj(double catAdj) {
this.catAdj = catAdj;
}
public void setSeno(double seno) {
this.seno = seno;
}
public void setCos(double cos) {
this.cos = cos;
}
public void setTan(double tan) {
this.tan = tan;
}
public double hipotenusa (double catOp, double catAdj){
this.catOp =catOp;
this.catAdj =catAdj;
double quadHip = Math.pow(catOp, 2)+ Math.pow(catAdj, 2);
return Math.sqrt(quadHip);
}
public double calcSeno(int angulo, double catetoOp, double hipotenusa){
switch (angulo) {
case 30:
seno = 0.5;
break;
case 45:
seno = Math.sqrt(2)/2;
break;
case 60:
seno = Math.sqrt(3)/2;
break;
default:
new RuntimeException("Angulo diferente de 30 , 45 ou 60");
break;
}
return (seno*hipotenusa)/catetoOp;
}
}
Coloquei apenas um metodo para pedir ajuda de vocês e assim ir melhorando antes de fazer tudo. Eu retirei os os getters que aparentemente eu não vou usar (lendo um post no blog da caelum).
Como eu vou usar o mesmo esquema para calcular seno, cos e tangente, seria melhor isolar para reaproveitar o código?
Para criar os métodos estou usando uma ideia básica:
Quero desenvolver o aplicativo respeitando bem OO e assim que eu aprender, se possivel, aplicar conceitos de teste e design patterns. Sendo assim, podem criticar que não vou ficar de mimimi rsrs
[ ]'s