Olá, esse exemplo da calculadora de descontos não acaba ferindo o principio do aberto/fechado? Já que a cada novo desconto criado teremos que modificar também a classe da calculadora?
Caso viole o principio de aberto\fechado, mesmo assim o exemplo mostrado é uma boa solução de acordo com as melhores práticas em OO? Ou eu deveria refatorar essa classe de calcular descontos?