工厂方法模式

60 阅读1分钟

工厂方法模式

简单工厂模式 缺点就是返回的所有对象,均已经提前写好,当数据量小的时候,这就无所谓,但是当数据量过大的时候,这种显然不是一种很好的方法;

此时应该开始考虑如何将要返回的数据进行抽象,进一步优化代码,这就是 工厂方法模式 的作用。

function getPhne(model, brand, price) {
	const phone = Object.create({
		call: function() {},
		takePhotos: function () {}
	})
	phone.model = model
	phone.brand = brand
	phone.price = price
	return phone;
}

const hw = getPhne('mate 40', '华为', 4500);
console.log(hw);
const xm = getPhne('米10', '小米', 4000);
console.log(xm);

对比 简单工厂,可以看出 工厂方法模式 是将数据的创建过程,从完全写死的情况,改变为从一个现有对象创建一个新的对象,大大减少了冗余代码,同时也符合 开放 - 关闭原则