| 改造对象 | 按客户等级 switch 计算折扣 |
|---|---|
| 手法 | 策略接口 + 实现类 + 注册表装配 |
| 验收 | 新增等级零修改主流程 |
策略与装配
策略与装配
interface DiscountPolicy { Money apply(Order o); }
class VipPolicy implements DiscountPolicy { ... }
class NewUserPolicy implements DiscountPolicy { ... }
Map<Tier, DiscountPolicy> registry = Map.of(
Tier.VIP, new VipPolicy(),
Tier.NEW, new NewUserPolicy());