笔记4:Builder模式


结构图

 

游戏中的Builder应用

public abstract class House
{
}
 
public abstract class Builder
{
	//构建门
	public abstract void BuildDoor();
	//构建窗户
	public abstract void BuildWindows();
	//构建墙
	public abstract void BuildWall();
	//构建地板
	public abstract void BuildFloor();
	public abstract void BuildHouseCeiling();
 
	public abstract House GetHouse();
	
}
public class GameManager()
{
	public static CreatHouse(Builder builder)
	{
		//build2个门
		builder.BuilDoor();
		builder.BuilDoor();
		//build2个窗
		builder.BuildWindows();
		builder.BuildWindows();
	
		builder.GetHouse();
	}

}
 
public Class App
{
	public void Main()
	{
		GameManager.CreatHoust(new Builder());
	}
}


 

Builder模式的几个要点

-Builder 模式主要用于"分步骤构建一个复杂的对象"。在这其中"分步骤"是一个稳定的算法,复杂对象的各个部分则经常变化

-变化点在哪里,封装在哪里----Builder模式主要在于应对"复杂对象各部分"的频繁需求变动。其缺点在于难以应付"分步骤构建算。法"的需求变动。

-Abstract Factory 模式解决"系列对象"的需求变化,Builder模式解决"对象部分"的需求变化。Builder模式通常和Composite模式组合使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值