设计模式学习--生成器BUILDER
2014-11-10 10:48
363 查看
--来自《设计模式:可复用面向对象软件的基础》
目的
将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
Class MazeBuilder
{
Public:
Virtual void BuildMaze();
Virtual void BuildRoom(int room);
Virtual void BuildDoor(int roomFrom, int roomTo);
Virtual Maze* GetMaze();
Protected:
MazeBuilder();
};
Maze*MazeGame::CreateMaze(MazeBuilder& build)
{
Builder.BuildMaze();
Builder.BuildRoom(1);
Builder.BuildRoom(2);
Builder.BuildDoor(1,2);
Return builder.GetMaze();
};
抽象工厂与生成器相似,主要的区别是生成器模式着重于一步步构造一个复杂对象。而抽象工厂着重于多个系列的产品对象。Builder在最后的一步返回,而对于Abstract
Factory来说,产品是立即返回的。
目的
将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
Class MazeBuilder
{
Public:
Virtual void BuildMaze();
Virtual void BuildRoom(int room);
Virtual void BuildDoor(int roomFrom, int roomTo);
Virtual Maze* GetMaze();
Protected:
MazeBuilder();
};
Maze*MazeGame::CreateMaze(MazeBuilder& build)
{
Builder.BuildMaze();
Builder.BuildRoom(1);
Builder.BuildRoom(2);
Builder.BuildDoor(1,2);
Return builder.GetMaze();
};
抽象工厂与生成器相似,主要的区别是生成器模式着重于一步步构造一个复杂对象。而抽象工厂着重于多个系列的产品对象。Builder在最后的一步返回,而对于Abstract
Factory来说,产品是立即返回的。
相关文章推荐
- java设计模式学习—生成器(Builder)
- 学习设计模式之生成器(Builder Pattern)模式
- 设计模式学习-Builder(生成器
- 设计模式学习-Builder(生成器
- 设计模式学习笔记(四)——Builder生成器模式
- 设计模式学习总结:生成器模式(Builder)
- 设计模式深入学习-Builder生成器(创建型模式 )
- 设计模式学习笔记(四)——Builder生成器模式
- 设计模式学习总结2 - 创建型2 - Builder生成器模式
- 设计模式之--生成器(builder)模式(学习分析笔记)
- 设计模式杂谈:创建型模式之生成器模式(Builder Pattern)
- 阿Sam的设计模式学习笔记---- Builder模式
- 设计模式之Builder生成器模式
- 设计模式学习笔记(十二)—Builder建造者模式
- 设计模式--Builder生成器模式
- Builder生成器(创建型设计模式)面向对象设计模式纵横谈讲座笔记之四
- 面向对象设计模式学习---Builder模式(创建型)
- 设计模式学习之生成器模式(Builder)
- C#设计模式-Builder生成器模式
- C#面向对象设计模式纵横谈 学习笔记4 Builder 生成器(创建型模式)