Я хочу разработать систему, похожую на расчет зарплаты. Зарплата имеет базовое значение. Кроме того, сотрудник может получить некоторые бонусы или штрафы. Декоратор Pattern, кажется, соответствует этому сценарию
Salary finalSalary = new HardworkBonus(new LateComingPenalty(new BasicSalary()))
System.out.println("Your total salary is : "+ finalSalary.calculate())
Кроме того, я хочу сохранить результат каждого вычисления. Таким образом, в конце концов, даже после расчета, я могу узнать, сколько было LateComingPenalty.
Кажется, это распространенная проблема, когда речь идет о такого рода расчетах счетов. Возможно, есть несколько лучших вариантов, чем у шаблона Decorator. У вас есть предложения получше?