首页 > 代码库 > 设计模式之建造者模式

设计模式之建造者模式

  建造者模式,同样是一种创建型模式,用来创建对象。

  建造者模式在Android API中随处可见,譬如 AlertDialog 的对象创建过程,通常可见AlertDialog.Builder ,这种方式就是使用的建造者模式。

  为了说明建造者模式,辅以Android代码:

1  longinDialog = new AlertDialog.Builder(mContext)2   .setTitle("登录框")3   .setView(longinDialogView)                4   .setPositiveButton("确定", this)5   .setNeutralButton("取消", this)6   .create(); 

  这是一段很简单的Android开发中 创建对话框的代码,可以看到它把dialog这个复杂的对象的表示和创建分离开来了。
  建造者模式的精髓就在于: 将构造复杂对象的过程 和 组成对象的部件解耦了。就像是攒电脑一样,不管什么品牌的配件,只要兼容就可以装上,同样,一样的配件,可以有好多种组装的方式。这对于降低耦合、提高可复用性的精神是相通的。

  下面祭出建造者模式的类图:

 

 

  建造模式可以使得产品内部的表象独立变化。在原来的工厂方法模式中,产品内部的表象是由产品自身来决定的,而在建造模式中则是“外部化”由建造者来负责。

设计模式之建造者模式