设计模式探究系列之SimpleFactory(简单工厂)
简单工厂模式:
?
由一个工厂类根据参数,动态决定走哪个分支。
?
还是一个老例子:
?
?
实体:自行车商店干什么:卖自行车问题:卖车的时候会遇到一个事情,我们卖车的品种会不断地变化,所以考虑到这部分的成本,我们可以抽离一个自行车的类。所有的修改可以根据类型来配置分支。
//抽离出来的BicycleFactoryvar BicycleFactory = { createBicycle:function(model){ var bicyle; switch(model){ //...... //可以在这边配置修改类型 } return bicyle; }}//定义BicycleShopvar BicycleShop = function(){};//扩展卖车这个功能BicycleShop.prototype = { /* * @name sellBicycle * @param model 类型 */ sellBicycle:function(model){ //我们设计的是让自行车工厂类来决定 var bicycle = BicycleFactory.createBicycle(model); }};?调用方式:var myShop = new BicycleShop();var newBicycle = myShop.sellBicycle('newType');??
?