深入理解JavaScript系列(27):设计模式之建造者模式详解
介绍
在软件系统中,有时候面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法确相对稳定。如何应对这种变化?如何提供一种“封装机制”来隔离出“复杂对象的各个部分”的变化,从而保持系统中的“稳定构建算法”不随着需求改变而改变?这就是要说的建造者模式。
建造者模式可以将一个复杂对象的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。也就是说如果我们用了建造者模式,那么用户就需要指定需要建造的类型就可以得到它们,而具体建造的过程和细节就不需要知道了。
正文
这个模式相对来说比较简单,先上代码,然后再解释
functiongetBeerById(id,callback){
//使用ID来请求数据,然后返回数据.
asyncRequest('GET','beer.uri?id='+id,function(resp){
//callback调用response
callback(resp.responseText);
});
}
varel=document.querySelector('#test'); el.addEventListener('click',getBeerByIdBridge,false);
functiongetBeerByIdBridge(e){ getBeerById(this.id,function(beer){ console.log('RequestedBeer:'+beer); }); }
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短