Android源码中的设计模式2——Builde…

1、Builder模式

提及Builder就会想起使用AlertDialog,以及那一长串builder. . . . .show();

a、设计意图

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

b、使用场景
(1)相同的方法,不同的执行顺序,产生不同的事件结果时。
(2)多个部件或零件,都可以装配到一个对象中,但是产生的运行结果又不相同时。
(3)产品类非常复杂,或者产品类中的调用顺序不同产生了不同的作用,这个使用Builder模式非常适合。
(4)当初始化一个对象特别复杂时,如参数多,且很多参数有默认值。

如此看来,Builder模式的优缺点也不难看出。

优点:
(1)良好的封装性,构建与表示相分离,使用Builder模式可以使客户端不必知道产品内部组成细节。
(2)Builder独立,容易扩展。
缺点:
(1)会产生多余的Builder对象及Director对象,消耗内存。

Function1——|

                      | —— Builder——Director;

Function2——|

其实实际工作中,并非全部符合Builder模式,可能只有一部分符合。

你可能感兴趣的:(Android)