标签:
1. 工厂模式
工厂模式又细分为三种,分为简单工厂、工厂方法、抽象工厂这三种,
1)简单工厂模式:当你需要什么,只需要传入一个正确的参数,就可以获取你所需要的对象,而无须知道其创建细节。简单工厂模式的缺点是工厂类过于庞大,包含了大量的判断代码,导致为何和测试的难度增大;系统扩展不灵活,如果增加新类型的产品,必须修改静态工厂方法的业务逻辑,违反了开闭原则。
简单工厂模式
客户端在创建同一类别的不同实体对象时,客户只需传递不同参数到工厂类,工厂类会创建出不同的对象。这样减低了客户端与实体的耦合,但是每增加一种实体,都要在工厂类中增加相应的逻辑,违反了开放封闭原则。
工厂方法模式
工厂方法模式有一个基类工厂,而且去掉了简单工厂中工厂方法的静态属性,用基类工厂的子类来产生不同的实体。这样在简单工厂模式里集中在工厂方法上的压力可以由工厂方法模式里不同的工厂子类来分担。 但每个实体都对应一个工厂类。其图如下:
抽象工厂模式
抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这里的超级工厂类为 AbstractFactory ,其子类有 ShapeFactory 与 ColorFactory ,分别用来产生Shape 与Color 的实体。其实是对简单工厂提取出一个抽象的基类。
标签:
原文地址:http://www.cnblogs.com/ooon/p/5743548.html