Taka sytuacja:
mam klasę Order
czyli zamówienie oraz Financial
czyli sprawy finansowe tego zamówienia. Klasa Order
przechowuje ógólne dane o zamówieniu i wskazuje na szczegółowe klasy np. Employee
, Product
itd. A klasa Financial
estymuje cenę, szacuje zysk, koszty, a po zakończonym zamówieniu rzeczywisty zysk, koszty itd. Jednocześnie klasa Order
i Financial
robią co innego i przechowują inne dane dlatego uważam, że trzeba je wydzielić do osobnych klas.
Te sprawy finansowe dotyczą tylko tego zamówienia i nie potrzebują żadnych danych z innych klas. Kto nie ma dostępu do Order
tymbardziej nie powinien widziećFinancial
. Klasy Financial
użytkownik nie może zmieniać, ona zmienia się wyliczając wszystko sama na podstawie wartości z Order
.
Wobec tego wydaje mi się, że wypadałoby umieścić Financial
jako zagnieżdżoną klasę prywatną w Order
. Czy takie rozwiązanie jest OK, wg nowoczesnej filozofii?
Jakieś zagrożenia ze strony JPA, bo chcę by klasy były 2 encjami bazie.