软件设计模式:建造者模式简单介绍

软件设计模式:建造者模式简单介绍

builder pattern,顾名思义,建造者模式,作为常见的创建型模式,用途就是创建对象。

基本定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

优点正如定义所说,可以解决对象有复杂的内部构造或者有确定的依赖顺序的属性赋值的场景。

缺点是会产生多余的创建者与构建过程对象,造成了内存资源的消耗,所以不适用于内部建造顺序不稳定,变化复杂的对象,可能导致需要创建很多具体的建造者来实现这些变化。

举个栗子:玩游戏创建角色时的自定义功能,不同的外观及武器等搭配组合生成不同的游戏角色。

软件设计模式:建造者模式简单介绍

四个角色与UML类图

软件设计模式:建造者模式简单介绍

软件设计模式:建造者模式简单介绍

具体的示例代码如下:

软件设计模式:建造者模式简单介绍

软件设计模式:建造者模式简单介绍

测试输出结果如下:

软件设计模式:建造者模式简单介绍

大体上来讲,建造者模式与工厂模式很相似, 但是多了一个控制类, 控制复杂对象的过程创建.。所以建造者模式 本质上关注的是创建的过程,减少了创建对象中间过程所需要代码 。建造模式是将复杂的内部创建封装在内部,对于外部调用的人来说,传入建造者和需要的工具就够了,调用者不用关心内部是如何建造成成品的,体现了面向对象编程OOP的封装思想。

软件设计模式:建造者模式简单介绍


分享到:


相關文章: