搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
笔触狂放9
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
FastAPI:协程与流式返回的用法
2
【flutter3 camera】获取图像流并编码为base64以json格式发送服务器_flutter base64
3
【Python脚本】Python轻松爬取歌曲,小白也能轻松上手操作!_python爬取音乐代码
4
【Linux从青铜到王者】第四篇:Linux开发项目之编译器和调试器_编译器 调试 开发 论坛
5
TreeMap详解:Java 有序 Map 原理与实现_java treemap
6
el-dialog滚动条_eldialog滚动条
7
关掉MidJourney! Stable Diffusion开源模型之王FLUX.1整合包分享!_flux ml-stable-diffusion
8
大数据(三)大数据技术栈发展史
9
CentOS7为静态ip,解决Ping不通外网的办法_centos7 静态ip ping 不通
10
element-ui下拉框的使用
当前位置:
article
> 正文
设计模式&设计原则
作者:笔触狂放9 | 2024-08-29 15:15:58
赞
踩
设计模式&设计原则
设计模式分类
创建型模式
工厂方法模式
抽象工厂模式
单例模式
建造者模式
原型模式
结构型模式
适配器模式
装饰器模式
代理模式
外观模式
桥接模式
组合模式
享元模式
行为型模式
策略模式
模板方法模式
观察者模式
迭代子模式
责任链模式
命令模式
备忘录模式
状态模式
访问者模式
中介者模式
解释器模式
设计模式的六大原则
开闭原则
定义:对扩展开放,对修改关闭。
目标:提高程序的扩展性和维护性。
实现:使用接口和抽象类。
里氏代换原则
定义:任何基类可以出现的地方,子类一定可以出现。
目标:增强继承复用的有效性和安全性。
实现:确保子类可以替换基类。
依赖倒转原则
定义:真对接口编程,依赖于抽象而不依赖于具体。
目标:降低依赖性,提高灵活性。
接口隔离原则
定义:使用多个隔离的接口,比使用单个接口要好。
目标:降低类间的耦合度。
迪米特法则
(最少知道原则)
定义:一个实体应当尽量少地与其他实体发生相互作用。
目标:保持模块间的独立性。
合成复用原则
定义:尽量使用合成/聚合的方式,而不是使用继承。
目标:提高代码的复用性和灵活性。
创建型模式示例
1. 工厂模式
描述:客户类和工厂类分开,消费者无需修改即可接纳新产品。
2. 建造者模式
描述:将产品的内部表象和产品的生成过程分离,使产品内部表象可以独立变化。
3. 工厂方法模式
描述:核心工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类。
4. 原型模式
描述:通过复制一个原型对象来创建新的对象。
5. 单例模式
描述:确保某一个类只有一个实例,并自行实例化并向整个系统提供这个实例。
结构型模式示例
6. 适配器模式
描述:将一个类的接口转换成另一个接口,使原本因接口不兼容而不能一起工作的类可以一起工作。
7. 桥梁模式
描述:将抽象化与实现化分离,使二者可以独立变化。
8. 组合模式
描述:将对象组织到树形结构中,描述整体与部分的关系。
9. 装饰模式
描述:动态地给一个对象添加一些额外的职责。
10. 外观模式
描述:为子系统提供一个一致的接口,使子系统更易于使用。
11. 享元模式
描述:以共享的方式高效地支持大量细粒度对象。
12. 代理模式
描述:给某一个对象提供一个代理对象,并由代理对象控制对源对象的引用。
行为型模式示例
13. 责任链模式
描述:将多个对象通过引用串连成一条链,请求沿着这条链传递,直到有对象处理它为止。
14. 命令模式
描述:将请求封装成对象,以便使用不同的请求、队列请求或记录请求日志,支持可撤销的操作。
15. 解释器模式
描述:给定一个语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子。
16. 迭代子模式
描述:顺序访问一个聚合对象中的各个元素,而又不暴露该对象的内部表示。
17. 调停者模式
描述:将一组对象互相作用的方式进行封装,使它们不必显式地相互引用。
18. 备忘录模式
描述:在不破坏封装性的前提下捕获一个对象的内部状态,并在该对象之外保存这个状态。
19. 观察者模式
描述:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
20. 状态模式
描述:允许一个对象在其内部状态改变时改变它的行为。
21. 策略模式
描述:定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。
22. 模板方法模式
描述:定义一个操作中的算法骨架,而将一些步骤延迟到子类中。
23. 访问者模式
描述:封装一些作用于某种数据结构元素之上的操作,使得无需修改数据结构即可定义作用于这些元素的新操作。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/笔触狂放9/article/detail/1022405
推荐阅读
article
【设计
模式
】单例
模式
...
例如,在一个操作系统中,打印机的驱动程序通常可以设计为单例
模式
。因为在整个系统中,只需要一个打印机驱动程序的实例来管理与...
赞
踩
article
设计
模式
(
一
):
单例
模式
...
是
一
种创建型设计
模式
,它确保
一
个类只有
一
个实例,并提供
一
个全局访问点来访问这个实例。适用场景——。- 需要
一
个全局唯
一
的...
赞
踩
article
【
设计模式
】
六大
原则
已完结
,
悟透它
,
你将吃透
OOP
...
设计模式
六大
原则
是面向对象设计的基石
,
旨在指导开发者如何创建松耦合、可维护和可扩展的软件设计。这些
原则
不仅提高了软件设计...
赞
踩
article
(
每日一问)
设计模式
:如何
通俗
理解
常见
的
设计模式
?...
本文旨在通过日常生活中
的
类比来
通俗
地解释
常见
的
设计模式
,帮助读者
理解
这些模式
的
核心思想。文章将
设计模式
分为创建型、结构型...
赞
踩
article
设计模式
:
设计模式
概述_计科
设计模式
学
什么
...
本文介绍了
设计模式
的基本概念和重要性,通过三个实际案例揭示了在软件开发中遇到的问题,如类的扩展性、灵活性和复用性。作者强...
赞
踩
article
【
Java
设计模式
】七大
原则
...
愿你如阳光,明媚不忧伤。目録1.
Java
设计模式
2.
设计模式
的基本要素3. 开闭
原则
4. 里氏替换
原则
5. 依赖...
赞
踩
article
设计
模式
--
观察者
模式
(详解)_某在线
股票
软件
需要提供如下功能条件:当
股票
购买者
...
java设计
模式
--
观察者
模式
一个贴切又通俗的例子让你明白什么是
观察者
模式
,同时还告诉你java内置的
观察者
。1. 概述...
赞
踩
article
设计
模式
5 原型
模式
...
原型
模式
允许一个对象通过复制自身来创建新的对象。这种
模式
提供了一种创建对象的快捷方式,尤其适用于创建代价较高的对象。设计...
赞
踩
article
设计
模式
-
抽象
工厂
模式
...
随着科技革命和智能智造的运用,海尔的工厂也运用了先进的智能设备进行生产,运用智能智造技术后,很多同族产品就可以进行共...
赞
踩
article
C++
设计
模式
-
抽象
工厂
模式
_c++
抽象
工厂
模式
...
目录基本概念代码与实例基本概念
抽象
工厂
模式
(Abstract Factory),提供一个创建一系列相关或相互依赖对象的接...
赞
踩
article
设计
模式
8 组合
模式
...
组合
模式
通过定义树形结构来组成对象,使得客户端对单个对象和对象集合的处理方式一致。这个
模式
让你可以使用相同的接口来操作单...
赞
踩
article
设计
模式
- 抽象工厂
模式
...
抽象工厂
模式
是一种创建型
设计
模式
,它提供了一个接口,用于创建一系列相关或相互依赖的对象,而无需指定它们的具体类。这种
模式
...
赞
踩
article
设计
模式
-
抽象
工厂
模式
...
本文详细介绍了
抽象
工厂
模式
,对比了它与工厂
模式
的区别。
抽象
工厂
模式
提供一个接口,用于创建相关或依赖的产品族,无需指定具体...
赞
踩
article
设计
模式
11 享元
模式
...
享元
模式
的核心思想是将对象的状态分为内部状态(可以共享的部分)和外部状态(不能共享的部分)。通过共享相同的内部状态,减少...
赞
踩
article
设计模式
(
三)...
Circle 是具体的实现类,它实现了抽象类的方法,并使用实现类接口来完成绘制工作,测试函数中创建了两个具体的实现类对象...
赞
踩
article
【设计
模式
】模板
方法
模式
和
迭代
器
模式
...
迭代
器
模式
是指提供一种
方法
顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。
迭代
器
模式
可以把
迭代
的过程从...
赞
踩
article
设计
模式
--策略
模式
...
策略
模式
(Strategy Pattern)是一种行为型设计
模式
,用于定义一系列算法,并将每一个算法封装起来,使它们可以...
赞
踩
article
设计
模式
——组合
模式
...
这种类型的
设计
模式
属于结构型
模式
,它创建了对象组的树形结构。组合
模式
的基本结构组合
模式
有三个基本部件: 即抽象部件、叶子...
赞
踩
article
设计
模式
-
组合
模式
(决策树)_
decisonmatter
...
设计
模式
-
组合
模式
_
decisonmatter
decisonmatter
一、只如初见 ...
赞
踩
article
设计
模式
-
组合
模式
(
Composite
)
结构
|原理|优缺点|场景|示例_
组合
设计
模式
...
组合
模式
(
Composite
Pattern
)
是一种
结构
型
设计
模式
,它允许你将对象
组合
成树形
结构
来表示“部分-整体”的层...
赞
踩
相关标签
设计模式
单例模式
python
javascript
设计模式六大原则
java
GoF
软件模式
适配器模式
面试
java设计模式
对象
原型模式
抽象工厂模式
C++
组合模式
工厂模式