设计模式(五)—— 建造者模式/生成器模式

先简单记一下,以后再来认真写

还是造房子那个例子,一个房子分为①打地基 ② 砌墙 ③封顶三步,如果不用设计模式去写的话。就是一个超类,然后多个子类继承超类去重写

但是这样有两个缺点:

(1)产品和建造的过程是高度耦合的(针对这个问题,单独定义product类,以组合的方式放在Builder超类的成员变量中)

(2) 客户端(main方法)调用的时候,必须了解建房的步骤,要了解应该先打地基,再。。(针对这个问题,出现了Director,指挥者知道建房子的步骤就行了,客户端调用的时候,直接new一个指挥者,客户端啥都不用知道)

相关推荐
开开心心就好13 小时前
免费卸载工具,可清理残留批量管理启动项
linux·运维·服务器·windows·随机森林·pdf·1024程序员节
unable code16 小时前
攻防世界-Misc-4-1
网络安全·ctf·misc·1024程序员节
yBmZlQzJ2 天前
免费内网穿透-端口转发配置介绍
运维·经验分享·docker·容器·1024程序员节
金融小师妹4 天前
AI算法视角下非农夜冲击波来袭,黄金高位区间震荡态势的深度神经网络解析
大数据·深度学习·1024程序员节
全栈小56 天前
【数据库】浙人医携手金仓数据库,打造全国首个多院区异构多活容灾架构
数据库·1024程序员节·金仓
CoderYanger8 天前
贪心算法:7.最长连续递增序列
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger8 天前
贪心算法:6.递增的三元子序列
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger8 天前
贪心算法:1.柠檬水找零
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger8 天前
贪心算法:4.摆动序列
java·算法·leetcode·贪心算法·1024程序员节
CoderYanger8 天前
贪心算法:2.将数组和减半的最少操作次数
java·算法·leetcode·贪心算法·1024程序员节