设计模式概览
简单工厂 实际不能算作一种设计模式,它引入了创建者的概念,将实例化的代码从应用代码中抽离,在创建者类的静态方法中只处理创建对象的细节,后续创建的实例如需改变,只需改造创建者类即可,
但由于使用静态方法来获取对象,使其不能在运行期间通过不同方式去动态改变创建行为,因此存在一定局限性。
工厂方法模式 工厂方法模式是一种创建型设计模式, 其在父类中提供一个创建对象的方法, 允许子类决定实例化对象的类型。
优点:方便创建对象
缺点:如果工厂想要生产另外的对象,需要修改工厂代码
抽象工厂
抽象工厂的行为,可以利用抽象工厂创建出有自己”特色”的工厂
优点:方便创建对象,比工厂模式减少修改工厂代码的概率,想要生产新的产品,创建新的工厂,继承抽象即可
缺点:如果工厂想要生产除抽象工厂另外的对象,仍然需要修改工厂代码
生成器模式 是一种创建型设计模式, 使你能够分步骤创建复杂对象。 该模式允许你使用相同的创建代码生成不同类型和形式的对象。
应用场景:
使用生成器模式可避免 “重叠构造函数 (telescopic constructor)” 的出现。
当你希望使用代码创建不同形式的产品 (例如石头或木头房屋) 时, 可使用生成器模式。
使用生成器构造他复杂对象。
原型模式 首先,对象支持clone行为,让生产的对象自定义实现clone方法,然后,将需要生产的对象存入哈希表,每次需要某个对象的时候,只需要调用对象的clone方法。
上次更新: 2022/03/27, 00:01:02