问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

《秒懂设计模式》学习笔记(结构篇)

发布网友 发布时间:2024-08-20 17:45

我来回答

1个回答

热心网友 时间:2024-08-21 21:03

一、门面模式(Facade)

(1)门面模式,也称“外观模式”,其核心在于构建一个整合系统,将多个子系统隐藏在统一的接口之后,为外部访问提供单一入口。该模式简化了系统与外界的交互,实现一键操作,提升用户体验。

(2)在软件开发中,通过门面模式实现多表数据更新时,只需调用一个统一的update()方法,即可完成事务处理和多表更新操作,大大简化了业务逻辑层(Service层)与数据访问层(DAO层)的交互。

(3)门面模式简化了系统内部结构的复杂性,通过封装和整合子系统,对外提供一个简洁的接口,提高系统的可维护性和扩展性。同时,降低客户端与子系统的依赖,实现高内聚低耦合。

(4)门面模式的结构包括:Facade(门面)作为包装类,整合SubSystemA、SubSystemB、SubSystemC(子系统)并提供统一接口;Client(客户端)直接访问门面接口,无需了解内部实现。

二、组合模式(Composite)

(1)组合模式通过层次结构表达部分与整体的关系,以树形结构为模型,实现对节点对象的统一管理。它避免了为每个节点定义不同类,降低了代码冗余。

(2)组合模式通过抽象节点类(接口)泛化所有节点类,实现节点间的多态化和组合关系,支持递归操作,方便客户端遍历和管理整个结构。

(3)组合模式包括:Component(组件接口)、Composite(复合组件)、Leaf(叶端组件)和Client(客户端),通过组件接口定义操作标准,复合组件组合多个组件,叶端组件不包含子组件。

(4)通过组合模式,客户端可以自由部署相关对象,递归操作整个树结构,实现层次化管理。

三、装饰器模式(Decorator)

(1)装饰器模式在运行时动态为对象添加功能,通过包装对象实现功能扩展。它不改变原始对象结构,允许客户端自由选择功能。

(2)装饰器模式通过抽象装饰器和具体装饰器实现功能扩展,客户端根据需求自由组合装饰器,增强原始对象功能。

(3)装饰器模式包括:Component(组件接口)、ConcreteComponent(组件实现)、Decorator(装饰器抽象类)和ConcreteDecorator(装饰器实现),通过装饰器实现对象功能的动态扩展。

四、适配器模式(Adapter)

(1)适配器模式解决接口不兼容问题,通过适配器转换不同接口,实现兼容性,降低组件依赖,提高系统复用性。

(2)适配器模式分为对象适配器和类适配器,分别通过接口引用或继承实现兼容性转换。

(3)适配器模式包括:Target(目标接口)、Adapter(适配器)、Adaptee(被适配者)和Client(客户端),通过适配器实现组件间的兼容访问。

五、享元模式(Flyweight)

(1)享元模式通过共享机制减少对象数量,实现资源高效利用,提高系统性能。

(2)当系统中有大量相似对象时,享元模式通过共享内蕴状态,将外蕴状态独立,降低内存开销。

(3)享元模式包括:Flyweight(享元接口)、ConcreteFlyweight(享元实现)、FlyweightFactory(享元工厂)和Client(客户端),实现对象共享和高效管理。

六、代理模式(Proxy)

(1)代理模式为客户端提供间接访问,通过代理控制和转发请求,实现访问控制或功能扩展。

(2)代理模式与装饰器模式区别在于,代理模式更侧重于访问的控制和隐藏,而装饰器模式更侧重于功能扩展。

(3)代理模式包括:Subject(业务接口)、RealSubject(被代理业务)、Proxy(代理)和Client(客户端),实现业务访问的间接控制。

七、桥接模式(Bridge)

(1)桥接模式将抽象与实现分离,允许二者独立变化,实现功能扩展和组合,提升系统灵活性。

(2)桥接模式通过抽象与实现的组合实现自由扩展,分离形状与颜色,实现组件的自由搭配。

(3)桥接模式包括:Abstraction(抽象方)、AbstractionImpl(抽象方实施)、Implementor(实现方)和ConcreteImplementor(实现方实施),实现抽象与实现的解耦和扩展。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
通达信主力指标公式汇总(2023版附源码) 有什么类似地下城与勇士的手机游戏 有没有类似于DNF的游戏 苹果手机类似地下城的游戏 有什么类似地下城与勇士的手机游戏 我的系统是WIN732,为什么玩不了光晕2,一点开就弹一个对话框出来说:无法... 玩诛仙电脑配置诛仙3要求电脑配置 ...永磁为什么要跌啊?东方财富金力永磁股吧?金力永磁股票最初..._百度... 怎么找回注销的微信号 如果把手机号码和微信号同时销户后期还能找回微信号吗? 仓储与库存有什么区别? 仓位和库位的区别 高中一定比中专厉害吗?学历等同吗? 拥有高中学历对个人发展有什么影响? 高中哪个学历高 年前参加葬礼,年后开业会不会不好, 切削速度、吃刀量、进给速度三者关系及计算公式,很实用记得收藏_百度... 倒卖文物罪既遂判刑标准是如何规定的 倒卖文物判刑标准是怎样的 怎么查看路由器的端口是什么 路由器查看端口命令 怎样无密码登别人QQ? 淘宝新店铺为什么没有新品标签? 猫的智商到底有多高 皂角米搭配什么吃 pr替换颜色 淘宝店铺首页都有哪些内容? vivos16取卡孔在哪里vivos16取卡孔位置介绍【详解】 三纲五常八德十义 踢足球时如何让脚力大一些 如何让足球踢出更有力量的弧线? 三纲五常四维八德 谁能帮我讲解愤怒的蝴蝶从头到尾是一段怎样的事啊?从哪家网站可以找到这 ... 白克苔草形态特征 solidworks怎么转成stl格式 请问哪位大神可以告诉我B站索引里伪娘的那个图片是哪部番里面的?_百度... 伪射手是什么意思? 我女儿今年十岁喜欢发嗲,只有是喜欢她的或者她喜欢的,不管是男的女的... 赎回基金多久到账银行卡 不喜欢那种说话发嗲的女孩子 特别做作,身边就有这样的人,烦的很_百度... 基金赎回后资金什么时候到账 基金赎回到账时间几点 赎回的基金什么时候到账 急救打了120、还约了时间、结果半小时后才来 间歇性神经短路症状缓解 无证房产是否能作为遗产继承 法院无法分割没有房产证的遗产吗 没有房产证的房子做房产遗产继承可以吗 一个月的小猫拉肚子了,怎么办? 血压低症状和危害 低血压头晕恶心怎么办 糖尿病血压低会头晕恶心吗