`

工厂模式之间的关联

阅读更多
简单工厂(Simple Factory)模式:又称静态工厂方法(Static Factory Methord)模式。

工厂方法(Factory Method)模式:又称多态性工厂(Polymorphic Factory)模式或虚拟构造子(Virtual Constructor)模式。

抽象工厂(Abstract Factory)模式:又称工具箱(Kit或Toolkit)模式。


这几个模式是逐级抽象的:

1. 简单工厂模式只是对产品做了抽象,就是说把一类产品抽象出个接口或者抽象方法,然后由工厂去根据情况实例化某个具体的产品。

2. 工厂方法模式是在简单工厂模式的基础上对工厂做了抽象,把工厂抽象出个接口或者抽象方法,然后由某个具体工厂实例化某个具体产品。

3. 抽象工厂是在工厂方法模式的基础上引入了产品族和产品等级结构的概念。每一种产品结构,有多种产品实现,需要一个产品抽象。每个具体工厂都会实例化一个产品族(从每种产品结构的实现中各挑选一个)。
分享到:
评论

相关推荐

    软件体系结构与设计模式课堂笔记.docx

    3.设计模式Design Pattern:创建型模式(厂模式Factory、抽象工厂模式Abstract Factory、单例模式Singleton、建造者模式Builder、原型模式Prototype和对象池模式Object Pool Pattern)、结构型模式(适配器模式、...

    C#23种设计模式_示例源代码及PDF

    桥梁模式:将抽象化与实现化脱耦,使得二者可以独立的变化,也就是说将他们之间的强关 桥梁模式 联变成弱关联,也就是指在一个软件系统的抽象化和实现化之间使用组合/聚合关系而不是 继承关系,从而使两者可以独立的...

    设计模式 GOF 23

    实际上,当我评估一个面向对象系统的质量时,所使用的方法之一就是要判断系统的设计者是否强调了对象之间的公共协同关系。在系统开发阶段强调这种机制的优势在于,它能使所生成的系统体系结构更加精巧、简洁和易于...

    设计模式:可复用面向对象软件的基础--详细书签版

    实际上,当我评估一个面向对象系统的质量时,所使用的方法之一就是要判断系统的设计者是否强调了对象之间的公共协同关系。在系统开发阶段强调这种机制的优势在于,它能使所生成的系统体系结构更加精巧、简洁和易于...

    UML和模式应用(架构师必备).part02.rar

    35.7 对一组相关的对象使用抽象工厂模式 35.8 使用多态性和“Do It Myself”模式处理支付 35.9 示例:Monopoly案例 35.10 结论 第36章 包的设计 36.1 组织包结构的准则 36.2 参考资料 第37章 UML部署图和构件...

    UML和模式应用(架构师必备).part06.rar

    35.7 对一组相关的对象使用抽象工厂模式 35.8 使用多态性和“Do It Myself”模式处理支付 35.9 示例:Monopoly案例 35.10 结论 第36章 包的设计 36.1 组织包结构的准则 36.2 参考资料 第37章 UML部署图和构件...

    浅析java常用的设计模式(doc-23页).doc

    7、桥梁模式:将抽象化与实现化脱耦,使得二者可以独立的变化,也就是说将他们 之间的强关联变成弱关联,也就是指在一个软件系统的抽象化和实现化之间使用组合/聚 合关系而不是继承关系,从而使两者可以独立的变化...

    Android-Design-Patterns:常见的设计模式 Android 中的独特模式

    -> Presenter:使用模式来松散类之间的耦合。 Presenter -> Model:使用模式来决定对对象的数据操作。 Android中的四种模式: 名称 例子 关联 细节 复合图案 视图/视图组 适配器模式 ListView 中的适配器 观察者...

    领域驱动设计与模式实战

    10.1.4 限界上下文与分区有何关联 10.1.5 向上扩展DDD项目 10.1.6 为什么对领域模型——SO分区 10.2 SOA简介 10.2.1 什么是SOA 10.2.2 为什么需要SOA 10.2.3 SOA有什么不同 10.2.4 什么是服务 10.2.5 服务中包括什么...

    UML中关联、泛化、依赖、实现的几种关系.docx

    学习《设计模式》好长时间了,可是到现在还是分不太清楚几种UML中的几种关系。如果这几种关系理解的不是很透彻的话,那么会直接影响到对类图之间关系的理解,下面就来分析下几种关系吧!

    UML和模式应用(架构师必备).part01.rar

    35.7 对一组相关的对象使用抽象工厂模式 35.8 使用多态性和“Do It Myself”模式处理支付 35.9 示例:Monopoly案例 35.10 结论 第36章 包的设计 36.1 组织包结构的准则 36.2 参考资料 第37章 UML部署图和构件...

    UML和模式应用(架构师必备).part07.rar

    35.7 对一组相关的对象使用抽象工厂模式 35.8 使用多态性和“Do It Myself”模式处理支付 35.9 示例:Monopoly案例 35.10 结论 第36章 包的设计 36.1 组织包结构的准则 36.2 参考资料 第37章 UML部署图和构件...

    UML和模式应用(架构师必备).part03.rar

    35.7 对一组相关的对象使用抽象工厂模式 35.8 使用多态性和“Do It Myself”模式处理支付 35.9 示例:Monopoly案例 35.10 结论 第36章 包的设计 36.1 组织包结构的准则 36.2 参考资料 第37章 UML部署图和构件...

    UML和模式应用(架构师必备).part04.rar

    35.7 对一组相关的对象使用抽象工厂模式 35.8 使用多态性和“Do It Myself”模式处理支付 35.9 示例:Monopoly案例 35.10 结论 第36章 包的设计 36.1 组织包结构的准则 36.2 参考资料 第37章 UML部署图和构件...

    UML和模式应用(架构师必备).part05.rar

    35.7 对一组相关的对象使用抽象工厂模式 35.8 使用多态性和“Do It Myself”模式处理支付 35.9 示例:Monopoly案例 35.10 结论 第36章 包的设计 36.1 组织包结构的准则 36.2 参考资料 第37章 UML部署图和构件...

    UML和模式应用(架构师必备).part08.rar

    35.7 对一组相关的对象使用抽象工厂模式 35.8 使用多态性和“Do It Myself”模式处理支付 35.9 示例:Monopoly案例 35.10 结论 第36章 包的设计 36.1 组织包结构的准则 36.2 参考资料 第37章 UML部署图和构件...

    网络安全架构|安全模式方法论

    一个系统不仅仅只是各个部分的组合,还包括各个部分之间的关联关系。只有进行系统级而非组件级的思考,才能设计出安全的系统。安全模式本质上也是一种架构模式,安全模式将安全性与应用系统架构联系起来。安全模式的...

    java-design-patterns:java 学习模式

    创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:...

Global site tag (gtag.js) - Google Analytics