mirror of
https://github.com/NohamR/knowledge-kit.git
synced 2026-05-25 04:17:17 +00:00
Update 1.110.md
This commit is contained in:
@@ -148,7 +148,13 @@ typedef NS_ENUM(NSUInteger, OrderSubmitReminderType) {
|
||||
|
||||
## 方案
|
||||
|
||||
那能不能优化呢?有2个思路:责任链设计模式、工厂设计模式
|
||||
那能不能优化呢?有3个思路:责任链设计模式、工厂设计模式、策略模式
|
||||
|
||||
策略模式:当需要根据客户端的条件选择算法、策略时,可用该模式,客户端会根据条件选择合适的算法或策略,并将其传递给使用它的对象。典型设计前端 Vue-Validator form 各种 rules
|
||||
|
||||
职责链模式:当需要根据请求的内容选择处理器时,可用该模式,请求会沿着链传递,直到被处理,如 Node 洋葱模型
|
||||
|
||||
不过目前来看,策略模式被 Pass 了
|
||||
|
||||
### 责任链设计模式
|
||||
|
||||
@@ -356,3 +362,5 @@ OrderSumitValidatorFactory {
|
||||
- 优先级的关系维护在不同的子类中,各司其职,独立维护
|
||||
|
||||
最后选什么?组合优于继承,个人倾向使用责任链模式去组织。
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user