设计模式总纲

基础的设计模式一共有二十三种,从功能上我们可以将它们分成三类:创建型、结构性和行为型。创建型一共有五种设计模式:抽象工厂、建造者、工厂方法、原型和单例。结构型一共有七种设计模式:适配器、桥接、组合、装饰器、门面、享元和代理。行为一共有十一种模式:责任链、命令、解释器、迭代器、中介、备忘录、观察者、状态、策略、模板方法和访问者。下面简单描述一下各个模式的特征:

创建型

1. 抽象工厂模式

我们不但想把创建对象的逻辑抽象出来,而且不同的工厂来创建具有差异化的同类型产品。

2. 建造者模式

3. 工厂模式

在某些场景中,对象的创建逻辑会比较繁琐,可能有一些条件判断,有些属性需要赋值等。我们可以把这些创建对象的逻辑全部抽象出来放到一个专门的类中,这样就可以让Client无感于对象Product的创建过程。

相关推荐
2601_962071573 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
淡海水5 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
CS_Zero5 小时前
C语言sizeof是函数吗?
c语言·开发语言
-今昭-6 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python
黑马程序员毕设8 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
_Twink1e9 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen
问天_观心9 小时前
大模型微调学习(一)
开发语言·人工智能·学习·语言模型·github
阿里嘎多学长9 小时前
2026-09-03 GitHub 热点项目精选
开发语言·程序员·github·代码托管
dong_junshuai9 小时前
每天一个开源项目#87 fmt:24.5K Stars 的 C++ 格式化核心
c++·开源·github
源代码•宸10 小时前
前置准备:定时微服务背景和现状
开发语言·经验分享·后端·微服务·云原生·架构·golang