设计模式-建造模式(一碗牛肉面的制造过程)

时间:2007-11-2 15:39:31  来源:编程网  作者:asp.net  责任编辑:aspx

设计模式-建造模式

参考资料:

《java与模式》

《设计模式-可复用面向对象软件的基础》

《C#技术揭密》

摘要:介绍Gof设计模式创建模式中的建造模式,结合一个生活中的一个,来说明建造模式的使用场合和使用方法

工厂模式中,创建对象是直接创建的,而对一个复杂的对象来说,用建造模式更适合,它一步一步的创建一个复杂对象。

基本的模式是这样的

interface Builder

{

//建造“零件”

void BuildPart1();

void BuildPart2();

//返回产品

Product GetProduct();

}

这样从此类继承的建造者,可以根据上面定义的两种建造零件方法,构造任意复杂的建造者。

/*

* created by sharpdevelop.

* user: administrator

* date: 2004-12-02

* time: 19:57

*

* to change this template use tools | options | coding | edit standard headers.

*/

using System;

namespace builder

{

class mainclass

{

public static void Main(string[] args)

{

SnackShop snackShop=new SnackShop();

NoodleBuilder bcnwc=new BeefCutNoodleWithCarawayBuilder();

Noodle noodle=snackShop.CreateBeefCutNoodleWithCaraway(bcnwc);

Console.ReadLine();

}

}

//定义快餐店

class SnackShop

{

public SnackShop()

{}

//客户端创建加香菜牛肉刀削面的方法

public Noodle CreateBeefCutNoodleWithCaraway(NoodleBuilder noodleBuilder)

{

noodleBuilder.BuildNoodle();

noodleBuilder.BuildMeat();

noodleBuilder.BuildPureNoodle();

noodleBuilder.BuildSoup();

noodleBuilder.BuildVegetable();

Console.WriteLine("一碗香喷喷的牛肉刀削面加香菜做好啦!\n");

添加到各大书签:

相关文章