[设计模式整理笔记 五] 创建者模式(Builder)
2010-01-14 09:06
211 查看
[导读]
[设计模式整理笔记 一] 基础知识
[设计模式整理笔记 二] 简单工厂模式(Simple Factory)
[设计模式整理笔记 三] 工厂模式(Factory)
[设计模式整理笔记 四] 抽象工厂模式(Abstract Factory)
[设计模式整理笔记 五] 创建者模式(Builder)
[设计模式整理笔记 六] 工厂模式与创建者模式总结
[设计模式整理笔记 七] 原型模式(ProtoType)
[设计模式整理笔记 八] 单例模式(Singleton)
[设计模式整理笔记 九] 外观模式(Facade)
....后续, 包括部分例子
[/导读]
在简单工厂模式里面,我们只需编写一个工厂类专门来实例化你需要的类。在工厂模式中, 我们系统中有几个不同的产品, 我们就写几个对应的工厂类来进行生产,等于现在的车间, 不是车间实例化不同的类, 就是某些产品极为相近,都需要写二个工厂类来生产并返回你需要的类。抽象工厂模式中,我们会把一系列相似的产品放在一个工厂类里面实例化,和现在车间的流水线差不多,一个流水线负责生产相似的产品, 不同的产品需要另一条流水线来生产。工厂模式是针对细微的产品来创工厂类, 像个人实得工资计算过程中, 还需要计算税, 基金等操作, 如果用工厂模式来设计,那会变得好复杂, 那么怎样才能设计出更好的方式来处理这个问题呢? 下面就用创建者模式来介绍,具体介绍深圳子公司计算的全过程:
既然是深圳子公司,那就先创建这个子公司的类先:
代码
namespace ConsoleApp
{
class Program
{
public static void Main(string[] args)
{
Director MyDirector = new Director(new ShenZhenFactory());
ShenZhenCompany SZCompany = MyDirector.AssembleShenZhenCompany();
Console.ReadLine();
}
}
}
运行就会输出:
这是深圳子公司的工资计算模块
这是深圳子公司的扣税计算模块
这是深圳子公司的基金计算模块
到这里为止, 一个完整的流程出来了, 当然你可以按工资计算模块那样, 用工厂模式把扣税或基金模块的代码也写出来,当练习一下, 现在知道什么时候应该用工厂模式,什么时候用创建者模式了吧! 后面一章, 会用好典型的例子来讲解一下简单工厂模式,工厂模式,抽象工厂模式,创建者模式的特点。 保证你一看完就印象深刻。
[设计模式整理笔记 一] 基础知识
[设计模式整理笔记 二] 简单工厂模式(Simple Factory)
[设计模式整理笔记 三] 工厂模式(Factory)
[设计模式整理笔记 四] 抽象工厂模式(Abstract Factory)
[设计模式整理笔记 五] 创建者模式(Builder)
[设计模式整理笔记 六] 工厂模式与创建者模式总结
[设计模式整理笔记 七] 原型模式(ProtoType)
[设计模式整理笔记 八] 单例模式(Singleton)
[设计模式整理笔记 九] 外观模式(Facade)
....后续, 包括部分例子
[/导读]
在简单工厂模式里面,我们只需编写一个工厂类专门来实例化你需要的类。在工厂模式中, 我们系统中有几个不同的产品, 我们就写几个对应的工厂类来进行生产,等于现在的车间, 不是车间实例化不同的类, 就是某些产品极为相近,都需要写二个工厂类来生产并返回你需要的类。抽象工厂模式中,我们会把一系列相似的产品放在一个工厂类里面实例化,和现在车间的流水线差不多,一个流水线负责生产相似的产品, 不同的产品需要另一条流水线来生产。工厂模式是针对细微的产品来创工厂类, 像个人实得工资计算过程中, 还需要计算税, 基金等操作, 如果用工厂模式来设计,那会变得好复杂, 那么怎样才能设计出更好的方式来处理这个问题呢? 下面就用创建者模式来介绍,具体介绍深圳子公司计算的全过程:
既然是深圳子公司,那就先创建这个子公司的类先:
代码
namespace ConsoleApp
{
class Program
{
public static void Main(string[] args)
{
Director MyDirector = new Director(new ShenZhenFactory());
ShenZhenCompany SZCompany = MyDirector.AssembleShenZhenCompany();
Console.ReadLine();
}
}
}
运行就会输出:
这是深圳子公司的工资计算模块
这是深圳子公司的扣税计算模块
这是深圳子公司的基金计算模块
到这里为止, 一个完整的流程出来了, 当然你可以按工资计算模块那样, 用工厂模式把扣税或基金模块的代码也写出来,当练习一下, 现在知道什么时候应该用工厂模式,什么时候用创建者模式了吧! 后面一章, 会用好典型的例子来讲解一下简单工厂模式,工厂模式,抽象工厂模式,创建者模式的特点。 保证你一看完就印象深刻。
相关文章推荐
- [设计模式整理笔记 五] 创建者模式(Builder)
- 设计模式 笔记 生成器(建造者)模式 Builder
- 设计模式学习笔记四——Builder模式
- 易学设计模式看书笔记(6) - 创建者模式
- 设计模式C++学习笔记之十(Builder建造者模式)
- 笔记:Gof设计模式--Builder
- [设计模式整理笔记 四] 抽象工厂模式(Abstract Factory)
- Builder生成器模式学习笔记整理
- [设计模式笔记]一. 创建型模式--4.Builder模式(一)
- 《模式——工程化实现及扩展》(设计模式C# 版)《创建者模式 Builder》——“自我检验" 参考答案
- Builder生成器(创建型设计模式)面向对象设计模式纵横谈讲座笔记之四
- 设计模式(Design Patterns)笔记之四:Builder
- [设计模式整理笔记 二] 简单工厂模式(Simple Factory)
- 【设计模式学习笔记六】【创建型模式】【建造者模式(Builder)】
- 设计模式笔记17:建造者模式(Builder Pattern)
- 阿Sam的设计模式学习笔记---- Builder模式
- (转)设计模式(Design Patterns)笔记之四:Builder yakuu [原作]
- 设计模式学习---创建者模式(BuilderPattern)
- 设计模式 笔记 生成器(建造者)模式 Builder
- 设计模式笔记——(二:建造者模式 Builder Pattern)