在业务实现层,可以通过策略模式减少if-else,但在具体的策略实现类中若需要根据业务去完成一些业务逻辑类的实现时,此时也是会产生if-else或者if语句的,这个该如何处理呢?因为策略模式是解决if-else嵌套的,但若策略实现类中因业务的某些判断或者逻辑实现时也有可能产生if-else或if的情况,这样相当于策略模式实施的不完全,还是半个策略模式。
因为在2022年时被一面试官有问到具体的实现,我当时说用策略模式来解决if-else嵌套问题,但还是存在在具体的实现类中因业务逻辑的需要,还是会有if-else的判断的出现,这样即使是在service层避免了if-else的嵌套,但在具体的策略实现类中还是会出现if-else的情况,这样就相当于解决嵌套问题没处理完全,只能算半个策略模式的实现