建造者模式
学习
优点:
1.封装性很好 使用建造者模式可以有效的封装变化,在使用建造者模式的场景中,一般产品类和建造者类是比较稳定的,因此将主要的业务逻辑封装在指挥者类中对整体而言可以取得比较好的稳定性
2.在创建者模式中 客户端不必知道产品内部组成的细节 将产品本身与产品的创建过程解耦,使得相同的创建过程可以有不同的产品对象
3.可以更加精细的控制产品的创建过程 将复杂产品的创建步骤分解在不同的方法中 使得创建过程更加清晰 也更方便使用程序来控制创建过程
4.很容易进行扩展 让如果有新的需求 通过实现一个新的创建者类就可以完成 基本上不用修改之前已经测试通过的代码 因此不会对原有功能引入风险 如何开闭原则
缺点:
创建者模式所创建的产品一般具有较多的共同点 其组成部分相似 如果产品之间的差异性很大 则不适合使用创建者模式 因此其适用范围受到一定的限制
使用场景
创建的对象较复杂 有多个部件构成 各部件面临着复杂的变化 但构件间的构造顺序是稳定的
创建复杂对象的算法独立于该对象的组成部分以及他们的装配方式,即产品的构建过程和最终的表示是独立的



