【设计模式】建造者模式与工厂方法模式区别
来源:互联网 发布:淘宝中秋节活动策划 编辑:程序博客网 时间:2024/04/27 23:16
工厂方法模式:
把一个类的实例化延迟到它的子类中,核心的工厂类不负责所有产品的创建,而是将具体创建的工作交给子类去做。让子类决定实例化哪一个类。即抽象工厂角色。
1.关注的属性的不同
2.基于接口和抽象类的
抽象工厂模式:
向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,创建多个产品族中的产品对象。既提供一个创建一系列相关或相互以来对象的接口,而无需指定它们的具体的类,这就是抽象工厂模式的用意。是工厂方法模式的进一步推广。
建造者模式:
建造者模式将一个产品的内部表象和产品的生成过程分开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。
需要构造的对象非常复杂,而调用者不需要知道这些细节。例如模仿一个特殊的编译器,该编译器编译所有源代码,将其链接,然后压缩,最后加密。有多个类:Editor(编辑器)、Builder(构建器)、Compiler(编译器)、Linker(链接器)、Compressor(压缩器)、Encryptor(加密机)。
建造模式的关键是导演角色,这个角色掌握了零件对象的状态和产品的整体组装蓝图。没有了这个角色,建造模式就不是建造模式。当然,导演角色可以同时持有几种蓝图,按照需要给出完全不同的组装结果。
1.是关注的行为的不同
2.基于抽象类
建造者模式最主要功能是基本方法的调用顺序安排,也就是这些基本方法已经实现了;而工厂方法则重点是创建,你要什么对象我创造一个对象出来,组装顺序则不是他关心的。
0 0
- 【设计模式】建造者模式与工厂方法模式区别
- 设计模式之建造者模式与工厂方法模式
- 抽象工厂与建造设计模式结合
- 【设计模式】简单工厂模式、工厂方法模式和抽象工厂模式区别与联系
- 设计模式之建造者模式(与工厂模式的区别以及JDK中StringBuilder类的应用)
- php设计模式专题附源码(解释器模式、工厂方法模式、外观模式、装饰模式、建造者模式)
- 设计模式之工厂模式、建造者模式
- C++设计模式新解二 建造者模式+工厂模式
- 设计模式笔记:工厂模式,建造者模式
- Java设计模式——工厂模式,建造者模式
- 建造者模式、工厂模式、中介者模式区别
- 设计模式 -- 建造者模式和工厂(类)模式的区别
- 23种设计模式2--创建型模式(工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式)
- 23种设计模式----创建型模式(工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式)
- 设计模式之工厂方法模式与抽象工厂模式
- 设计模式之工厂方法模式与抽象工厂模式
- 设计模式<四>简单工厂模式与工厂方法模式
- JAVA基础9(设计模式 单例模式 工厂模式 建造者模式 原型模式)
- ucos容易错误的地方
- 高级逃逸技术AET让黑客入侵如虎添翼
- 设置单元表格将显示不下的文本用省略号代替
- Struts2 XML配置详解(作者 zz_mm)
- ANDROID应用程序的混淆打包
- 【设计模式】建造者模式与工厂方法模式区别
- 愿望。。。
- 从网上下载文件(源码)
- Delphi流的操作
- A Difficult Customer
- 手把手教你通过Eclipse工程配置调用JNI完全攻略
- tomcat 内存调整【备忘】
- Android json解析
- Foxmail突然无法接收邮件(可发送)-详解