工厂方法是一种创建型设计模式, 解决了在不指定具体类的情况下创建产品对象的问题。
工厂方法定义了一个方法, 且必须使用该方法代替通过直接调用构造函数来创建对象(new操作符)的方式。 子类可重写该方法来更改将被创建的对象所属类。
一、介绍
- 将 new 操作单独封装;
- 遇到 new 时,就要考虑是否该使用工厂模式;
举例:购买汉堡,直接点餐、取餐,不会直接亲手做。商店要“封装”做汉堡的工作,做好直接给购买者。
在JS中,针对工厂模式常用如下的简化UML类图: 其中:
- Create 类的create方法返回的是Product实例(即Product类型);