https://www.cnblogs.com/tugenhua0707/p/5198407.html
- 一:理解工厂模式
- 二:理解单体模式
- 三:理解模块模式
- 四:理解代理模式
- 五:理解职责链模式
- 六:命令模式的理解:
- 七:模板方法模式
- 八:理解javascript中的策略模式
- 九:Javascript中理解发布--订阅模式
-
十:理解中介者模式
一:理解工厂模式
工厂模式类似于现实生活中的工厂可以产生大量相似的商品,去做同样的事情,实现同样的效果;这时候需要使用工厂模式。
简单的工厂模式可以理解为解决多个相似的问题;这也是她的优点;比如如下代码:
![](https://img.haomeiwen.com/i4364838/8e69ec489ba91f2c.png)
如上代码:函数CreatePerson能接受三个参数name,age,sex等参数,可以无数次调用这个函数,每次返回都会包含三个属性和一个方法的对象。
工厂模式是为了解决多个类似对象声明的问题;也就是为了解决实列化对象产生重复的问题。
优点:能解决多个相似的问题。
缺点:不能知道对象识别的问题(对象的类型不知道)。
复杂的工厂模式定义是:将其成员对象的实列化推迟到子类中,子类可以重写父类接口方法以便创建的时候指定自己的对象类型。
父类只对创建过程中的一般性问题进行处理,这些处理会被子类继承,子类之间是相互独立的,具体的业务逻辑会放在子类中进行编写。
父类的构造函数如下:
![](https://img.haomeiwen.com/i4364838/583f89c1d2e72ab6.png)
父类就变成了一个抽象类,但是父类可以执行子类中相同类似的方法,具体的业务逻辑需要放在子类中去实现;比如我现在开几个自行车店,那么每个店都有几种型号的自行车出售。我们现在来使用工厂模式来编写这些代码;
![](https://img.haomeiwen.com/i4364838/cfafa72fddad8488.png)
网友评论