标签:JS 设计模式
读书笔记链接:
模板模式
父类规定了一系列的抽象方法,子类继承并实现,从而分离了不变(按顺序执行这些方法)与变化(这些方法的具体实现),例子就是生命周期钩子。
var LifeCircle = function(config) {
var onCreate = config.onCreate || function(){
throw new Error('子类必须重写该方法')
}
var onUpdate = config.onUpdate || function(){
}
var onDestroy = config.onDestroy || function(){
throw new Error('子类必须重写该方法')
}
return {
// 这里就是模板模式的使用,规定必须执行的方法以及顺序
init: function(){
onCreate();
onUpdate();
onDestroy();
}
}
}
中介者模式
解除各个对象相互之间的联系,仅仅与唯一一个中介者联系,从而实现解耦,符合最少知识原则。但同时也会创建了一个大包揽的中介者,难以维护,也不符合单一职责原则。因此使用中介者模式需要慎重考虑。
网友评论