
设计模式
Zyred
热爱分享,热爱开源
展开
-
Pattern(笔记) - 组合模式
组合模式 本篇文章是通过看视频学习总结的内容, 如有错误的地方请谅解,并联系博主及时修改,谢谢您的阅读. 何为组合模式? 它在我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以像处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。 适用场景: 部分——整体场景,树形菜单,文件、文件夹的管理 组合模式的优点: 客户端调用简单 节点数量自由控制 组合模式的缺点: 组合模式中,并不是面向得接口编程,而是面向抽象类编程 如果采用透明写法来实现,那么不满足最少知道原则原创 2020-09-09 15:17:38 · 465 阅读 · 0 评论 -
Pattern(笔记) - 享元模式
享元模式 本篇文章是通过看视频学习总结的内容, 如有错误的地方请谅解,并联系博主及时修改,谢谢您的阅读. 何为享元模式? 享元模式借名之意就是指,通过设计模式来对数据的共享 适用场景: 数据库连接池、线程池、包装数据类型的 cache,String字符串常量池等,都属于享元模式的使用 享元模式的优点: 享元模式起到了对象的复用,减少内存中对象的数量,省去了创建对象消耗的时间,节约内存,提高性能 享元模式的缺点: 享元模式存在一定的隐秘性,如果在不了解享元模式的情况下你根本不知道 Integer.v原创 2020-09-08 17:26:04 · 176 阅读 · 0 评论 -
Pattern(笔记) - 原型模式
原型模式 本篇文章是通过看视频学习总结的内容, 如有错误的地方请谅解,并联系博主及时修改,谢谢您的阅读. 何为原型模式? 原型模式可以客观的理解为对象的复制,通过原型模式对原有对象进行复制,对象的复制分为浅克隆和深克隆 。 适用场景: 初始化资源比较多 ...原创 2020-09-04 17:10:41 · 193 阅读 · 1 评论 -
Pattern(笔记) - 装饰器模式
装饰器模式 本篇文章是通过看视频学习总结的内容, 如有错误的地方请谅解,并联系博主及时修改,谢谢您的阅读. 何为装饰器模式? 装饰器模式,从字面意义上可以理解为对某个对象进行装饰、增强。在Java中,装饰器模式主要是对类的功能在不改变原有基础功能上进行功能的扩展,扩展是透明公开的,由客户端自定义扩展,装饰器模式在增强一个类的时候,提供了比继承增强更为灵活,更加有弹性。装饰器模式属于行为型模式 适用场景: 对某个类的功能进行弹性增强。 装饰器的优点: 装饰器模式满足软件设计原则中的开闭原则 装饰器模式增原创 2020-09-04 15:32:24 · 198 阅读 · 0 评论 -
pattern(笔记) -静态代理,动态(jdk、cglib)代理
静态代理和动态代理 什么是代理? 什么是静态代理? 什么是动态代理? 一、 使用静态代理,该案例用找工作的方式来列举。 新建 二、 使用JDK动态代理 三、 使用CGLIB动态代理原创 2020-05-27 11:01:41 · 220 阅读 · 0 评论 -
pattern(笔记)-策略模式优化if -else
pattern-策略模式优化if -else避开闲谈,直入主题1、创建接口,提供公共方法2、创建 `Context`,提供对于条件的逻辑3、为了减少在`Controller` 中的逻辑,增加一个工厂类 `Factory`4、`Service` 避开闲谈,直入主题 开发中,常常会遇到大量的 if else 判断,如果 if else 太多了,就会导致代码层级、阅读性变差,在此基础上,我利用了空余时间...原创 2020-04-27 13:05:02 · 371 阅读 · 0 评论 -
pattern-委派模式
一、什么是委派模式 委派俩字很明确,谁叫谁去干什么事情,被称为委派,例如老板找给员工分配工作,这就是一种委派,只注重结果,而不注重过程。在设计模式中委派模式主要功能有任务的调度和任务的分配,是一种特殊情况下的静态代理的全权代理。 二、实际例子说明委派模式 老板--->部门经理--->员工 三者的关系:老板吩咐部门经理完成某件事情,部门经理根据每个人的特征,去分配工作,员工则执行经...原创 2019-11-07 15:38:51 · 187 阅读 · 0 评论