標(biāo)簽:JS 設(shè)計模式
讀書筆記鏈接:
- 《JS設(shè)計模式》讀書筆記(一)
- 《JS設(shè)計模式》讀書筆記(二)
- 《JS設(shè)計模式》讀書筆記(三)
- 《JS設(shè)計模式》讀書筆記(四)
- 《JS設(shè)計模式》讀書筆記(六)
- 《JS設(shè)計模式》讀書筆記(七-完結(jié))
模板模式
父類規(guī)定了一系列的抽象方法,子類繼承并實現(xiàn)暴备,從而分離了不變(按順序執(zhí)行這些方法)與變化(這些方法的具體實現(xiàn)),例子就是生命周期鉤子固额。
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 {
// 這里就是模板模式的使用,規(guī)定必須執(zhí)行的方法以及順序
init: function(){
onCreate();
onUpdate();
onDestroy();
}
}
}
中介者模式
解除各個對象相互之間的聯(lián)系沿腰,僅僅與唯一一個中介者聯(lián)系透典,從而實現(xiàn)解耦,符合最少知識原則厘贼。但同時也會創(chuàng)建了一個大包攬的中介者,難以維護(hù)圣拄,也不符合單一職責(zé)原則嘴秸。因此使用中介者模式需要慎重考慮。