建造者模式:将一个复杂对象的构建与他的表示分离,使得同样的构建过程可以创建不同的表示
特征:用户只需要指定需要建造的类型就可以获得对象,建造过程和细节不需要知道
创建型模式
eg:sql的查询条件封装 eg like stringBuilder
适用场景:创建对象需要很多步骤,但是步骤的顺序不一定固定
一个对象有非常复杂的内部结构(很多属性)
把复杂对象的创建和使用分离
优点:封装性好,创建和使用分离,扩展性好,建造类之间独立,一定程度上解耦
缺点:产生多余的builder对象 产品内部发生变化 建造者都要修改 成本较大 维护成本
网友评论