为什么要用builder:
主要为了构造复杂产品,它是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
优点:
•生成器模式将对象的构造过程封装在具体生成器中,用户使用不同的具体生成器就可以得到该对象的不同表示。
•可以更加精细有效地控制对象的构造过程。生成器将对象的构造过程分解成若干步骤,这就使得程序可以更加精细,有效地控制整个对象的构造。
•生成器模式将对象的构造过程与创建该对象类解耦,使得对象的创建更加灵活有弹性。
•当增加新的具体生成器时,不必修改指挥者的代码,即该模式满足开-闭原则。
案例:
okhttp3 request类