Beanの永続属性と派生属性をどのように分ける可能性がありますか?あなたの意見では何がベストプラクティスですか?以下の単純な例を仮定してください。spentMoney
とnumberOfDays
は永続属性、avrageSpendingPerDay
は派生属性です。このデザインの質問にお答えいただき、ありがとうございます。永続フィールドと派生フィールドを分離します
class Person implements Serializable {
private BigDecimal spentMoney;
private int numberOfDays;
public Person() {
}
public BigDecimal getSpentMoney() {
return spentMoney;
}
public void setSpentMoney(BigDecimal spentMoney) {
this.spentMoney = spentMoney;
}
public int getNumberOfDays() {
return numberOfDays;
}
public void setNumberOfDays(int numberOfDays) {
this.numberOfDays = numberOfDays;
}
public BigDecimal getAvrageSpendingPerDay() {
return spentMoney.divide(new BigDecimal(numberOfDays), 2, RoundingMode.HALF_EVEN);
}
}
ありがとうございます。私はそれを明確にしなければならない。 Personクラスが成長するにつれ、あまりにも多くのメソッドが存在するため、明確なコードのためにのみ分離したいと思います。私は、永続的なものとそうでないものとを分けることは良いことだと思います。 –
I class Personが大きくなり過ぎると、永続属性を派生属性から分離してはいけません。その代わりに、いくつかのフィールドを別々のオブジェクト(例:アドレス、連絡先、支出など)にグループ化する必要があります。 –