01 臃肿示例
1.1 if-else
image
1.2 case-switch
image
02 重构
2.1 工厂方式重构
(1)抽象接口 Operation.java
image
(2)加法实现 Addition.java
image
(3)减法实现 Subtraction.java
image
(4)乘法实现 Multiplication.java
image
(5)除法实现 Division.java
image
(6)求余实现 Modulo.java
image
(7)工厂类 OperatorFactory.java
image
(8)使用示例
image
2.2 枚举方式重构
(1)枚举实现Operator.java
image
(2)封装Operator到Calculator.java
image
(3)使用示例
image
2.3 命令模式
(1)抽象的接口
image
(2)实现类
image
(3)包装
image
(4)测试demo
image
2.4 规则引擎重构
(1)抽象规则
image
(2)实现规则AddRule.java
image
其中:返回结果
image
(3)表达式
image
(4)规则引擎RuleEngine.java
image
(5)测试demo
image