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

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

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

但是这样有两个缺点:

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

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

相关推荐
jamison_11 个月前
文心一言与 DeepSeek 的竞争分析:技术先发优势为何未能转化为市场主导地位?
人工智能·ai·chatgpt·gpt-3·1024程序员节
NaZiMeKiY1 个月前
HTML5前端第六章节
前端·html·html5·1024程序员节
jamison_11 个月前
颠覆未来:解锁ChatGPT衍生应用的无限可能(具体应用、功能、付费模式与使用情况)
ai·chatgpt·1024程序员节
NaZiMeKiY1 个月前
HTML5前端第七章节
1024程序员节
earthzhang20211 个月前
《Python深度学习》第四讲:计算机视觉中的深度学习
人工智能·python·深度学习·算法·计算机视觉·numpy·1024程序员节
明明真系叻2 个月前
2025.3.2机器学习笔记:PINN文献阅读
人工智能·笔记·深度学习·机器学习·1024程序员节·pinn
bitenum2 个月前
【C++/数据结构】队列
c语言·开发语言·数据结构·c++·青少年编程·visualstudio·1024程序员节
IT学长编程2 个月前
计算机毕业设计 基于SpringBoot的智慧社区管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
java·spring boot·后端·毕业设计·课程设计·论文笔记·1024程序员节
qq_382391332 个月前
WPF框架学习
学习·wpf·1024程序员节
✿ ༺ ོIT技术༻2 个月前
Linux:TCP和守护进程
linux·运维·服务器·网络·tcp/ip·1024程序员节