设计模式-builder
一、java的builder模式详解
1.概念
建造者模式是较为复杂的创建型模式,它将客户端与包含多个组成部分(或部件)的复杂对象和创建过程分离
2.使用场景
当构造一个对象需要很多参数的时候,并且参数的个数或者类型不固定的时候
3.UML结构体分析
4.实际代码分析
总结
1.Builder:它为创建一个产品Product对象的各个部件指定抽象接口
2.ConcreteBuilder:它实现了Builder接口,实现各个部件的具体构造和装配方法
3.Product:它是被构建的复杂对象,包含多个组成部件
4.Director:指挥者又称为导演类,它负责安排复杂对象的建造次序,指挥者与抽象建造者之间存在关联关系
5.builder模式优点
松散耦合:生成器模式可以用一个构建算法构建出表现上完全不同的产品,实现产品构建和产品表现上的分离
可以很容易的改变产品的内部表示
更好的复用性:生成器模式很好的实现构建算法和具体产品实现的分离
6.builder模式缺点
会产生多余的Builder对象以及Director对象,消耗内存
对象的构建过程暴露
二、builder模式在android中的实际运用
1.AlertDialog
2.Glide/okhttp