模板模式
定义:算法(逻辑,步骤)骨架(模版);具体的步骤,在子类实现,不改变步骤顺序。
目的:复用在父类,拓展子类。
ps:可以备注,避免子类重写,or 必须重写。
模板模式基于继承关系来实现,子类重写父类的抽象方法,是一种类之间的关系。
同步回调指在函数返回之前执行回调函数(和模版类似);回调基于组合关系来实现,把一个对象传递给另一个对象,是一种对象之间的关系;
异步回调指的是在函数返回之后执行回调函数。类似观察者模式
回调基于组合,更灵活
回调是一种双向调用关系。A 类事先注册某个函数 F 到 B 类,A 类在调用 B 类的 P 函数的时候,B 类反过来调用 A 类注册给它的 F 函数。这里的 F 函数就是“回调函数”。A 调用 B,B 反过来又调用 A,这种调用机制就叫作“回调
1.让 B骨架类,更加通用;A定制。
2.通知。
3.流程控制,多个回调,一个失败就推出。
Callback 和 Hook 的区别
对于callback 和 hook 的提供意图来说,提供callback 的时候是希望在callback里面完成主要的工作。hook的目的则在于扩展。前者的提供者通常没我在默认实现,非常希望callback 完成具体任务,而hook是基本已经实现了大部分功能,如果需要特殊操作,那就在hook里面做。
hook是中间件,callback是业务处理。
策略模式
静态策略,map
New 策略,if else
和工厂模式的区别:
我的理解是工厂模式就是成产对像,至于你要用这个对象做哪些行为他不管。 策略模式是把对象和对象的方法封装了起来,按照逻辑实现一种行为。