zoukankan      html  css  js  c++  java
  • 工厂模式

    简单工厂模式

      简单工厂模式也叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。

        

    1、优点。

      通过使用工厂类,外界可以从直接创建具体产品对象的尴尬局面摆脱出来,仅仅需要负责“消费”对象就可以了。而不必管这些对象究竟如何创建及如何组织的.明确了各自的职责和权利。

    2、缺点。

      由于工厂类集中了所有实例的创建逻辑,违反了高内聚责任分配原则,将全部创建逻辑集中到了一个工厂类中;它所能创建的类只能是事先考虑到的,如果需要添加新的类,则就需要改变工厂类了。

    3、点评

      在实际应用中,没有人会使用这种经典的简单工厂模式。通常会将 Type 成为 Product 的一个属性,工厂根据 Type,生成对应的 Product,从而避免工厂耦合Product。

    工厂方法模式

       将一个工厂,拆分成了多个工厂。每个工厂分别负责不同的产品。

      

      工厂方法模式保持了简单工厂模式的优点,而且克服了它的缺点。但工厂方法模式的缺点是每增加一个产品类,就需要增加一个对应的工厂类,增加了额外的开发量。

    1、点评

      本模式将Simple Factory中的 Type 拆分了成各个SubFactory,每个 SubFactory管理一个Type。这样做解保持了开闭原则。但是使用方Client需要根据不同的Type,选择不同的Factory。

    抽象工厂模式

       定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。

        

      

         1,首先从简单工厂进化到工厂方法,是因为工厂方法弥补了简单工厂对修改开放的弊端,即简单工厂违背了开闭原则。

         2,从工厂方法进化到抽象工厂,是因为抽象工厂弥补了工厂方法只能创造一个系列的产品的弊端。

      

  • 相关阅读:
    关于session的记录
    关于<input type="hidden"/>标签的记录
    H3C S5120V2-SI 交换机配置
    Windows 系列GVLK密钥
    给因特尔S2600CO服务器主板安装【SAS控制器】驱动
    EMQ消息队列初体验
    泰国佛历的换算问题
    linux下批量查找UTF-8的BOM文件,并去除BOM
    菲律宾Globe/TM卡最省钱的上网方案
    Windows计划任务实现MYSQL冷备份
  • 原文地址:https://www.cnblogs.com/tekkaman/p/10472914.html
Copyright © 2011-2022 走看看