贷款是个复杂的流程,中间会遇到各种审批环节,在一个审批过程中,只要有一个环...
贷款是个复杂的流程,中间会遇到各种审批环节,在一个审批过程中,只要有一个环节审批不通过,整个贷款就会被否决, 假设贷款申请类为Loan,贷款人的信用信息和本次贷款的背景、以及审批过程的流程数据存在LoanContext 审批接口为:
public interface IApprove { boolean approve(LoanContext ctx, Loan loan) }
1). 请设计这么一个系统称为LoanManager,支持动态的添加审批环节,支持这种审批业务。
2). 如果审批算法发生变化,比如中间审批,只要老板审批通过,不管其他审批是否审批通过系统都审批通过,为了适应这种需求,需要动态的修改和调整审批算法,你要如何重构代码呢?