工厂模式(Factory Pattern):javascript
定义:定义一个建立对象的接口,但让实现这个接口的类来决定实例化哪一个类。工厂方法让类的实例化推迟到子类中进行。
目的:工厂模式是为了解耦,把对象的建立和使用的过程分开。
场景:须要生成复杂对象,须要下降耦合度的场景。
例子:JS代码实现 java
let operationFactory = { createOperate (operate) { let oper = null switch (operate) { case '+': oper = new operationFactory.OperationAdd() break case '-': oper = new operationFactory.OperationSub() break case '*': oper = new operationFactory.OperationMul() break case '/': oper = new operationFactory.OperationDiv() break } }, OperationAdd () { // TODO run the addition operation }, OperationSub () { // TODO run the subtraction operation }, OperationMul () { // TODO run the multiplication operation }, OperationDiv () { // TODO run the division operation } }