处理复杂业务逻辑的好方法是什么,从一开始就需要许多嵌套的if语句?
例:
优惠券.可能:
1a)价值折扣
1b)百分比折扣
2a)正常折扣
2b)累进折扣
3a)需要访问优惠券
3b)不需要访问优惠券
4a)仅适用于已经购买的客户
4b)适用于任何客户
5a)仅从国家(X,Y,...)应用于客户
这要求代码更复杂,然后:
if (discount.isPercentage) {
if (discount.isNormal) {
if (discount.requiresAccessCoupon) {
} else {
}
} else if (discount.isProgressive) {
if (discount.requiresAccessCoupon) {
} else {
}
}
} else if (discount.isValue) {
if (discount.isNormal) {
if (discount.requiresAccessCoupon) {
} else {
}
} else if (discount.isProgressive) {
if (discount.requiresAccessCoupon) {
} else {
}
}
} else if (discount.isXXX) {
if (discount.isNormal) {
} else if (discount.isProgressive) { …Run Code Online (Sandbox Code Playgroud)