Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update 168.精读《设计模式 - Builder 生成器》.md #287

Merged
merged 1 commit into from
Dec 3, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion 168.精读《设计模式 - Builder 生成器》.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Builder(生成器)属于创建型模式,针对的是单个复杂对象的

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

我们再理解一次意图,所谓构建与表示分离,就是指一个对象 `Persion` 并不是简单的 `new Persion()` 就可以实例化出来的,如果可以,那就是构建与表示一体。**所谓构建与表示分离,就是指 `Persion` 只能描述,而不能通过 `new Persion()` 实例化,将实例化工作通过 Builder 实现,这样同样一个构建过程可以创建不同的 `Persion` 实例。**
我们再理解一次意图,所谓构建与表示分离,就是指一个对象 `Person` 并不是简单的 `new Person()` 就可以实例化出来的,如果可以,那就是构建与表示一体。**所谓构建与表示分离,就是指 `Person` 只能描述,而不能通过 `new Person()` 实例化,将实例化工作通过 Builder 实现,这样同样一个构建过程可以创建不同的 `Person` 实例。**

在乐高积木的例子中,通过乐高创建的房子并不是 `new House()` 出来,而是将构建与表示分离了,工厂流水线中我们创建一个黄桃罐头,不是通过 `new 黄桃罐头()`,而是通过流水线不同拼装方式来完成,在数据库例子中,我们没有通过 `new DB()` 的方式创建数据库,而是通过 Builder 来创建,这都体现了构建与表示的分离。

Expand Down