共同点:都集中封装了对象的创建,降低了客户程序与产品对象的耦合。
不同点:工厂模式是简单工厂模式的进一步抽象和推广,使用了多态性,克服了简单工厂违背开-闭原则的缺点。
简单工厂模式:(注)所有在用简单工厂的地方,都可以考虑用反射技术来去除switch或if,解除分支判断带来的耦合
工厂模式:
共同点:都集中封装了对象的创建,降低了客户程序与产品对象的耦合。
不同点:工厂模式是简单工厂模式的进一步抽象和推广,使用了多态性,克服了简单工厂违背开-闭原则的缺点。
简单工厂模式:(注)所有在用简单工厂的地方,都可以考虑用反射技术来去除switch或if,解除分支判断带来的耦合
工厂模式: